@@ -14,71 +14,75 @@ class EntityStoreTests: XCTestCase {
1414 let entityStore = EntityStore ( )
1515
1616 withExtendedLifetime ( entityStore. store ( entity: entity) ) { _ in
17- XCTAssertNotNil ( entityStore. storage [ SingleNodeFixture . self, id: 1 ] )
18- XCTAssertNotNil ( entityStore. storage [ OptionalNodeFixture . self, id: 1 ] )
19- XCTAssertNotNil ( entityStore. storage [ ListNodeFixture . self, id: 1 ] )
17+ XCTAssertNotNil ( entityStore. find ( SingleNodeFixture . self, id: 1 ) )
18+ XCTAssertNotNil ( entityStore. find ( OptionalNodeFixture . self, id: 1 ) )
19+ XCTAssertNotNil ( entityStore. find ( ListNodeFixture . self, id: 1 ) )
2020 }
2121 }
2222
23- func test_storeAggregate_nestedEntityReplacedByNil_entityIsUpdated_aggregateEntityRemainsNil ( ) {
23+ func test_storeAggregate_nestedEntitySetToNil_entityIsUpdated_aggregateNestedEntityRemainsNil ( ) throws {
2424 let entityStore = EntityStore ( )
2525 let nestedOptional = OptionalNodeFixture ( id: 1 )
2626 var root = RootFixture ( id: 1 , primitive: " " , singleNode: SingleNodeFixture ( id: 1 ) , optional: nestedOptional, listNodes: [ ] )
2727
28- withExtendedLifetime ( entityStore. store ( entity: root) ) {
28+ try withExtendedLifetime ( entityStore. store ( entity: root) ) {
2929 root. optional = nil
3030
3131 _ = entityStore. store ( entity: root)
3232 _ = entityStore. store ( entity: nestedOptional)
3333
3434 XCTAssertNotNil ( entityStore. find ( RootFixture . self, id: 1 ) )
3535 XCTAssertNil ( entityStore. find ( RootFixture . self, id: 1 ) !. value. optional)
36+ let root = try XCTUnwrap ( entityStore. find ( RootFixture . self, id: 1 ) )
37+ XCTAssertNil ( root. value. optional)
3638 }
3739 }
3840
3941 /// check that removed relations do not trigger an update
40- func test_storeAggregate_removeEntityFromNestedArray_removedEntityChange_aggregateArrayNotChanged( ) {
42+ func test_storeAggregate_removeEntityFromNestedArray_removedEntityChange_aggregateArrayNotChanged( ) throws {
4143 let entityStore = EntityStore ( )
4244 var entityToRemove = ListNodeFixture ( id: 2 )
4345 let nestedArray : [ ListNodeFixture ] = [ entityToRemove, ListNodeFixture ( id: 1 ) ]
4446 var root = RootFixture ( id: 1 , primitive: " " , singleNode: SingleNodeFixture ( id: 1 ) , optional: OptionalNodeFixture ( id: 1 ) , listNodes: nestedArray)
4547
46- withExtendedLifetime ( entityStore. store ( entity: root) ) {
48+ try withExtendedLifetime ( entityStore. store ( entity: root) ) {
4749 root. listNodes = Array ( nestedArray [ 1 ... ] )
4850 entityToRemove. key = " changed "
4951
5052 _ = entityStore. store ( entity: root)
5153 _ = entityStore. store ( entity: entityToRemove)
5254
53- let storedRoot = entityStore. find ( RootFixture . self, id: 1 ) ! . value
55+ let root = try XCTUnwrap ( entityStore. find ( RootFixture . self, id: 1 ) )
5456
55- XCTAssertFalse ( storedRoot . listNodes. contains ( entityToRemove) )
56- XCTAssertFalse ( storedRoot . listNodes. map ( \. id) . contains ( entityToRemove. id) )
57+ XCTAssertFalse ( root . value . listNodes. contains ( entityToRemove) )
58+ XCTAssertFalse ( root . value . listNodes. map ( \. id) . contains ( entityToRemove. id) )
5759 }
5860 }
5961
60- func test_storeAggregate_nestedWrapperChanged_aggregateIsUpdated( ) {
62+ func test_storeAggregate_nestedWrapperChanged_aggregateIsUpdated( ) throws {
6163 let entityStore = EntityStore ( )
6264 let root = RootFixture ( id: 1 , primitive: " " , singleNode: SingleNodeFixture ( id: 1 ) , optional: OptionalNodeFixture ( id: 1 ) , listNodes: [ ] , enumWrapper: . single( SingleNodeFixture ( id: 2 ) ) )
6365 let updatedValue = SingleNodeFixture ( id: 2 , primitive: " updated " )
6466
65- withExtendedLifetime ( entityStore. store ( entity: root) ) {
67+ try withExtendedLifetime ( entityStore. store ( entity: root) ) {
6668 _ = entityStore. store ( entity: updatedValue)
67- XCTAssertEqual ( entityStore. find ( RootFixture . self, id: 1 ) !. value. enumWrapper, . single( updatedValue) )
69+ let root = try XCTUnwrap ( entityStore. find ( RootFixture . self, id: 1 ) )
70+ XCTAssertEqual ( root. value. enumWrapper, . single( updatedValue) )
6871 }
6972 }
7073
71- func test_storeAggregate_nestedOptionalWrapperNullified_aggregateIsNullified( ) {
74+ func test_storeAggregate_nestedOptionalWrapperNullified_aggregateIsNullified( ) throws {
7275 let entityStore = EntityStore ( )
7376 var root = RootFixture ( id: 1 , primitive: " " , singleNode: SingleNodeFixture ( id: 1 ) , optional: OptionalNodeFixture ( id: 1 ) , listNodes: [ ] , enumWrapper: . single( SingleNodeFixture ( id: 2 ) ) )
7477
75- withExtendedLifetime ( entityStore. store ( entity: root) ) {
78+ try withExtendedLifetime ( entityStore. store ( entity: root) ) {
7679 root. enumWrapper = nil
7780
7881 _ = entityStore. store ( entity: root)
7982 _ = entityStore. store ( entity: SingleNodeFixture ( id: 2 , primitive: " deleted " ) )
8083
81- XCTAssertNil ( entityStore. find ( RootFixture . self, id: 1 ) !. value. enumWrapper)
84+ let root = try XCTUnwrap ( entityStore. find ( RootFixture . self, id: 1 ) )
85+ XCTAssertNil ( root. value. enumWrapper)
8286 }
8387 }
8488
0 commit comments