Konstantin Varlamov 9645b2aa79 Initial commit (#5718) 5 лет назад
..
Example e462d04ddb Make Executors have deterministic shutdown (#5547) 5 лет назад
Protos 3d573f9714 Update Firestore sources for nanopb 0.3.9.5 (#5481) 6 лет назад
Source 0cf5999e42 Update comment for addSnapshotsInSyncListener (#5660) 5 лет назад
Swift 45eeb546ef Add FirebaseFirestoreSwift readme (#5698) 5 лет назад
core 9645b2aa79 Initial commit (#5718) 5 лет назад
fuzzing 7a58eba2e5 Remove `firebase/firestore` from paths in Firestore/core (#5374) 6 лет назад
third_party 9f17a76e82 Spelling error in FirestoreDecodingError (#5520) 5 лет назад
CHANGELOG.md 17746dd3a0 Update CHANGELOG for Firestore v1.15.0 (#5688) 5 лет назад
CMakeLists.txt 2a8d069b77 Run integration tests from CMake on mac (#4276) 6 лет назад
README.md 2656033eb2 Update integration testing docs (#5490) 6 лет назад
test.sh 5930ad2fee Factor out a universal build script (#884) 8 лет назад

README.md

Usage

  • Install prerequisite software
  • Set up a workspace via CocoaPods

    $ cd Firestore/Example
    $ pod update
    $ open Firestore.xcworkspace
    
  • Select the Firestore_Tests_iOS scheme

  • ⌘-u to build and run the unit tests

Improving the debugger experience

You can install a set of type formatters to improve the presentation of Firestore internals in LLDB and Xcode. Add the following to your ~/.lldbinit file:

command script import ~/path/to/firebase-ios-sdk/scripts/lldb/firestore.py

(substitute the location of your checkout of the firebase-ios-sdk.)

Running Integration Tests

Prefer running the integration tests against the Firestore Emulator. This is much faster than running against production and does not require you to configure a Firestore-enabled project.

  • In a new terminal, run scripts/run_firestore_emulator.sh and leave it running.
  • In Xcode select the Firestore_IntegrationTests_iOS scheme (or macOS or tvOS).
  • ⌘-u to build and run the integration tests.

Running Integration Tests - against production

Occasionally it's useful to run integration tests against a production account.

  • Set up a GoogleServices-Info.plist file in Firestore/Example/App.
  • Ensure your Firestore database has open rules (the integration tests do not authenticate).
  • In Xcode select the Firestore_IntegrationTests_iOS scheme
  • ⌘-u to build and run the integration tests

If you want to switch back to running integration tests against the emulator:

  • Ensure that GoogleServices-Info.plist is in its default state (git checkout Firestore/Example/App/GoogleServices-Info.plist).

Building Protos

Typically you should not need to worrying about regenerating the C++ files from the .proto files. If you do, see instructions at Protos/README.md.