Răsfoiți Sursa

SPM CI with swift test instead of swift run (#5871)

Paul Beusterien 5 ani în urmă
părinte
comite
02fc5cdd89
3 a modificat fișierele cu 20 adăugiri și 16 ștergeri
  1. 1 1
      .github/workflows/spm.yml
  2. 2 5
      Package.swift
  3. 17 10
      Tests/firebase-test/main.swift

+ 1 - 1
.github/workflows/spm.yml

@@ -20,4 +20,4 @@ jobs:
     - name: Build
       run: swift build
     - name: Run
-      run: swift run
+      run: swift test

+ 2 - 5
Package.swift

@@ -27,10 +27,6 @@ let package = Package(
   products: [
     // Products define the executables and libraries produced by a package, and make them visible to
     // other packages.
-    // This is a test-only executable for us to try `swift run` and use all imported modules from a
-    // Swift target.
-    .executable(name: "firebase-test", targets: ["firebase-test"]),
-    //
     // .library(
     //   name: "Firebase",
     //   targets: ["Firebase"]
@@ -78,7 +74,7 @@ let package = Package(
   targets: [
     // Targets are the basic building blocks of a package. A target can define a module or a test suite.
     // Targets can depend on other targets in this package, and on products in packages which this package depends on.
-    .target(
+    .testTarget(
       name: "firebase-test",
       dependencies: [
         "FirebaseAuth",
@@ -98,6 +94,7 @@ let package = Package(
         "GoogleUtilities_NSData",
         "GoogleUtilities_Reachability",
         "GoogleUtilities_UserDefaults",
+        "nanopb",
       ]
     ),
     .target(

+ 17 - 10
Sources/firebase-test/main.swift → Tests/firebase-test/main.swift

@@ -31,16 +31,23 @@ import GoogleUtilities_Network
 import GoogleUtilities_NSData
 import GoogleUtilities_Reachability
 import GoogleUtilities_UserDefaults
+import nanopb
 
-print("Hello world!")
-print("Is app store receipt sandbox? Answer: \(GULAppEnvironmentUtil.isAppStoreReceiptSandbox())")
-print("Is from app store? Answer: \(GULAppEnvironmentUtil.isFromAppStore())")
-print("Is this the simulator? Answer: \(GULAppEnvironmentUtil.isSimulator())")
-print("Device model? Answer: \(GULAppEnvironmentUtil.deviceModel() ?? "NONE")")
-print("System version? Answer: \(GULAppEnvironmentUtil.systemVersion() ?? "NONE")")
-print("Is App extension? Answer: \(GULAppEnvironmentUtil.isAppExtension())")
+import XCTest
 
-print("Is there a default app? Answer: \(FirebaseApp.app() != nil)")
-// print("Storage Version String? Answer: \(String(cString: StorageVersionString))")
+class importTest: XCTestCase {
+  func testImports() {
+    XCTAssertFalse(GULAppEnvironmentUtil.isAppStoreReceiptSandbox())
+    XCTAssertFalse(GULAppEnvironmentUtil.isFromAppStore())
+    XCTAssertFalse(GULAppEnvironmentUtil.isSimulator())
+    XCTAssertFalse(GULAppEnvironmentUtil.isAppExtension())
+    XCTAssertNil(FirebaseApp.app())
+    XCTAssertEqual(GULAppEnvironmentUtil.deviceModel(), "x86_64")
 
-// print("InstanceIDScopeFirebaseMessaging? Answer: \(InstanceIDScopeFirebaseMessaging)")
+    print("System version? Answer: \(GULAppEnvironmentUtil.systemVersion() ?? "NONE")")
+
+    print("Storage Version String? Answer: \(String(cString: StorageVersionString))")
+
+    // print("InstanceIDScopeFirebaseMessaging? Answer: \(InstanceIDScopeFirebaseMessaging)")
+  }
+}