From c18ca1c681aec04009f441a30767ec9f2d68ff9f Mon Sep 17 00:00:00 2001 From: Christian Treffs Date: Wed, 1 Aug 2018 18:05:24 +0200 Subject: [PATCH] Open entity --- Sources/FirebladeECS/Entity.swift | 4 +- Tests/FirebladeECSTests/SparseSetTests.swift | 57 ++++++++------------ 2 files changed, 23 insertions(+), 38 deletions(-) diff --git a/Sources/FirebladeECS/Entity.swift b/Sources/FirebladeECS/Entity.swift index 7603d11..c269940 100644 --- a/Sources/FirebladeECS/Entity.swift +++ b/Sources/FirebladeECS/Entity.swift @@ -5,12 +5,12 @@ // Created by Christian Treffs on 08.10.17. // -public final class Entity: UniqueEntityIdentifiable { +open class Entity: UniqueEntityIdentifiable { internal(set) public var identifier: EntityIdentifier = EntityIdentifier.invalid public var name: String? unowned let nexus: Nexus - init(nexus: Nexus, id: EntityIdentifier, name: String? = nil) { + internal init(nexus: Nexus, id: EntityIdentifier, name: String? = nil) { self.nexus = nexus self.identifier = id self.name = name diff --git a/Tests/FirebladeECSTests/SparseSetTests.swift b/Tests/FirebladeECSTests/SparseSetTests.swift index 44160d3..403e438 100644 --- a/Tests/FirebladeECSTests/SparseSetTests.swift +++ b/Tests/FirebladeECSTests/SparseSetTests.swift @@ -86,7 +86,7 @@ class SparseSetTests: XCTestCase { let pos = Position(x: idx, y: idx) set.insert(pos, at: idx) XCTAssertEqual(set.sparse[idx], idx) - XCTAssertEqual(set.dense.count, idx+1) + XCTAssertEqual(set.dense.count, idx + 1) } XCTAssertEqual(set.count, num) @@ -120,14 +120,12 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.sparse[6], 6) XCTAssertEqual(set.sparse[7], nil) - // --------------------------------------------- set.remove(at: 3) - XCTAssertEqual(set.count, num-1) - XCTAssertEqual(set.sparse.count, num-1) - XCTAssertEqual(set.dense.count, num-1) - + XCTAssertEqual(set.count, num - 1) + XCTAssertEqual(set.sparse.count, num - 1) + XCTAssertEqual(set.dense.count, num - 1) XCTAssertEqual(set.get(at: 0)?.x, 0) XCTAssertEqual(set.get(at: 1)?.x, 1) @@ -156,15 +154,12 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.sparse[6], 3) XCTAssertEqual(set.sparse[7], nil) - - // --------------------------------------------- set.remove(at: 2) - XCTAssertEqual(set.count, num-2) - XCTAssertEqual(set.sparse.count, num-2) - XCTAssertEqual(set.dense.count, num-2) - + XCTAssertEqual(set.count, num - 2) + XCTAssertEqual(set.sparse.count, num - 2) + XCTAssertEqual(set.dense.count, num - 2) XCTAssertEqual(set.get(at: 0)?.x, 0) XCTAssertEqual(set.get(at: 1)?.x, 1) @@ -193,15 +188,12 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.sparse[6], 3) XCTAssertEqual(set.sparse[7], nil) - - // --------------------------------------------- set.remove(at: 0) - XCTAssertEqual(set.count, num-3) - XCTAssertEqual(set.sparse.count, num-3) - XCTAssertEqual(set.dense.count, num-3) - + XCTAssertEqual(set.count, num - 3) + XCTAssertEqual(set.sparse.count, num - 3) + XCTAssertEqual(set.dense.count, num - 3) XCTAssertEqual(set.get(at: 0)?.x, nil) XCTAssertEqual(set.get(at: 1)?.x, 1) @@ -230,14 +222,12 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.sparse[6], 3) XCTAssertEqual(set.sparse[7], nil) - - // --------------------------------------------- set.remove(at: 1) - XCTAssertEqual(set.count, num-4) - XCTAssertEqual(set.sparse.count, num-4) - XCTAssertEqual(set.dense.count, num-4) + XCTAssertEqual(set.count, num - 4) + XCTAssertEqual(set.sparse.count, num - 4) + XCTAssertEqual(set.dense.count, num - 4) XCTAssertEqual(set.get(at: 0)?.x, nil) XCTAssertEqual(set.get(at: 1)?.x, nil) @@ -269,9 +259,9 @@ class SparseSetTests: XCTestCase { // --------------------------------------------- set.remove(at: 6) - XCTAssertEqual(set.count, num-5) - XCTAssertEqual(set.sparse.count, num-5) - XCTAssertEqual(set.dense.count, num-5) + XCTAssertEqual(set.count, num - 5) + XCTAssertEqual(set.sparse.count, num - 5) + XCTAssertEqual(set.dense.count, num - 5) XCTAssertEqual(set.get(at: 0)?.x, nil) XCTAssertEqual(set.get(at: 1)?.x, nil) @@ -303,9 +293,9 @@ class SparseSetTests: XCTestCase { // --------------------------------------------- set.remove(at: 5) - XCTAssertEqual(set.count, num-6) - XCTAssertEqual(set.sparse.count, num-6) - XCTAssertEqual(set.dense.count, num-6) + XCTAssertEqual(set.count, num - 6) + XCTAssertEqual(set.sparse.count, num - 6) + XCTAssertEqual(set.dense.count, num - 6) XCTAssertEqual(set.get(at: 0)?.x, nil) XCTAssertEqual(set.get(at: 1)?.x, nil) @@ -395,7 +385,6 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.get(at: 99)?.x, 99) XCTAssertEqual(set.get(at: 3)?.x, 3) - } func testSparseSetRemoveNonPresent() { @@ -429,14 +418,12 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(set.sparse.count, 1) XCTAssertEqual(set.dense.count, 1) - XCTAssertNil(set.remove(at: 1)) XCTAssertEqual(set.count, 1) XCTAssertEqual(set.sparse.count, 1) XCTAssertEqual(set.dense.count, 1) - XCTAssertTrue(set.get(at: 0) === a) XCTAssertEqual(set.count, 1) @@ -445,7 +432,6 @@ class SparseSetTests: XCTestCase { func testSparseSetNonCongiuousData() { - var indices: Set = [0, 30, 1, 21, 78, 56, 99, 3] for idx in indices { @@ -499,7 +485,6 @@ class SparseSetTests: XCTestCase { func testSparseSetReduce() { let characters = UnorderedSparseSet() - characters.insert("H", at: 4) characters.insert("e", at: 13) characters.insert("l", at: 44) @@ -515,8 +500,8 @@ class SparseSetTests: XCTestCase { XCTAssertEqual(characters.count, 11) - let string: String = characters.reduce("") { (res, char) in - return res + "\(char)" + let string: String = characters.reduce("") { res, char in + res + "\(char)" } // NOTE: this tests only dense insertion order, this is no guarantee for the real ordering.