Gil 8d9243454b Add DocumentSnapshot.data(as:with:decoder:) (#6334) 5 yıl önce
..
Example 8d9243454b Add DocumentSnapshot.data(as:with:decoder:) (#6334) 5 yıl önce
Protos edb9638659 When building protos, also check if CMAKE_CROSSCOMPILING is set, (#7351) 5 yıl önce
Source 3d84b99852 Support NSPredicate CONTAINS and IN with new filter queries (#7203) 5 yıl önce
Swift 8d9243454b Add DocumentSnapshot.data(as:with:decoder:) (#6334) 5 yıl önce
core f1294cee91 Fix a crash that happens when Firestore is being terminated when the last shared pointer to it is in a listener (#7421) 5 yıl önce
fuzzing 82143a6b7c Fix fuzz build (#7401) 5 yıl önce
third_party eabe8d46a0 Update and apply swiftformat fix (#6239) 5 yıl önce
CHANGELOG.md 5e76aa968b Tweak the changelog message for a fixed crash (#7449) 5 yıl önce
CMakeLists.txt 2a8d069b77 Run integration tests from CMake on mac (#4276) 6 yıl önce
README.md 2656033eb2 Update integration testing docs (#5490) 6 yıl önce
test.sh 5930ad2fee Factor out a universal build script (#884) 8 yıl önce

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.