mirror of
https://github.com/tappollo/IGListKit.git
synced 2026-01-12 22:45:13 +08:00
Test move sorting and pointer equality
Summary: A couple other methods that were missing coverage. - [x] All tests pass. Demo project builds and runs. - [x] I added tests, an experiment, or detailed why my change isn't tested. - [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md) Closes https://github.com/Instagram/IGListKit/pull/222 Differential Revision: D4206510 Pulled By: rnystrom fbshipit-source-id: c21a88a00881dc88cc20b3957179e4d267be95a3
This commit is contained in:
committed by
Facebook Github Bot
parent
8c32f2581f
commit
920ed00a7f
@@ -68,4 +68,52 @@
|
||||
XCTAssertEqual(set.count, 2);
|
||||
}
|
||||
|
||||
- (void)test_whenComparingMovePointers_withIndexPaths_thatEqual {
|
||||
IGListMoveIndexPath *move = [[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath new] to:[NSIndexPath new]];
|
||||
XCTAssertTrue([move isEqual:move]);
|
||||
}
|
||||
|
||||
- (void)test_whenComparingMovePointers_withIndexes_thatEqual {
|
||||
IGListMoveIndex *move = [[IGListMoveIndex alloc] initWithFrom:1 to:1];
|
||||
XCTAssertTrue([move isEqual:move]);
|
||||
}
|
||||
|
||||
- (void)test_whenComparingMoves_withIndexPaths_withNonMove_thatNotEqual {
|
||||
IGListMoveIndexPath *move = [[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath new] to:[NSIndexPath new]];
|
||||
XCTAssertFalse([move isEqual:[NSObject new]]);
|
||||
}
|
||||
|
||||
- (void)test_whenComparingMoves_withIndexes_withNonMove_thatNotEqual {
|
||||
IGListMoveIndex *move = [[IGListMoveIndex alloc] initWithFrom:1 to:1];
|
||||
XCTAssertFalse([move isEqual:[NSObject new]]);
|
||||
}
|
||||
|
||||
- (void)test_whenSortingMoves_withIndexPaths_thatSorted {
|
||||
NSArray *moves = @[
|
||||
[[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath indexPathForItem:2 inSection:2]
|
||||
to:[NSIndexPath indexPathForItem:3 inSection:3]],
|
||||
[[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath indexPathForItem:6 inSection:3]
|
||||
to:[NSIndexPath indexPathForItem:7 inSection:4]],
|
||||
[[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath indexPathForItem:0 inSection:1]
|
||||
to:[NSIndexPath indexPathForItem:1 inSection:5]],
|
||||
[[IGListMoveIndexPath alloc] initWithFrom:[NSIndexPath indexPathForItem:2 inSection:2]
|
||||
to:[NSIndexPath indexPathForItem:3 inSection:3]],
|
||||
];
|
||||
NSArray *expected = @[moves[2], moves[0], moves[3], moves[1]];
|
||||
NSArray *sorted = [moves sortedArrayUsingSelector:@selector(compare:)];
|
||||
XCTAssertEqualObjects(sorted, expected);
|
||||
}
|
||||
|
||||
- (void)test_whenSortingMoves_withIndexes_thatSorted {
|
||||
NSArray *moves = @[
|
||||
[[IGListMoveIndex alloc] initWithFrom:2 to:2],
|
||||
[[IGListMoveIndex alloc] initWithFrom:3 to:2],
|
||||
[[IGListMoveIndex alloc] initWithFrom:1 to:2],
|
||||
[[IGListMoveIndex alloc] initWithFrom:2 to:2],
|
||||
];
|
||||
NSArray *expected = @[moves[2], moves[0], moves[3], moves[1]];
|
||||
NSArray *sorted = [moves sortedArrayUsingSelector:@selector(compare:)];
|
||||
XCTAssertEqualObjects(sorted, expected);
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user