add linter autocorrection for tests; auto update XCTestManifests to take fsm tests into account

This commit is contained in:
Igor Kravchenko 2020-09-30 17:04:58 +03:00
parent efa06d5a27
commit 8e7cc45282
2 changed files with 134 additions and 56 deletions

View File

@ -8,23 +8,23 @@ class ComponentInstanceProviderTests: XCTestCase {
let providedComponent = provider1.getComponent() as? MockComponent
XCTAssertTrue(providedComponent === instance)
}
func testProvidersWithSameInstanceHaveSameIdentifier() {
let instance = MockComponent(value: .max)
let provider1 = ComponentInstanceProvider(instance: instance)
let provider2 = ComponentInstanceProvider(instance: instance)
XCTAssertEqual(provider1.identifier, provider2.identifier)
}
func testProvidersWithDifferentInstanceHaveDifferentIdentifier() {
let provider1 = ComponentInstanceProvider(instance: MockComponent(value: .max))
let provider2 = ComponentInstanceProvider(instance: MockComponent(value: .max))
XCTAssertNotEqual(provider1.identifier, provider2.identifier)
}
class MockComponent: Component {
var value: Int
init(value: Int) {
self.value = value
}
@ -37,29 +37,29 @@ class ComponentTypeProviderTests: XCTestCase {
let component = provider.getComponent() as? MockComponent
XCTAssertNotNil(component)
}
func testProviderReturnsNewInstanceEachTime() {
let provider = ComponentTypeProvider(type: MockComponent.self)
let component1 = provider.getComponent() as? MockComponent
let component2 = provider.getComponent() as? MockComponent
XCTAssertFalse(component1 === component2)
}
func testProvidersWithSameTypeHaveSameIdentifier() {
let provider1 = ComponentTypeProvider(type: MockComponent.self)
let provider2 = ComponentTypeProvider(type: MockComponent.self)
XCTAssertEqual(provider1.identifier, provider2.identifier)
}
func testProvidersWithDifferentTypeHaveDifferentIdentifier() {
let provider1 = ComponentTypeProvider(type: MockComponent.self)
let provider2 = ComponentTypeProvider(type: MockComponent2.self)
XCTAssertNotEqual(provider1.identifier, provider2.identifier)
}
class MockComponent: Component, EmptyInitializable {
var value: String
required init() {
self.value = ""
}
@ -67,7 +67,7 @@ class ComponentTypeProviderTests: XCTestCase {
class MockComponent2: Component, EmptyInitializable {
var value: Bool
required init() {
self.value = false
}
@ -86,32 +86,32 @@ class ComponentSingletonProviderTests: XCTestCase {
let component1 = provider.getComponent() as? MockComponent
let component2 = provider.getComponent() as? MockComponent
XCTAssertTrue(component1 === component2)
}
func testProvidersWithSameTypeHaveDifferentIdentifier() {
let provider1 = ComponentSingletonProvider(type: MockComponent.self)
let provider2 = ComponentSingletonProvider(type: MockComponent.self)
XCTAssertNotEqual(provider1.identifier, provider2.identifier)
}
func testProvidersWithDifferentTypeHaveDifferentIdentifier() {
let provider1 = ComponentSingletonProvider(type: MockComponent.self)
let provider2 = ComponentSingletonProvider(type: MockComponent2.self)
XCTAssertNotEqual(provider1.identifier, provider2.identifier)
}
class MockComponent: Component, EmptyInitializable {
var value: Int
required init() {
self.value = 0
}
}
class MockComponent2: Component, EmptyInitializable {
var value: String
required init() {
self.value = ""
}
@ -126,7 +126,7 @@ class DynamicComponentProviderTests: XCTestCase {
let component = provider.getComponent() as? MockComponent
XCTAssertTrue(component === instance)
}
func testProvidersWithSameMethodHaveSameIdentifier() {
let instance = MockComponent(value: 0)
let providerMethod = DynamicComponentProvider.Closure { instance }
@ -134,7 +134,7 @@ class DynamicComponentProviderTests: XCTestCase {
let provider2 = DynamicComponentProvider(closure: providerMethod)
XCTAssertEqual(provider1.identifier, provider2.identifier)
}
func testProvidersWithDifferentMethodsHaveDifferentIdentifier() {
let instance = MockComponent(value: 0)
let providerMethod1 = DynamicComponentProvider.Closure { instance }
@ -143,10 +143,10 @@ class DynamicComponentProviderTests: XCTestCase {
let provider2 = DynamicComponentProvider(closure: providerMethod2)
XCTAssertNotEqual(provider1.identifier, provider2.identifier)
}
class MockComponent: Component {
let value: Int
init(value: Int) {
self.value = value
}
@ -157,15 +157,15 @@ class DynamicComponentProviderTests: XCTestCase {
class EntityStateTests: XCTestCase {
private var state = EntityState()
override func setUp() {
state = EntityState()
}
override func tearDown() {
state = EntityState()
}
func testAddWithNoQualifierCreatesTypeProvider() {
state.add(MockComponent.self)
let provider = state.providers[MockComponent.identifier]
@ -173,7 +173,7 @@ class EntityStateTests: XCTestCase {
XCTAssertTrue(provider is ComponentTypeProvider?)
XCTAssertTrue(provider?.getComponent() is MockComponent?)
}
func testAddWithTypeQualifierCreatesTypeProvider() {
state.add(MockComponent.self).withType(MockComponent2.self)
let provider = state.providers[MockComponent.identifier]
@ -181,7 +181,7 @@ class EntityStateTests: XCTestCase {
XCTAssertTrue(provider is ComponentTypeProvider?)
XCTAssertTrue(provider?.getComponent() is MockComponent2?)
}
func testAddWithInstanceQualifierCreatesInstanceProvider() {
let component = MockComponent()
state.add(MockComponent.self).withInstance(component)
@ -189,38 +189,38 @@ class EntityStateTests: XCTestCase {
XCTAssertTrue(provider is ComponentInstanceProvider?)
XCTAssertTrue(provider?.getComponent() === component)
}
func testAddWithSingletonQualifierCreatesSingletonProvider() {
state.add(MockComponent.self).withSingleton(MockComponent.self)
let provider = state.providers[MockComponent.identifier]
XCTAssertTrue(provider is ComponentSingletonProvider?)
XCTAssertTrue(provider?.getComponent() is MockComponent?)
}
func testAddWithMethodQualifierCreatesDynamicProvider() {
let dynamickProvider = DynamicComponentProvider.Closure {
MockComponent()
}
state.add(MockComponent.self).withMethod(dynamickProvider)
let provider = state.providers[MockComponent.identifier]
XCTAssertNotNil(provider)
XCTAssertTrue(provider is DynamicComponentProvider?)
XCTAssertTrue(provider?.getComponent() is MockComponent)
}
class MockComponent: ComponentInitializable {
let value: Int
init(value: Int) {
self.value = value
}
required init() {
self.value = 0
}
}
class MockComponent2: MockComponent {}
}
@ -228,13 +228,13 @@ class EntityStateMachineTests: XCTestCase {
var nexus = Nexus()
var fsm = EntityStateMachine<String>(entity: .init(nexus: .init(), id: .invalid))
var entity = Entity(nexus: .init(), id: .init(rawValue: 1))
override func setUp() {
nexus = Nexus()
entity = nexus.createEntity()
fsm = EntityStateMachine(entity: entity)
}
func testEnterStateAddsStatesComponents() {
let state = EntityState()
let component = MockComponent()
@ -243,46 +243,46 @@ class EntityStateMachineTests: XCTestCase {
fsm.changeState(name: "test")
XCTAssertTrue(entity.get(component: MockComponent.self) === component)
}
func testEnterSecondStateAddsSecondStatesComponents() {
let state1 = EntityState()
let component1 = MockComponent()
state1.add(MockComponent.self).withInstance(component1)
fsm.addState(name: "test1", state: state1)
let state2 = EntityState()
let component2 = MockComponent2()
state2.add(MockComponent2.self).withInstance(component2)
fsm.addState(name: "test2", state: state2)
fsm.changeState(name: "test2")
XCTAssertTrue(entity.get(component: MockComponent2.self) === component2)
}
func testEnterSecondStateRemovesFirstStatesComponents() {
let state1 = EntityState()
let component1 = MockComponent()
state1.add(MockComponent.self).withInstance(component1)
fsm.addState(name: "test1", state: state1)
fsm.changeState(name: "test1")
let state2 = EntityState()
let component2 = MockComponent2()
state2.add(MockComponent2.self).withInstance(component2)
fsm.addState(name: "test2", state: state2)
fsm.changeState(name: "test2")
XCTAssertFalse(entity.has(MockComponent.self))
}
func testEnterSecondStateDoesNotRemoveOverlappingComponents() {
class EventDelegate: NexusEventDelegate {
init() {}
func nexusEvent(_ event: NexusEvent) {
XCTAssertFalse(event is ComponentRemoved, "Component was removed when it shouldn't have been.")
XCTAssertFalse(event is ComponentRemoved, "Component was removed when it shouldn't have been.")
}
func nexusNonFatalError(_ message: String) {}
}
let delgate = EventDelegate()
@ -292,24 +292,24 @@ class EntityStateMachineTests: XCTestCase {
state1.add(MockComponent.self).withInstance(component1)
fsm.addState(name: "test1", state: state1)
fsm.changeState(name: "test1")
let state2 = EntityState()
let component2 = MockComponent2()
state2.add(MockComponent.self).withInstance(component1)
state2.add(MockComponent2.self).withInstance(component2)
fsm.addState(name: "test2", state: state2)
fsm.changeState(name: "test2")
XCTAssertTrue(entity.get(component: MockComponent.self) === component1)
}
func testEnterSecondStateRemovesDifferentComponentsOfSameType() {
let state1 = EntityState()
let component1 = MockComponent()
state1.add(MockComponent.self).withInstance(component1)
fsm.addState(name: "test1", state: state1)
fsm.changeState(name: "test1")
let state2 = EntityState()
let component3 = MockComponent()
let component2 = MockComponent2()
@ -317,29 +317,29 @@ class EntityStateMachineTests: XCTestCase {
state2.add(MockComponent2.self).withInstance(component2)
fsm.addState(name: "test2", state: state2)
fsm.changeState(name: "test2")
XCTAssertTrue(entity.get(component: MockComponent.self) === component3)
}
class MockComponent: ComponentInitializable {
let value: Int
init(value: Int) {
self.value = value
}
required init() {
self.value = 0
}
}
class MockComponent2: ComponentInitializable {
let value: String
init(value: String) {
self.value = value
}
required init() {
self.value = ""
}

View File

@ -11,6 +11,29 @@ extension ComponentIdentifierTests {
]
}
extension ComponentInstanceProviderTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__ComponentInstanceProviderTests = [
("testProviderReturnsTheInstance", testProviderReturnsTheInstance),
("testProvidersWithDifferentInstanceHaveDifferentIdentifier", testProvidersWithDifferentInstanceHaveDifferentIdentifier),
("testProvidersWithSameInstanceHaveSameIdentifier", testProvidersWithSameInstanceHaveSameIdentifier)
]
}
extension ComponentSingletonProviderTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__ComponentSingletonProviderTests = [
("testProviderReturnsAnInstanceOfType", testProviderReturnsAnInstanceOfType),
("testProviderReturnsSameInstanceEachTime", testProviderReturnsSameInstanceEachTime),
("testProvidersWithDifferentTypeHaveDifferentIdentifier", testProvidersWithDifferentTypeHaveDifferentIdentifier),
("testProvidersWithSameTypeHaveDifferentIdentifier", testProvidersWithSameTypeHaveDifferentIdentifier)
]
}
extension ComponentTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
@ -20,6 +43,29 @@ extension ComponentTests {
]
}
extension ComponentTypeProviderTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__ComponentTypeProviderTests = [
("testProviderReturnsAnInstanceOfType", testProviderReturnsAnInstanceOfType),
("testProviderReturnsNewInstanceEachTime", testProviderReturnsNewInstanceEachTime),
("testProvidersWithDifferentTypeHaveDifferentIdentifier", testProvidersWithDifferentTypeHaveDifferentIdentifier),
("testProvidersWithSameTypeHaveSameIdentifier", testProvidersWithSameTypeHaveSameIdentifier)
]
}
extension DynamicComponentProviderTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__DynamicComponentProviderTests = [
("testProviderReturnsTheInstance", testProviderReturnsTheInstance),
("testProvidersWithDifferentMethodsHaveDifferentIdentifier", testProvidersWithDifferentMethodsHaveDifferentIdentifier),
("testProvidersWithSameMethodHaveSameIdentifier", testProvidersWithSameMethodHaveSameIdentifier)
]
}
extension EntityCreationTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
@ -45,6 +91,32 @@ extension EntityIdGenTests {
]
}
extension EntityStateMachineTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__EntityStateMachineTests = [
("testEnterSecondStateAddsSecondStatesComponents", testEnterSecondStateAddsSecondStatesComponents),
("testEnterSecondStateDoesNotRemoveOverlappingComponents", testEnterSecondStateDoesNotRemoveOverlappingComponents),
("testEnterSecondStateRemovesDifferentComponentsOfSameType", testEnterSecondStateRemovesDifferentComponentsOfSameType),
("testEnterSecondStateRemovesFirstStatesComponents", testEnterSecondStateRemovesFirstStatesComponents),
("testEnterStateAddsStatesComponents", testEnterStateAddsStatesComponents)
]
}
extension EntityStateTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
// to regenerate.
static let __allTests__EntityStateTests = [
("testAddWithInstanceQualifierCreatesInstanceProvider", testAddWithInstanceQualifierCreatesInstanceProvider),
("testAddWithMethodQualifierCreatesDynamicProvider", testAddWithMethodQualifierCreatesDynamicProvider),
("testAddWithNoQualifierCreatesTypeProvider", testAddWithNoQualifierCreatesTypeProvider),
("testAddWithSingletonQualifierCreatesSingletonProvider", testAddWithSingletonQualifierCreatesSingletonProvider),
("testAddWithTypeQualifierCreatesTypeProvider", testAddWithTypeQualifierCreatesTypeProvider)
]
}
extension EntityTests {
// DO NOT MODIFY: This is autogenerated, use:
// `swift test --generate-linuxmain`
@ -303,9 +375,15 @@ extension SystemsTests {
public func __allTests() -> [XCTestCaseEntry] {
return [
testCase(ComponentIdentifierTests.__allTests__ComponentIdentifierTests),
testCase(ComponentInstanceProviderTests.__allTests__ComponentInstanceProviderTests),
testCase(ComponentSingletonProviderTests.__allTests__ComponentSingletonProviderTests),
testCase(ComponentTests.__allTests__ComponentTests),
testCase(ComponentTypeProviderTests.__allTests__ComponentTypeProviderTests),
testCase(DynamicComponentProviderTests.__allTests__DynamicComponentProviderTests),
testCase(EntityCreationTests.__allTests__EntityCreationTests),
testCase(EntityIdGenTests.__allTests__EntityIdGenTests),
testCase(EntityStateMachineTests.__allTests__EntityStateMachineTests),
testCase(EntityStateTests.__allTests__EntityStateTests),
testCase(EntityTests.__allTests__EntityTests),
testCase(Family1Tests.__allTests__Family1Tests),
testCase(Family2Tests.__allTests__Family2Tests),