aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/Example/Tests/Core
diff options
context:
space:
mode:
authorGravatar zxu <zxu@google.com>2018-03-14 08:57:31 -0400
committerGravatar GitHub <noreply@github.com>2018-03-14 08:57:31 -0400
commit9e815620e9f7f43b42e03db4e5118d7ad03ddee7 (patch)
tree86f362bad99281325fca7ee3ae116b6a0f36d511 /Firestore/Example/Tests/Core
parentd4d73ea53ecdf1e8ade3d00921419645dd5d66f7 (diff)
grand PR to port the remaining paths (FieldPath and ResourcePath). (#865)
* naively remove FSTPath import and source/test files. * port FieldPath, part I * port FieldPath, part II * port ResourcePath, part I * port ResourcePath, part II * the grand commit to fix build errors * use testutil:: helper instead of those from FSTHelpers * fix test and lint * use c_str in errmsg directly * fix * fix * make code clean * fix integration test I missed * fix to avoid naming collision in preprocessor * address changes * address changes * address changes * fix: fieldMask are actually shared with different context. * address changes * address changes
Diffstat (limited to 'Firestore/Example/Tests/Core')
-rw-r--r--Firestore/Example/Tests/Core/FSTEventManagerTests.mm10
-rw-r--r--Firestore/Example/Tests/Core/FSTQueryListenerTests.mm24
-rw-r--r--Firestore/Example/Tests/Core/FSTQueryTests.mm256
-rw-r--r--Firestore/Example/Tests/Core/FSTViewSnapshotTest.mm3
-rw-r--r--Firestore/Example/Tests/Core/FSTViewTests.mm1
5 files changed, 146 insertions, 148 deletions
diff --git a/Firestore/Example/Tests/Core/FSTEventManagerTests.mm b/Firestore/Example/Tests/Core/FSTEventManagerTests.mm
index f5f7b5b..952d01f 100644
--- a/Firestore/Example/Tests/Core/FSTEventManagerTests.mm
+++ b/Firestore/Example/Tests/Core/FSTEventManagerTests.mm
@@ -52,7 +52,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testHandlesManyListenersPerQuery {
- FSTQuery *query = FSTTestQuery(@"foo/bar");
+ FSTQuery *query = FSTTestQuery("foo/bar");
FSTQueryListener *listener1 = [self noopListenerForQuery:query];
FSTQueryListener *listener2 = [self noopListenerForQuery:query];
@@ -73,7 +73,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testHandlesUnlistenOnUnknownListenerGracefully {
- FSTQuery *query = FSTTestQuery(@"foo/bar");
+ FSTQuery *query = FSTTestQuery("foo/bar");
FSTQueryListener *listener = [self noopListenerForQuery:query];
FSTSyncEngine *syncEngineMock = OCMStrictClassMock([FSTSyncEngine class]);
@@ -95,8 +95,8 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testNotifiesListenersInTheRightOrder {
- FSTQuery *query1 = FSTTestQuery(@"foo/bar");
- FSTQuery *query2 = FSTTestQuery(@"bar/baz");
+ FSTQuery *query1 = FSTTestQuery("foo/bar");
+ FSTQuery *query2 = FSTTestQuery("bar/baz");
NSMutableArray *eventOrder = [NSMutableArray array];
FSTQueryListener *listener1 = [self makeMockListenerForQuery:query1
@@ -135,7 +135,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testWillForwardOnlineStateChanges {
- FSTQuery *query = FSTTestQuery(@"foo/bar");
+ FSTQuery *query = FSTTestQuery("foo/bar");
FSTQueryListener *fakeListener = OCMClassMock([FSTQueryListener class]);
NSMutableArray *events = [NSMutableArray array];
OCMStub([fakeListener query]).andReturn(query);
diff --git a/Firestore/Example/Tests/Core/FSTQueryListenerTests.mm b/Firestore/Example/Tests/Core/FSTQueryListenerTests.mm
index 1b26360..55c4219 100644
--- a/Firestore/Example/Tests/Core/FSTQueryListenerTests.mm
+++ b/Firestore/Example/Tests/Core/FSTQueryListenerTests.mm
@@ -45,7 +45,7 @@ NS_ASSUME_NONNULL_BEGIN
NSMutableArray<FSTViewSnapshot *> *accum = [NSMutableArray array];
NSMutableArray<FSTViewSnapshot *> *otherAccum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
FSTDocument *doc2prime =
@@ -88,7 +88,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testRaisesErrorEvent {
NSMutableArray<NSError *> *accum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms/Eros");
+ FSTQuery *query = FSTTestQuery("rooms/Eros");
FSTQueryListener *listener = [self listenToQuery:query
handler:^(FSTViewSnapshot *snapshot, NSError *error) {
@@ -104,7 +104,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testRaisesEventForEmptyCollectionAfterSync {
NSMutableArray<FSTViewSnapshot *> *accum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTQueryListener *listener = [self listenToQuery:query accumulatingSnapshots:accum];
@@ -126,7 +126,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testMutingAsyncListenerPreventsAllSubsequentEvents {
NSMutableArray<FSTViewSnapshot *> *accum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms/Eros");
+ FSTQuery *query = FSTTestQuery("rooms/Eros");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 3, @{@"name" : @"Eros"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Eros", 4, @{@"name" : @"Eros2"}, NO);
@@ -166,7 +166,7 @@ NS_ASSUME_NONNULL_BEGIN
NSMutableArray<FSTViewSnapshot *> *filteredAccum = [NSMutableArray array];
NSMutableArray<FSTViewSnapshot *> *fullAccum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
@@ -204,7 +204,7 @@ NS_ASSUME_NONNULL_BEGIN
NSMutableArray<FSTViewSnapshot *> *filteredAccum = [NSMutableArray array];
NSMutableArray<FSTViewSnapshot *> *fullAccum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, YES);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
FSTDocument *doc1Prime = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
@@ -253,7 +253,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testRaisesQueryMetadataEventsOnlyWhenHasPendingWritesOnTheQueryChanges {
NSMutableArray<FSTViewSnapshot *> *fullAccum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, YES);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, YES);
FSTDocument *doc1Prime = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
@@ -290,7 +290,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testMetadataOnlyDocumentChangesAreFilteredOutWhenIncludeDocumentMetadataChangesIsFalse {
NSMutableArray<FSTViewSnapshot *> *filteredAccum = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, YES);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
FSTDocument *doc1Prime = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
@@ -322,7 +322,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testWillWaitForSyncIfOnline {
NSMutableArray<FSTViewSnapshot *> *events = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
FSTQueryListener *listener =
@@ -365,7 +365,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testWillRaiseInitialEventWhenGoingOffline {
NSMutableArray<FSTViewSnapshot *> *events = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTDocument *doc1 = FSTTestDoc(@"rooms/Eros", 1, @{@"name" : @"Eros"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/Hades", 2, @{@"name" : @"Hades"}, NO);
FSTQueryListener *listener =
@@ -411,7 +411,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testWillRaiseInitialEventWhenGoingOfflineAndThereAreNoDocs {
NSMutableArray<FSTViewSnapshot *> *events = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTQueryListener *listener = [self listenToQuery:query
options:[FSTListenOptions defaultOptions]
accumulatingSnapshots:events];
@@ -437,7 +437,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testWillRaiseInitialEventWhenStartingOfflineAndThereAreNoDocs {
NSMutableArray<FSTViewSnapshot *> *events = [NSMutableArray array];
- FSTQuery *query = FSTTestQuery(@"rooms");
+ FSTQuery *query = FSTTestQuery("rooms");
FSTQueryListener *listener = [self listenToQuery:query
options:[FSTListenOptions defaultOptions]
accumulatingSnapshots:events];
diff --git a/Firestore/Example/Tests/Core/FSTQueryTests.mm b/Firestore/Example/Tests/Core/FSTQueryTests.mm
index 5f6d279..8b5b524 100644
--- a/Firestore/Example/Tests/Core/FSTQueryTests.mm
+++ b/Firestore/Example/Tests/Core/FSTQueryTests.mm
@@ -21,7 +21,6 @@
#import "Firestore/Source/API/FIRFirestore+Internal.h"
#import "Firestore/Source/Model/FSTDocument.h"
#import "Firestore/Source/Model/FSTDocumentKey.h"
-#import "Firestore/Source/Model/FSTPath.h"
#import "Firestore/Example/Tests/Util/FSTHelpers.h"
@@ -30,6 +29,7 @@
#include "Firestore/core/src/firebase/firestore/model/resource_path.h"
#include "Firestore/core/src/firebase/firestore/util/string_apple.h"
#include "Firestore/core/test/firebase/firestore/testutil/testutil.h"
+#include "absl/strings/string_view.h"
namespace testutil = firebase::firestore::testutil;
namespace util = firebase::firestore::util;
@@ -41,16 +41,14 @@ NS_ASSUME_NONNULL_BEGIN
/** Convenience methods for building test queries. */
@interface FSTQuery (Tests)
-- (FSTQuery *)queryByAddingSortBy:(NSString *)key ascending:(BOOL)ascending;
+- (FSTQuery *)queryByAddingSortBy:(const absl::string_view)key ascending:(BOOL)ascending;
@end
@implementation FSTQuery (Tests)
-- (FSTQuery *)queryByAddingSortBy:(NSString *)key ascending:(BOOL)ascending {
- return [self
- queryByAddingSortOrder:[FSTSortOrder
- sortOrderWithFieldPath:testutil::Field(util::MakeStringView(key))
- ascending:ascending]];
+- (FSTQuery *)queryByAddingSortBy:(const absl::string_view)key ascending:(BOOL)ascending {
+ return [self queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field(key)
+ ascending:ascending]];
}
@end
@@ -61,9 +59,8 @@ NS_ASSUME_NONNULL_BEGIN
@implementation FSTQueryTests
- (void)testConstructor {
- FSTResourcePath *path =
- [FSTResourcePath pathWithSegments:@[ @"rooms", @"Firestore", @"messages", @"0001" ]];
- FSTQuery *query = [FSTQuery queryWithPath:[path toCPPResourcePath]];
+ const ResourcePath path{"rooms", "Firestore", "messages", "0001"};
+ FSTQuery *query = [FSTQuery queryWithPath:path];
XCTAssertNotNil(query);
XCTAssertEqual(query.sortOrders.count, 1);
@@ -74,7 +71,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testOrderBy {
- FSTQuery *query = FSTTestQuery(@"rooms/Firestore/messages");
+ FSTQuery *query = FSTTestQuery("rooms/Firestore/messages");
query =
[query queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field("length")
ascending:NO]];
@@ -96,7 +93,7 @@ NS_ASSUME_NONNULL_BEGIN
FSTDocument *doc3 = FSTTestDoc(@"rooms/other/messages/1", 0, @{@"text" : @"msg3"}, NO);
// document query
- FSTQuery *query = FSTTestQuery(@"rooms/eros/messages/1");
+ FSTQuery *query = FSTTestQuery("rooms/eros/messages/1");
XCTAssertTrue([query matchesDocument:doc1]);
XCTAssertFalse([query matchesDocument:doc2]);
XCTAssertFalse([query matchesDocument:doc3]);
@@ -109,7 +106,7 @@ NS_ASSUME_NONNULL_BEGIN
FSTDocument *doc3 = FSTTestDoc(@"rooms/other/messages/1", 0, @{@"text" : @"msg3"}, NO);
// shallow ancestor query
- FSTQuery *query = FSTTestQuery(@"rooms/eros/messages");
+ FSTQuery *query = FSTTestQuery("rooms/eros/messages");
XCTAssertTrue([query matchesDocument:doc1]);
XCTAssertFalse([query matchesDocument:doc1Meta]);
XCTAssertTrue([query matchesDocument:doc2]);
@@ -120,17 +117,17 @@ NS_ASSUME_NONNULL_BEGIN
FSTDocument *doc1 = FSTTestDoc(@"rooms/eros/messages/1", 0, @{@"text" : @"msg1"}, NO);
FSTDocument *doc2 = FSTTestDoc(@"rooms/eros/messages/2", 0, @{}, NO);
- FSTQuery *query = [FSTTestQuery(@"rooms/eros/messages")
- queryByAddingFilter:FSTTestFilter(@"text", @"==", @"msg1")];
+ FSTQuery *query = [FSTTestQuery("rooms/eros/messages")
+ queryByAddingFilter:FSTTestFilter("text", @"==", @"msg1")];
XCTAssertTrue([query matchesDocument:doc1]);
XCTAssertFalse([query matchesDocument:doc2]);
}
- (void)testMatchesPrimitiveValuesForFilters {
FSTQuery *query1 =
- [FSTTestQuery(@"collection") queryByAddingFilter:FSTTestFilter(@"sort", @">=", @(2))];
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @">=", @(2))];
FSTQuery *query2 =
- [FSTTestQuery(@"collection") queryByAddingFilter:FSTTestFilter(@"sort", @"<=", @(2))];
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @"<=", @(2))];
FSTDocument *doc1 = FSTTestDoc(@"collection/1", 0, @{ @"sort" : @1 }, NO);
FSTDocument *doc2 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @2 }, NO);
@@ -155,8 +152,8 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testNullFilter {
- FSTQuery *query = [FSTTestQuery(@"collection")
- queryByAddingFilter:FSTTestFilter(@"sort", @"==", [NSNull null])];
+ FSTQuery *query =
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @"==", [NSNull null])];
FSTDocument *doc1 = FSTTestDoc(@"collection/1", 0, @{@"sort" : [NSNull null]}, NO);
FSTDocument *doc2 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @2 }, NO);
FSTDocument *doc3 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @3.1 }, NO);
@@ -172,7 +169,7 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testNanFilter {
FSTQuery *query =
- [FSTTestQuery(@"collection") queryByAddingFilter:FSTTestFilter(@"sort", @"==", @(NAN))];
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @"==", @(NAN))];
FSTDocument *doc1 = FSTTestDoc(@"collection/1", 0, @{ @"sort" : @(NAN) }, NO);
FSTDocument *doc2 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @2 }, NO);
FSTDocument *doc3 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @3.1 }, NO);
@@ -188,9 +185,9 @@ NS_ASSUME_NONNULL_BEGIN
- (void)testDoesNotMatchComplexObjectsForFilters {
FSTQuery *query1 =
- [FSTTestQuery(@"collection") queryByAddingFilter:FSTTestFilter(@"sort", @"<=", @(2))];
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @"<=", @(2))];
FSTQuery *query2 =
- [FSTTestQuery(@"collection") queryByAddingFilter:FSTTestFilter(@"sort", @">=", @(2))];
+ [FSTTestQuery("collection") queryByAddingFilter:FSTTestFilter("sort", @">=", @(2))];
FSTDocument *doc1 = FSTTestDoc(@"collection/1", 0, @{ @"sort" : @2 }, NO);
FSTDocument *doc2 = FSTTestDoc(@"collection/2", 0, @{ @"sort" : @[] }, NO);
@@ -218,7 +215,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testDoesntRemoveComplexObjectsWithOrderBy {
- FSTQuery *query1 = [FSTTestQuery(@"collection")
+ FSTQuery *query1 = [FSTTestQuery("collection")
queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field("sort")
ascending:YES]];
@@ -238,16 +235,16 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testFiltersBasedOnArrayValue {
- FSTQuery *baseQuery = FSTTestQuery(@"collection");
+ FSTQuery *baseQuery = FSTTestQuery("collection");
FSTDocument *doc1 = FSTTestDoc(@"collection/doc", 0, @{ @"tags" : @[ @"foo", @1, @YES ] }, NO);
NSArray<id<FSTFilter>> *matchingFilters =
- @[ FSTTestFilter(@"tags", @"==", @[ @"foo", @1, @YES ]) ];
+ @[ FSTTestFilter("tags", @"==", @[ @"foo", @1, @YES ]) ];
NSArray<id<FSTFilter>> *nonMatchingFilters = @[
- FSTTestFilter(@"tags", @"==", @"foo"),
- FSTTestFilter(@"tags", @"==", @[ @"foo", @1 ]),
- FSTTestFilter(@"tags", @"==", @[ @"foo", @YES, @1 ]),
+ FSTTestFilter("tags", @"==", @"foo"),
+ FSTTestFilter("tags", @"==", @[ @"foo", @1 ]),
+ FSTTestFilter("tags", @"==", @[ @"foo", @YES, @1 ]),
];
for (id<FSTFilter> filter in matchingFilters) {
@@ -260,27 +257,27 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testFiltersBasedOnObjectValue {
- FSTQuery *baseQuery = FSTTestQuery(@"collection");
+ FSTQuery *baseQuery = FSTTestQuery("collection");
FSTDocument *doc1 =
FSTTestDoc(@"collection/doc", 0,
@{ @"tags" : @{@"foo" : @"foo", @"a" : @0, @"b" : @YES, @"c" : @(NAN)} }, NO);
NSArray<id<FSTFilter>> *matchingFilters = @[
- FSTTestFilter(@"tags", @"==",
+ FSTTestFilter("tags", @"==",
@{ @"foo" : @"foo",
@"a" : @0,
@"b" : @YES,
@"c" : @(NAN) }),
- FSTTestFilter(@"tags", @"==",
+ FSTTestFilter("tags", @"==",
@{ @"b" : @YES,
@"a" : @0,
@"foo" : @"foo",
@"c" : @(NAN) }),
- FSTTestFilter(@"tags.foo", @"==", @"foo")
+ FSTTestFilter("tags.foo", @"==", @"foo")
];
NSArray<id<FSTFilter>> *nonMatchingFilters = @[
- FSTTestFilter(@"tags", @"==", @"foo"), FSTTestFilter(@"tags", @"==", @{
+ FSTTestFilter("tags", @"==", @"foo"), FSTTestFilter("tags", @"==", @{
@"foo" : @"foo",
@"a" : @0,
@"b" : @YES,
@@ -312,7 +309,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testSortsDocumentsInTheCorrectOrder {
- FSTQuery *query = FSTTestQuery(@"collection");
+ FSTQuery *query = FSTTestQuery("collection");
query = [query queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field("sort")
ascending:YES]];
@@ -340,7 +337,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testSortsDocumentsUsingMultipleFields {
- FSTQuery *query = FSTTestQuery(@"collection");
+ FSTQuery *query = FSTTestQuery("collection");
query =
[query queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field("sort1")
ascending:YES]];
@@ -367,7 +364,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testSortsDocumentsWithDescendingToo {
- FSTQuery *query = FSTTestQuery(@"collection");
+ FSTQuery *query = FSTTestQuery("collection");
query =
[query queryByAddingSortOrder:[FSTSortOrder sortOrderWithFieldPath:testutil::Field("sort1")
ascending:NO]];
@@ -394,40 +391,40 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testEquality {
- FSTQuery *q11 = FSTTestQuery(@"foo");
- q11 = [q11 queryByAddingFilter:FSTTestFilter(@"i1", @"<", @(2))];
- q11 = [q11 queryByAddingFilter:FSTTestFilter(@"i2", @"==", @(3))];
- FSTQuery *q12 = FSTTestQuery(@"foo");
- q12 = [q12 queryByAddingFilter:FSTTestFilter(@"i2", @"==", @(3))];
- q12 = [q12 queryByAddingFilter:FSTTestFilter(@"i1", @"<", @(2))];
-
- FSTQuery *q21 = FSTTestQuery(@"foo");
- FSTQuery *q22 = FSTTestQuery(@"foo");
-
- FSTQuery *q31 = FSTTestQuery(@"foo/bar");
- FSTQuery *q32 = FSTTestQuery(@"foo/bar");
-
- FSTQuery *q41 = FSTTestQuery(@"foo");
- q41 = [q41 queryByAddingSortBy:@"foo" ascending:YES];
- q41 = [q41 queryByAddingSortBy:@"bar" ascending:YES];
- FSTQuery *q42 = FSTTestQuery(@"foo");
- q42 = [q42 queryByAddingSortBy:@"foo" ascending:YES];
- q42 = [q42 queryByAddingSortBy:@"bar" ascending:YES];
- FSTQuery *q43Diff = FSTTestQuery(@"foo");
- q43Diff = [q43Diff queryByAddingSortBy:@"bar" ascending:YES];
- q43Diff = [q43Diff queryByAddingSortBy:@"foo" ascending:YES];
-
- FSTQuery *q51 = FSTTestQuery(@"foo");
- q51 = [q51 queryByAddingSortBy:@"foo" ascending:YES];
- q51 = [q51 queryByAddingFilter:FSTTestFilter(@"foo", @">", @(2))];
- FSTQuery *q52 = FSTTestQuery(@"foo");
- q52 = [q52 queryByAddingFilter:FSTTestFilter(@"foo", @">", @(2))];
- q52 = [q52 queryByAddingSortBy:@"foo" ascending:YES];
- FSTQuery *q53Diff = FSTTestQuery(@"foo");
- q53Diff = [q53Diff queryByAddingFilter:FSTTestFilter(@"bar", @">", @(2))];
- q53Diff = [q53Diff queryByAddingSortBy:@"bar" ascending:YES];
-
- FSTQuery *q61 = FSTTestQuery(@"foo");
+ FSTQuery *q11 = FSTTestQuery("foo");
+ q11 = [q11 queryByAddingFilter:FSTTestFilter("i1", @"<", @(2))];
+ q11 = [q11 queryByAddingFilter:FSTTestFilter("i2", @"==", @(3))];
+ FSTQuery *q12 = FSTTestQuery("foo");
+ q12 = [q12 queryByAddingFilter:FSTTestFilter("i2", @"==", @(3))];
+ q12 = [q12 queryByAddingFilter:FSTTestFilter("i1", @"<", @(2))];
+
+ FSTQuery *q21 = FSTTestQuery("foo");
+ FSTQuery *q22 = FSTTestQuery("foo");
+
+ FSTQuery *q31 = FSTTestQuery("foo/bar");
+ FSTQuery *q32 = FSTTestQuery("foo/bar");
+
+ FSTQuery *q41 = FSTTestQuery("foo");
+ q41 = [q41 queryByAddingSortBy:"foo" ascending:YES];
+ q41 = [q41 queryByAddingSortBy:"bar" ascending:YES];
+ FSTQuery *q42 = FSTTestQuery("foo");
+ q42 = [q42 queryByAddingSortBy:"foo" ascending:YES];
+ q42 = [q42 queryByAddingSortBy:"bar" ascending:YES];
+ FSTQuery *q43Diff = FSTTestQuery("foo");
+ q43Diff = [q43Diff queryByAddingSortBy:"bar" ascending:YES];
+ q43Diff = [q43Diff queryByAddingSortBy:"foo" ascending:YES];
+
+ FSTQuery *q51 = FSTTestQuery("foo");
+ q51 = [q51 queryByAddingSortBy:"foo" ascending:YES];
+ q51 = [q51 queryByAddingFilter:FSTTestFilter("foo", @">", @(2))];
+ FSTQuery *q52 = FSTTestQuery("foo");
+ q52 = [q52 queryByAddingFilter:FSTTestFilter("foo", @">", @(2))];
+ q52 = [q52 queryByAddingSortBy:"foo" ascending:YES];
+ FSTQuery *q53Diff = FSTTestQuery("foo");
+ q53Diff = [q53Diff queryByAddingFilter:FSTTestFilter("bar", @">", @(2))];
+ q53Diff = [q53Diff queryByAddingSortBy:"bar" ascending:YES];
+
+ FSTQuery *q61 = FSTTestQuery("foo");
q61 = [q61 queryBySettingLimit:10];
// XCTAssertEqualObjects(q11, q12); // TODO(klimt): not canonical yet
@@ -459,40 +456,40 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testUniqueIds {
- FSTQuery *q11 = FSTTestQuery(@"foo");
- q11 = [q11 queryByAddingFilter:FSTTestFilter(@"i1", @"<", @(2))];
- q11 = [q11 queryByAddingFilter:FSTTestFilter(@"i2", @"==", @(3))];
- FSTQuery *q12 = FSTTestQuery(@"foo");
- q12 = [q12 queryByAddingFilter:FSTTestFilter(@"i2", @"==", @(3))];
- q12 = [q12 queryByAddingFilter:FSTTestFilter(@"i1", @"<", @(2))];
-
- FSTQuery *q21 = FSTTestQuery(@"foo");
- FSTQuery *q22 = FSTTestQuery(@"foo");
-
- FSTQuery *q31 = FSTTestQuery(@"foo/bar");
- FSTQuery *q32 = FSTTestQuery(@"foo/bar");
-
- FSTQuery *q41 = FSTTestQuery(@"foo");
- q41 = [q41 queryByAddingSortBy:@"foo" ascending:YES];
- q41 = [q41 queryByAddingSortBy:@"bar" ascending:YES];
- FSTQuery *q42 = FSTTestQuery(@"foo");
- q42 = [q42 queryByAddingSortBy:@"foo" ascending:YES];
- q42 = [q42 queryByAddingSortBy:@"bar" ascending:YES];
- FSTQuery *q43Diff = FSTTestQuery(@"foo");
- q43Diff = [q43Diff queryByAddingSortBy:@"bar" ascending:YES];
- q43Diff = [q43Diff queryByAddingSortBy:@"foo" ascending:YES];
-
- FSTQuery *q51 = FSTTestQuery(@"foo");
- q51 = [q51 queryByAddingSortBy:@"foo" ascending:YES];
- q51 = [q51 queryByAddingFilter:FSTTestFilter(@"foo", @">", @(2))];
- FSTQuery *q52 = FSTTestQuery(@"foo");
- q52 = [q52 queryByAddingFilter:FSTTestFilter(@"foo", @">", @(2))];
- q52 = [q52 queryByAddingSortBy:@"foo" ascending:YES];
- FSTQuery *q53Diff = FSTTestQuery(@"foo");
- q53Diff = [q53Diff queryByAddingFilter:FSTTestFilter(@"bar", @">", @(2))];
- q53Diff = [q53Diff queryByAddingSortBy:@"bar" ascending:YES];
-
- FSTQuery *q61 = FSTTestQuery(@"foo");
+ FSTQuery *q11 = FSTTestQuery("foo");
+ q11 = [q11 queryByAddingFilter:FSTTestFilter("i1", @"<", @(2))];
+ q11 = [q11 queryByAddingFilter:FSTTestFilter("i2", @"==", @(3))];
+ FSTQuery *q12 = FSTTestQuery("foo");
+ q12 = [q12 queryByAddingFilter:FSTTestFilter("i2", @"==", @(3))];
+ q12 = [q12 queryByAddingFilter:FSTTestFilter("i1", @"<", @(2))];
+
+ FSTQuery *q21 = FSTTestQuery("foo");
+ FSTQuery *q22 = FSTTestQuery("foo");
+
+ FSTQuery *q31 = FSTTestQuery("foo/bar");
+ FSTQuery *q32 = FSTTestQuery("foo/bar");
+
+ FSTQuery *q41 = FSTTestQuery("foo");
+ q41 = [q41 queryByAddingSortBy:"foo" ascending:YES];
+ q41 = [q41 queryByAddingSortBy:"bar" ascending:YES];
+ FSTQuery *q42 = FSTTestQuery("foo");
+ q42 = [q42 queryByAddingSortBy:"foo" ascending:YES];
+ q42 = [q42 queryByAddingSortBy:"bar" ascending:YES];
+ FSTQuery *q43Diff = FSTTestQuery("foo");
+ q43Diff = [q43Diff queryByAddingSortBy:"bar" ascending:YES];
+ q43Diff = [q43Diff queryByAddingSortBy:"foo" ascending:YES];
+
+ FSTQuery *q51 = FSTTestQuery("foo");
+ q51 = [q51 queryByAddingSortBy:"foo" ascending:YES];
+ q51 = [q51 queryByAddingFilter:FSTTestFilter("foo", @">", @(2))];
+ FSTQuery *q52 = FSTTestQuery("foo");
+ q52 = [q52 queryByAddingFilter:FSTTestFilter("foo", @">", @(2))];
+ q52 = [q52 queryByAddingSortBy:"foo" ascending:YES];
+ FSTQuery *q53Diff = FSTTestQuery("foo");
+ q53Diff = [q53Diff queryByAddingFilter:FSTTestFilter("bar", @">", @(2))];
+ q53Diff = [q53Diff queryByAddingSortBy:"bar" ascending:YES];
+
+ FSTQuery *q61 = FSTTestQuery("foo");
q61 = [q61 queryBySettingLimit:10];
// XCTAssertEqual(q11.hash, q12.hash); // TODO(klimt): not canonical yet
@@ -524,52 +521,55 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testImplicitOrderBy {
- FSTQuery *baseQuery = FSTTestQuery(@"foo");
+ FSTQuery *baseQuery = FSTTestQuery("foo");
// Default is ascending
- XCTAssertEqualObjects(baseQuery.sortOrders, @[ FSTTestOrderBy(kDocumentKeyPath, @"asc") ]);
+ XCTAssertEqualObjects(baseQuery.sortOrders,
+ @[ FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc") ]);
// Explicit key ordering is respected
XCTAssertEqualObjects(
- [baseQuery queryByAddingSortOrder:FSTTestOrderBy(kDocumentKeyPath, @"asc")].sortOrders,
- @[ FSTTestOrderBy(kDocumentKeyPath, @"asc") ]);
+ [baseQuery queryByAddingSortOrder:FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc")]
+ .sortOrders,
+ @[ FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc") ]);
XCTAssertEqualObjects(
- [baseQuery queryByAddingSortOrder:FSTTestOrderBy(kDocumentKeyPath, @"desc")].sortOrders,
- @[ FSTTestOrderBy(kDocumentKeyPath, @"desc") ]);
+ [baseQuery queryByAddingSortOrder:FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc")]
+ .sortOrders,
+ @[ FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc") ]);
XCTAssertEqualObjects(
- [[baseQuery queryByAddingSortOrder:FSTTestOrderBy(@"foo", @"asc")]
- queryByAddingSortOrder:FSTTestOrderBy(kDocumentKeyPath, @"asc")]
+ [[baseQuery queryByAddingSortOrder:FSTTestOrderBy("foo", @"asc")]
+ queryByAddingSortOrder:FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc")]
.sortOrders,
- (@[ FSTTestOrderBy(@"foo", @"asc"), FSTTestOrderBy(kDocumentKeyPath, @"asc") ]));
+ (@[ FSTTestOrderBy("foo", @"asc"), FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc") ]));
XCTAssertEqualObjects(
- [[baseQuery queryByAddingSortOrder:FSTTestOrderBy(@"foo", @"asc")]
- queryByAddingSortOrder:FSTTestOrderBy(kDocumentKeyPath, @"desc")]
+ [[baseQuery queryByAddingSortOrder:FSTTestOrderBy("foo", @"asc")]
+ queryByAddingSortOrder:FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc")]
.sortOrders,
- (@[ FSTTestOrderBy(@"foo", @"asc"), FSTTestOrderBy(kDocumentKeyPath, @"desc") ]));
+ (@[ FSTTestOrderBy("foo", @"asc"), FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc") ]));
// Inequality filters add order bys
XCTAssertEqualObjects(
- [baseQuery queryByAddingFilter:FSTTestFilter(@"foo", @"<", @5)].sortOrders,
- (@[ FSTTestOrderBy(@"foo", @"asc"), FSTTestOrderBy(kDocumentKeyPath, @"asc") ]));
+ [baseQuery queryByAddingFilter:FSTTestFilter("foo", @"<", @5)].sortOrders,
+ (@[ FSTTestOrderBy("foo", @"asc"), FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc") ]));
// Descending order by applies to implicit key ordering
XCTAssertEqualObjects(
- [baseQuery queryByAddingSortOrder:FSTTestOrderBy(@"foo", @"desc")].sortOrders,
- (@[ FSTTestOrderBy(@"foo", @"desc"), FSTTestOrderBy(kDocumentKeyPath, @"desc") ]));
- XCTAssertEqualObjects([[baseQuery queryByAddingSortOrder:FSTTestOrderBy(@"foo", @"asc")]
- queryByAddingSortOrder:FSTTestOrderBy(@"bar", @"desc")]
+ [baseQuery queryByAddingSortOrder:FSTTestOrderBy("foo", @"desc")].sortOrders,
+ (@[ FSTTestOrderBy("foo", @"desc"), FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc") ]));
+ XCTAssertEqualObjects([[baseQuery queryByAddingSortOrder:FSTTestOrderBy("foo", @"asc")]
+ queryByAddingSortOrder:FSTTestOrderBy("bar", @"desc")]
.sortOrders,
(@[
- FSTTestOrderBy(@"foo", @"asc"), FSTTestOrderBy(@"bar", @"desc"),
- FSTTestOrderBy(kDocumentKeyPath, @"desc")
+ FSTTestOrderBy("foo", @"asc"), FSTTestOrderBy("bar", @"desc"),
+ FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"desc")
]));
- XCTAssertEqualObjects([[baseQuery queryByAddingSortOrder:FSTTestOrderBy(@"foo", @"desc")]
- queryByAddingSortOrder:FSTTestOrderBy(@"bar", @"asc")]
+ XCTAssertEqualObjects([[baseQuery queryByAddingSortOrder:FSTTestOrderBy("foo", @"desc")]
+ queryByAddingSortOrder:FSTTestOrderBy("bar", @"asc")]
.sortOrders,
(@[
- FSTTestOrderBy(@"foo", @"desc"), FSTTestOrderBy(@"bar", @"asc"),
- FSTTestOrderBy(kDocumentKeyPath, @"asc")
+ FSTTestOrderBy("foo", @"desc"), FSTTestOrderBy("bar", @"asc"),
+ FSTTestOrderBy(FieldPath::kDocumentKeyPath, @"asc")
]));
}
diff --git a/Firestore/Example/Tests/Core/FSTViewSnapshotTest.mm b/Firestore/Example/Tests/Core/FSTViewSnapshotTest.mm
index fe3e42d..c503684 100644
--- a/Firestore/Example/Tests/Core/FSTViewSnapshotTest.mm
+++ b/Firestore/Example/Tests/Core/FSTViewSnapshotTest.mm
@@ -21,7 +21,6 @@
#import "Firestore/Source/Core/FSTQuery.h"
#import "Firestore/Source/Model/FSTDocument.h"
#import "Firestore/Source/Model/FSTDocumentSet.h"
-#import "Firestore/Source/Model/FSTPath.h"
#import "Firestore/Example/Tests/Util/FSTHelpers.h"
@@ -107,7 +106,7 @@ NS_ASSUME_NONNULL_BEGIN
}
- (void)testViewSnapshotConstructor {
- FSTQuery *query = FSTTestQuery(@"a");
+ FSTQuery *query = FSTTestQuery("a");
FSTDocumentSet *documents = [FSTDocumentSet documentSetWithComparator:FSTDocumentComparatorByKey];
FSTDocumentSet *oldDocuments = documents;
documents = [documents documentSetByAddingDocument:FSTTestDoc(@"c/a", 1, @{}, NO)];
diff --git a/Firestore/Example/Tests/Core/FSTViewTests.mm b/Firestore/Example/Tests/Core/FSTViewTests.mm
index 7df8195..1e3ec1a 100644
--- a/Firestore/Example/Tests/Core/FSTViewTests.mm
+++ b/Firestore/Example/Tests/Core/FSTViewTests.mm
@@ -25,7 +25,6 @@
#import "Firestore/Source/Model/FSTDocumentKey.h"
#import "Firestore/Source/Model/FSTDocumentSet.h"
#import "Firestore/Source/Model/FSTFieldValue.h"
-#import "Firestore/Source/Model/FSTPath.h"
#import "Firestore/Source/Remote/FSTRemoteEvent.h"
#import "Firestore/Example/Tests/Util/FSTHelpers.h"