Test Fixes (#344)

* building guid fixes for zone tests; spawn pad control allocates messaging targets more carefully; additional check for building registration in ZoneActor

* the nature of the amenity/zone interaction changed
This commit is contained in:
Fate-JH 2020-02-14 21:11:40 -05:00 committed by GitHub
parent 53ecee566a
commit 610f0b092f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 77 additions and 71 deletions

View file

@ -143,7 +143,7 @@ class UtilityTerminalATest extends ActorTest {
assert(obj().Actor == ActorRef.noSender)
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
}
}
@ -157,7 +157,7 @@ class UtilityTerminalBTest extends ActorTest {
assert(obj().Actor == ActorRef.noSender)
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
}
}
@ -171,7 +171,7 @@ class UtilityTerminalCTest extends ActorTest {
assert(obj().Actor == ActorRef.noSender)
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
}
}
@ -185,7 +185,7 @@ class UtilityRespawnTubeTest extends ActorTest {
assert(obj().Actor == ActorRef.noSender)
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
}
}
@ -199,7 +199,7 @@ class UtilityTelepadTerminalTest extends ActorTest {
assert(obj().Actor == ActorRef.noSender)
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
}
}
@ -216,7 +216,7 @@ class UtilityInternalTelepadTest extends ActorTest {
assert(obj().asInstanceOf[Utility.InternalTelepad].Router.contains(veh.GUID))
system.actorOf(Props(classOf[UtilityTest.SetupControl], obj), "test") ! ""
receiveOne(Duration.create(100, "ms")) //consume and discard
receiveOne(Duration.create(500, "ms")) //consume and discard
assert(obj().Actor != ActorRef.noSender)
assert(obj().asInstanceOf[Utility.InternalTelepad].Router.contains(veh.GUID))
}

View file

@ -111,7 +111,7 @@ class ZoneTest extends Specification {
val obj = new TestObject()
guid1.register(obj, "pool2").isSuccess mustEqual true
guid1.WhichPool(obj) mustEqual Some("pool2")
guid1.WhichPool(obj).contains("pool2") mustEqual true
zone.GUID(new NumberPoolHub(new LimitedNumberSource(150))) mustEqual false
}
@ -172,29 +172,29 @@ class ZoneActorTest extends ActorTest {
"set up spawn groups based on buildings" in {
val map6 = new ZoneMap("map6") {
LocalBuilding("Building", building_guid = 1, map_id = 1, FoundationBuilder(Building.Structure(StructureType.Building, Vector3(1,1,1))))
LocalObject(1, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
LocalObject(2, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
LocalObject(3, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
ObjectToBuilding(1, 1)
LocalObject(2, SpawnTube.Constructor(Vector3(1,0,0), Vector3.Zero))
LocalObject(3, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
LocalObject(4, SpawnTube.Constructor(Vector3(1,0,0), Vector3.Zero))
ObjectToBuilding(2, 1)
ObjectToBuilding(3, 1)
ObjectToBuilding(4, 1)
LocalBuilding("Building", building_guid = 2, map_id = 2, FoundationBuilder(Building.Structure(StructureType.Building)))
LocalObject(7, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
ObjectToBuilding(7, 2)
LocalBuilding("Building", building_guid = 5, map_id = 2, FoundationBuilder(Building.Structure(StructureType.Building)))
LocalObject(6, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
ObjectToBuilding(6, 5)
LocalBuilding("Building", building_guid = 3, map_id = 3, FoundationBuilder(Building.Structure(StructureType.Building, Vector3(1,1,1))))
LocalObject(4, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
LocalObject(5, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
LocalObject(6, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
ObjectToBuilding(4, 3)
ObjectToBuilding(5, 3)
ObjectToBuilding(6, 3)
LocalBuilding("Building", building_guid = 7, map_id = 3, FoundationBuilder(Building.Structure(StructureType.Building, Vector3(1,1,1))))
LocalObject(8, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
LocalObject(9, SpawnTube.Constructor(Vector3(1,0,0), Vector3.Zero))
LocalObject(10, Terminal.Constructor(Vector3.Zero, GlobalDefinitions.dropship_vehicle_terminal))
ObjectToBuilding(8, 7)
ObjectToBuilding(9, 7)
ObjectToBuilding(10, 7)
}
val zone = new Zone("test", map6, 1) { override def SetupNumberPools() = { } }
zone.Actor = system.actorOf(Props(classOf[ZoneActor], zone), "test-init")
zone.Actor ! Zone.Init()
expectNoMsg(Duration.create(300, "ms"))
expectNoMsg(Duration.create(1, "seconds"))
val groups = zone.SpawnGroups()
assert(groups.size == 2)
@ -203,15 +203,15 @@ class ZoneActorTest extends ActorTest {
val building1 = zone.SpawnGroups(building)
assert(tubes.length == 2)
assert(tubes.head == building1.head)
assert(tubes.head.GUID == PlanetSideGUID(1))
assert(tubes.head.GUID == PlanetSideGUID(2))
assert(tubes(1) == building1(1))
assert(tubes(1).GUID == PlanetSideGUID(3))
assert(tubes(1).GUID == PlanetSideGUID(4))
}
else if(building.MapId == 3) {
val building2 = zone.SpawnGroups(building)
assert(tubes.length == 1)
assert(tubes.head == building2.head)
assert(tubes.head.GUID == PlanetSideGUID(5))
assert(tubes.head.GUID == PlanetSideGUID(9))
}
else {
assert(false)
@ -222,17 +222,17 @@ class ZoneActorTest extends ActorTest {
"select spawn points based on the position of the player in reference to buildings" in {
val map6 = new ZoneMap("map6") {
LocalBuilding("Building", building_guid = 1, map_id = 1, FoundationBuilder(Building.Structure(StructureType.Building, Vector3(1,1,1))))
LocalObject(1, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
ObjectToBuilding(1, 1)
LocalObject(2, SpawnTube.Constructor(Vector3(1,0,0), Vector3.Zero))
ObjectToBuilding(2, 1)
LocalBuilding("Building", building_guid = 3, map_id = 3, FoundationBuilder(Building.Structure(StructureType.Building, Vector3(4,4,4))))
LocalObject(5, SpawnTube.Constructor(Vector3.Zero, Vector3.Zero))
ObjectToBuilding(5, 3)
LocalObject(4, SpawnTube.Constructor(Vector3(1,0,0), Vector3.Zero))
ObjectToBuilding(4, 3)
}
val zone = new Zone("test", map6, 1) { override def SetupNumberPools() = { } }
zone.Actor = system.actorOf(Props(classOf[ZoneActor], zone), "test-spawn")
zone.Actor ! Zone.Init()
expectNoMsg(Duration.create(300, "ms"))
expectNoMsg(Duration.create(1, "seconds"))
val player = Player(Avatar("Chord", PlanetSideEmpire.NEUTRAL, CharacterGender.Male, 0, CharacterVoice.Voice5))
val bldg1 = zone.Building(1).get
@ -371,7 +371,7 @@ class ZonePopulationTest extends ActorTest {
assert(zone.LivePlayers.size == 1)
assert(zone.LivePlayers.head == player)
zone.Population ! Zone.Population.Leave(avatar)
val reply = receiveOne(Duration.create(100, "ms"))
val reply = receiveOne(Duration.create(500, "ms"))
assert(zone.Players.isEmpty)
assert(zone.LivePlayers.isEmpty)
assert(reply.isInstanceOf[Zone.Population.PlayerHasLeft])