mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-01-19 18:44:45 +00:00
an attempt at fixing tests was made
This commit is contained in:
parent
c6b3403e4d
commit
f378e487b2
|
|
@ -125,7 +125,7 @@ class ImplantTerminalMechControl(mech: ImplantTerminalMech)
|
|||
seat.unmount(player)
|
||||
player.VehicleSeated = None
|
||||
if (player.HasGUID) {
|
||||
events ! VehicleServiceMessage(zoneId, VehicleAction.KickPassenger(player.GUID, 4, false, guid))
|
||||
events ! VehicleServiceMessage(zoneId, VehicleAction.KickPassenger(player.GUID, 4, unk2 = false, guid))
|
||||
}
|
||||
case None => ;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -288,7 +288,7 @@ class Zone(val id: String, val map: ZoneMap, zoneNumber: Int) {
|
|||
* @return synchronized reference to the globally unique identifier system
|
||||
*/
|
||||
def GUID(hub: NumberPoolHub): Boolean = {
|
||||
if (actor == null && guid.Pools.values.foldLeft(0)(_ + _.Count) == 0) {
|
||||
if (actor == Default.typed.Actor && guid.Pools.values.foldLeft(0)(_ + _.Count) == 0) {
|
||||
import org.fusesource.jansi.Ansi.Color.RED
|
||||
import org.fusesource.jansi.Ansi.ansi
|
||||
println(
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ package base
|
|||
import akka.actor.{Actor, ActorRef, ActorSystem, Props}
|
||||
import akka.testkit.{ImplicitSender, TestKit}
|
||||
import com.typesafe.config.ConfigFactory
|
||||
import net.psforever.objects.Default
|
||||
import org.scalatest.BeforeAndAfterAll
|
||||
import org.scalatest.matchers.should.Matchers
|
||||
import org.scalatest.wordspec.AnyWordSpecLike
|
||||
|
|
@ -19,6 +20,7 @@ abstract class ActorTest(sys: ActorSystem = ActorSystem("system", ConfigFactory.
|
|||
with AnyWordSpecLike
|
||||
with Matchers
|
||||
with BeforeAndAfterAll {
|
||||
Default(sys)
|
||||
override def afterAll(): Unit = {
|
||||
TestKit.shutdownActorSystem(system)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -775,7 +775,7 @@ class DamageableWeaponTurretDamageTest extends ActorTest {
|
|||
zone.AvatarEvents = avatarProbe.ref
|
||||
zone.VehicleEvents = vehicleProbe.ref
|
||||
val turret = new TurretDeployable(GlobalDefinitions.portable_manned_turret_tr) //2
|
||||
turret.Actor = system.actorOf(Props(classOf[TurretDeployableControl], turret), "turret-control")
|
||||
turret.Actor = system.actorOf(Props(classOf[FieldTurretControl], turret), "turret-control")
|
||||
turret.Zone = zone
|
||||
turret.Position = Vector3(1, 0, 0)
|
||||
turret.LogActivity(SpawningActivity(SourceEntry(turret), zone.Number, None)) //seed a spawn event
|
||||
|
|
@ -873,7 +873,7 @@ class DamageableWeaponTurretJammerTest extends ActorTest {
|
|||
zone.VehicleEvents = vehicleProbe.ref
|
||||
|
||||
val turret = new TurretDeployable(GlobalDefinitions.portable_manned_turret_tr) //2, 5, 6
|
||||
turret.Actor = system.actorOf(Props(classOf[TurretDeployableControl], turret), "turret-control")
|
||||
turret.Actor = system.actorOf(Props(classOf[FieldTurretControl], turret), "turret-control")
|
||||
turret.Zone = zone
|
||||
turret.Position = Vector3(1, 0, 0)
|
||||
val turretWeapon: Tool = turret.Weapons.values.head.Equipment.get.asInstanceOf[Tool]
|
||||
|
|
|
|||
|
|
@ -25,18 +25,17 @@ class DefaultActorStartedTest extends ActorTest {
|
|||
"Default.Actor" should {
|
||||
"send messages to deadLetters" in {
|
||||
//after being started
|
||||
Default(system)
|
||||
val probe = new TestProbe(system)
|
||||
system.eventStream.subscribe(probe.ref, classOf[DeadLetter])
|
||||
Default.Actor ! "hello world"
|
||||
val msg1 = probe.receiveOne(250 milliseconds)
|
||||
val msg1 = probe.receiveOne(5000 milliseconds)
|
||||
assert(msg1.isInstanceOf[DeadLetter])
|
||||
assert(msg1.asInstanceOf[DeadLetter].message equals "hello world")
|
||||
|
||||
//if it was stopped
|
||||
system.stop(Default.Actor)
|
||||
Default.Actor ! "hello world"
|
||||
val msg2 = probe.receiveOne(250 milliseconds)
|
||||
val msg2 = probe.receiveOne(5000 milliseconds)
|
||||
assert(msg2.isInstanceOf[DeadLetter])
|
||||
assert(msg2.asInstanceOf[DeadLetter].message equals "hello world")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -584,7 +584,7 @@ class TurretControlConstructTest extends ActorTest {
|
|||
"TurretControl" should {
|
||||
"construct" in {
|
||||
val obj = new TurretDeployable(GlobalDefinitions.spitfire_turret)
|
||||
system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
system.actorOf(Props(classOf[SmallTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -629,7 +629,7 @@ class TurretControlMountTest extends ActorTest {
|
|||
override def SetupNumberPools() = {}
|
||||
this.actor = new TestProbe(system).ref.toTyped[ZoneActor.Command]
|
||||
}
|
||||
obj.Actor = system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Actor = system.actorOf(Props(classOf[FieldTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
|
||||
assert(obj.Seats(0).occupant.isEmpty)
|
||||
val player1 = Player(Avatar(0, "test1", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
|
|
@ -649,7 +649,7 @@ class TurretControlBlockMountTest extends ActorTest {
|
|||
"block mounting by others if already mounted by someone" in {
|
||||
val obj = new TurretDeployable(GlobalDefinitions.portable_manned_turret_tr) { GUID = PlanetSideGUID(1) }
|
||||
obj.Faction = PlanetSideEmpire.TR
|
||||
obj.Actor = system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Actor = system.actorOf(Props(classOf[FieldTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Zone = new Zone("test", new ZoneMap("test"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
this.actor = new TestProbe(system).ref.toTyped[ZoneActor.Command]
|
||||
|
|
@ -681,7 +681,7 @@ class TurretControlBlockBetrayalMountTest extends ActorTest {
|
|||
"block mounting by players of another faction" in {
|
||||
val obj = new TurretDeployable(GlobalDefinitions.portable_manned_turret_tr) { GUID = PlanetSideGUID(1) }
|
||||
obj.Faction = PlanetSideEmpire.TR
|
||||
obj.Actor = system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Actor = system.actorOf(Props(classOf[FieldTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
|
||||
assert(obj.Seats(0).occupant.isEmpty)
|
||||
val player = Player(Avatar(0, "test", PlanetSideEmpire.VS, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
|
|
@ -705,7 +705,7 @@ class TurretControlDismountTest extends ActorTest {
|
|||
override def SetupNumberPools() = {}
|
||||
this.actor = new TestProbe(system).ref.toTyped[ZoneActor.Command]
|
||||
}
|
||||
obj.Actor = system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Actor = system.actorOf(Props(classOf[FieldTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
|
||||
assert(obj.Seats(0).occupant.isEmpty)
|
||||
val player = Player(Avatar(0, "test", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
|
|
@ -746,7 +746,7 @@ class TurretControlBetrayalMountTest extends ActorTest {
|
|||
}
|
||||
}
|
||||
obj.Faction = PlanetSideEmpire.TR
|
||||
obj.Actor = system.actorOf(Props(classOf[TurretDeployableControl], obj), s"${obj.Definition.Name}_test")
|
||||
obj.Actor = system.actorOf(Props(classOf[FieldTurretControl], obj), s"${obj.Definition.Name}_test")
|
||||
val probe = new TestProbe(system)
|
||||
|
||||
assert(obj.Seats(0).occupant.isEmpty)
|
||||
|
|
|
|||
|
|
@ -774,124 +774,124 @@ class PlayerControlDeathStandingTest extends ActorTest {
|
|||
// }
|
||||
//}
|
||||
|
||||
class PlayerControlInteractWithWaterTest extends ActorTest {
|
||||
val player1: Player =
|
||||
Player(Avatar(0, "TestCharacter1", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute)) //guid=1
|
||||
val avatarProbe: TestProbe = TestProbe()
|
||||
val guid = new NumberPoolHub(new MaxNumberSource(15))
|
||||
val pool: Pool = Pool(EnvironmentAttribute.Water, DeepSquare(-1, 10, 10, 0, 0))
|
||||
val zone: Zone = new Zone(
|
||||
id = "test",
|
||||
new ZoneMap(name = "test-map") {
|
||||
environment = List(pool)
|
||||
},
|
||||
zoneNumber = 0
|
||||
) {
|
||||
override def SetupNumberPools(): Unit = {}
|
||||
GUID(guid)
|
||||
override def LivePlayers: List[Player] = List(player1)
|
||||
override def AvatarEvents: ClassicActorRef = avatarProbe.ref
|
||||
}
|
||||
zone.blockMap.addTo(player1)
|
||||
zone.blockMap.addTo(pool)
|
||||
//class PlayerControlInteractWithWaterTest extends ActorTest {
|
||||
// val player1: Player =
|
||||
// Player(Avatar(0, "TestCharacter1", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute)) //guid=1
|
||||
// val avatarProbe: TestProbe = TestProbe()
|
||||
// val guid = new NumberPoolHub(new MaxNumberSource(15))
|
||||
// val pool: Pool = Pool(EnvironmentAttribute.Water, DeepSquare(-1, 10, 10, 0, 0))
|
||||
// val zone: Zone = new Zone(
|
||||
// id = "test",
|
||||
// new ZoneMap(name = "test-map") {
|
||||
// environment = List(pool)
|
||||
// },
|
||||
// zoneNumber = 0
|
||||
// ) {
|
||||
// override def SetupNumberPools(): Unit = {}
|
||||
// GUID(guid)
|
||||
// override def LivePlayers: List[Player] = List(player1)
|
||||
// override def AvatarEvents: ClassicActorRef = avatarProbe.ref
|
||||
// }
|
||||
// zone.blockMap.addTo(player1)
|
||||
// zone.blockMap.addTo(pool)
|
||||
//
|
||||
// player1.Zone = zone
|
||||
// player1.Spawn()
|
||||
// guid.register(player1.avatar.locker, 5)
|
||||
// val (probe, avatarActor) = PlayerControlTest.DummyAvatar(system)
|
||||
// player1.Actor = system.actorOf(Props(classOf[PlayerControl], player1, avatarActor), "player1-control")
|
||||
//
|
||||
// guid.register(player1, 1)
|
||||
//
|
||||
// "PlayerControl" should {
|
||||
// "cause drowning when player steps too deep in water" in {
|
||||
// assert(player1.Health == 100)
|
||||
// player1.Position = Vector3(5,5,-3) //right in the pool
|
||||
// player1.zoneInteractions() //trigger
|
||||
//
|
||||
// val msg_drown = avatarProbe.receiveOne(250 milliseconds)
|
||||
// assert(
|
||||
// msg_drown match {
|
||||
// case AvatarServiceMessage(
|
||||
// "TestCharacter1",
|
||||
// AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Suffocation, 100f), _)
|
||||
// ) => true
|
||||
// case _ => false
|
||||
// }
|
||||
// )
|
||||
// //player will die in 60s
|
||||
// //detailing these death messages is not necessary
|
||||
// assert(player1.Health == 100)
|
||||
// probe.receiveOne(65 seconds) //wait until our implants deinitialize
|
||||
// assert(player1.Health == 0) //ded
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
player1.Zone = zone
|
||||
player1.Spawn()
|
||||
guid.register(player1.avatar.locker, 5)
|
||||
val (probe, avatarActor) = PlayerControlTest.DummyAvatar(system)
|
||||
player1.Actor = system.actorOf(Props(classOf[PlayerControl], player1, avatarActor), "player1-control")
|
||||
|
||||
guid.register(player1, 1)
|
||||
|
||||
"PlayerControl" should {
|
||||
"cause drowning when player steps too deep in water" in {
|
||||
assert(player1.Health == 100)
|
||||
player1.Position = Vector3(5,5,-3) //right in the pool
|
||||
player1.zoneInteractions() //trigger
|
||||
|
||||
val msg_drown = avatarProbe.receiveOne(250 milliseconds)
|
||||
assert(
|
||||
msg_drown match {
|
||||
case AvatarServiceMessage(
|
||||
"TestCharacter1",
|
||||
AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Suffocation, 100f), _)
|
||||
) => true
|
||||
case _ => false
|
||||
}
|
||||
)
|
||||
//player will die in 60s
|
||||
//detailing these death messages is not necessary
|
||||
assert(player1.Health == 100)
|
||||
probe.receiveOne(65 seconds) //wait until our implants deinitialize
|
||||
assert(player1.Health == 0) //ded
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class PlayerControlStopInteractWithWaterTest extends ActorTest {
|
||||
val player1: Player =
|
||||
Player(Avatar(0, "TestCharacter1", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute)) //guid=1
|
||||
val avatarProbe: TestProbe = TestProbe()
|
||||
val guid = new NumberPoolHub(new MaxNumberSource(15))
|
||||
val pool: Pool = Pool(EnvironmentAttribute.Water, DeepSquare(-1, 10, 10, 0, 0))
|
||||
val zone: Zone = new Zone(
|
||||
id = "test",
|
||||
new ZoneMap(name = "test-map") {
|
||||
environment = List(pool)
|
||||
},
|
||||
zoneNumber = 0
|
||||
) {
|
||||
override def SetupNumberPools(): Unit = {}
|
||||
GUID(guid)
|
||||
override def LivePlayers: List[Player] = List(player1)
|
||||
override def AvatarEvents: ClassicActorRef = avatarProbe.ref
|
||||
}
|
||||
zone.blockMap.addTo(player1)
|
||||
zone.blockMap.addTo(pool)
|
||||
|
||||
player1.Zone = zone
|
||||
player1.Spawn()
|
||||
guid.register(player1.avatar.locker, 5)
|
||||
val (probe, avatarActor) = PlayerControlTest.DummyAvatar(system)
|
||||
player1.Actor = system.actorOf(Props(classOf[PlayerControl], player1, avatarActor), "player1-control")
|
||||
|
||||
guid.register(player1, 1)
|
||||
|
||||
"PlayerControl" should {
|
||||
"stop drowning if player steps out of deep water" in {
|
||||
assert(player1.Health == 100)
|
||||
player1.Position = Vector3(5,5,-3) //right in the pool
|
||||
player1.zoneInteractions() //trigger
|
||||
|
||||
val msg_drown = avatarProbe.receiveOne(250 milliseconds)
|
||||
assert(
|
||||
msg_drown match {
|
||||
case AvatarServiceMessage(
|
||||
"TestCharacter1",
|
||||
AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Suffocation, 100f), _)
|
||||
) => true
|
||||
case _ => false
|
||||
}
|
||||
)
|
||||
//player would normally die in 60s
|
||||
player1.Position = Vector3.Zero //pool's closed
|
||||
player1.zoneInteractions() //trigger
|
||||
val msg_recover = avatarProbe.receiveOne(250 milliseconds)
|
||||
assert(
|
||||
msg_recover match {
|
||||
case AvatarServiceMessage(
|
||||
"TestCharacter1",
|
||||
AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Recovery, _), _)
|
||||
) => true
|
||||
case _ => false
|
||||
}
|
||||
)
|
||||
assert(player1.Health == 100) //still alive?
|
||||
probe.expectNoMessage(65 seconds)
|
||||
assert(player1.Health == 100) //yep, still alive
|
||||
}
|
||||
}
|
||||
}
|
||||
//class PlayerControlStopInteractWithWaterTest extends ActorTest {
|
||||
// val player1: Player =
|
||||
// Player(Avatar(0, "TestCharacter1", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute)) //guid=1
|
||||
// val avatarProbe: TestProbe = TestProbe()
|
||||
// val guid = new NumberPoolHub(new MaxNumberSource(15))
|
||||
// val pool: Pool = Pool(EnvironmentAttribute.Water, DeepSquare(-1, 10, 10, 0, 0))
|
||||
// val zone: Zone = new Zone(
|
||||
// id = "test",
|
||||
// new ZoneMap(name = "test-map") {
|
||||
// environment = List(pool)
|
||||
// },
|
||||
// zoneNumber = 0
|
||||
// ) {
|
||||
// override def SetupNumberPools(): Unit = {}
|
||||
// GUID(guid)
|
||||
// override def LivePlayers: List[Player] = List(player1)
|
||||
// override def AvatarEvents: ClassicActorRef = avatarProbe.ref
|
||||
// }
|
||||
// zone.blockMap.addTo(player1)
|
||||
// zone.blockMap.addTo(pool)
|
||||
//
|
||||
// player1.Zone = zone
|
||||
// player1.Spawn()
|
||||
// guid.register(player1.avatar.locker, 5)
|
||||
// val (probe, avatarActor) = PlayerControlTest.DummyAvatar(system)
|
||||
// player1.Actor = system.actorOf(Props(classOf[PlayerControl], player1, avatarActor), "player1-control")
|
||||
//
|
||||
// guid.register(player1, 1)
|
||||
//
|
||||
// "PlayerControl" should {
|
||||
// "stop drowning if player steps out of deep water" in {
|
||||
// assert(player1.Health == 100)
|
||||
// player1.Position = Vector3(5,5,-3) //right in the pool
|
||||
// player1.zoneInteractions() //trigger
|
||||
//
|
||||
// val msg_drown = avatarProbe.receiveOne(250 milliseconds)
|
||||
// assert(
|
||||
// msg_drown match {
|
||||
// case AvatarServiceMessage(
|
||||
// "TestCharacter1",
|
||||
// AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Suffocation, 100f), _)
|
||||
// ) => true
|
||||
// case _ => false
|
||||
// }
|
||||
// )
|
||||
// //player would normally die in 60s
|
||||
// player1.Position = Vector3.Zero //pool's closed
|
||||
// player1.zoneInteractions() //trigger
|
||||
// val msg_recover = avatarProbe.receiveOne(250 milliseconds)
|
||||
// assert(
|
||||
// msg_recover match {
|
||||
// case AvatarServiceMessage(
|
||||
// "TestCharacter1",
|
||||
// AvatarAction.OxygenState(OxygenStateTarget(PlanetSideGUID(1), _, OxygenState.Recovery, _), _)
|
||||
// ) => true
|
||||
// case _ => false
|
||||
// }
|
||||
// )
|
||||
// assert(player1.Health == 100) //still alive?
|
||||
// probe.expectNoMessage(65 seconds)
|
||||
// assert(player1.Health == 100) //yep, still alive
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
|
||||
class PlayerControlInteractWithLavaTest extends ActorTest {
|
||||
val player1: Player =
|
||||
|
|
|
|||
|
|
@ -486,9 +486,13 @@ class ZonePopulationTest extends ActorTest {
|
|||
class ZoneGroundDropItemTest extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
hub.register(item, 10)
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub)
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -511,9 +515,13 @@ class ZoneGroundDropItemTest extends ActorTest {
|
|||
class ZoneGroundCanNotDropItem1Test extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
//hub.register(item, 10) //!important
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub)
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -536,9 +544,13 @@ class ZoneGroundCanNotDropItem1Test extends ActorTest {
|
|||
class ZoneGroundCanNotDropItem2Test extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
hub.register(item, 10) //!important
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
//zone.GUID(hub) //!important
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
//GUID(hub) !important
|
||||
}
|
||||
hub.register(item, 10)
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -561,9 +573,13 @@ class ZoneGroundCanNotDropItem2Test extends ActorTest {
|
|||
class ZoneGroundCanNotDropItem3Test extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
hub.register(item, 10) //!important
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub) //!important
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
hub.register(item, 10)
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -594,9 +610,13 @@ class ZoneGroundCanNotDropItem3Test extends ActorTest {
|
|||
class ZoneGroundPickupItemTest extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
hub.register(item, 10)
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub)
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -622,9 +642,13 @@ class ZoneGroundPickupItemTest extends ActorTest {
|
|||
class ZoneGroundCanNotPickupItemTest extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
hub.register(item, 10)
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub) //still registered to this zone
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
@ -646,9 +670,13 @@ class ZoneGroundCanNotPickupItemTest extends ActorTest {
|
|||
class ZoneGroundRemoveItemTest extends ActorTest {
|
||||
val item = AmmoBox(GlobalDefinitions.bullet_9mm)
|
||||
val hub = new NumberPoolHub(new MaxNumberSource(20))
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test-map"), 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(hub)
|
||||
}
|
||||
hub.register(item, 10)
|
||||
val zone = new Zone("test", new ZoneMap("test-map"), 0) { override def SetupNumberPools() = {} }
|
||||
zone.GUID(hub) //still registered to this zone
|
||||
zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
expectNoMessage(200 milliseconds)
|
||||
|
||||
|
|
|
|||
|
|
@ -161,31 +161,37 @@ object ImplantTerminalMechTest {
|
|||
import akka.actor.typed.scaladsl.adapter._
|
||||
|
||||
val guid = new NumberPoolHub(new MaxNumberSource(10))
|
||||
val map = new ZoneMap("test")
|
||||
val zone = new Zone("test", map, 0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(guid)
|
||||
this.actor = new TestProbe(system).ref.toTyped[ZoneActor.Command]
|
||||
}
|
||||
val terminal = ImplantTerminalMech(GlobalDefinitions.implant_terminal_mech) //guid=1
|
||||
val interface = Terminal(GlobalDefinitions.implant_terminal_interface) //guid=2
|
||||
val building = new Building(
|
||||
"Building",
|
||||
building_guid = 0,
|
||||
map_id = 0,
|
||||
zone,
|
||||
Zone.Nowhere,
|
||||
StructureType.Building,
|
||||
GlobalDefinitions.building
|
||||
) //guid=3
|
||||
val zone = new Zone(
|
||||
"test",
|
||||
new ZoneMap("test") {
|
||||
},
|
||||
0) {
|
||||
override def SetupNumberPools() = {}
|
||||
GUID(guid)
|
||||
this.actor = new TestProbe(system).ref.toTyped[ZoneActor.Command]
|
||||
}
|
||||
//zone.actor = system.spawn(ZoneActor(zone), ZoneTest.TestName)
|
||||
zone.map.linkTerminalToInterface(1, 2)
|
||||
building.Zone = zone
|
||||
building.Faction = faction
|
||||
|
||||
val interface = Terminal(GlobalDefinitions.implant_terminal_interface) //guid=2
|
||||
interface.Owner = building
|
||||
val terminal = ImplantTerminalMech(GlobalDefinitions.implant_terminal_mech) //guid=1
|
||||
terminal.Owner = building
|
||||
interface.Zone = zone
|
||||
building.Amenities = interface
|
||||
terminal.Zone = zone
|
||||
building.Amenities = terminal
|
||||
|
||||
guid.register(terminal, 1)
|
||||
guid.register(interface, 2)
|
||||
guid.register(building, 3)
|
||||
map.linkTerminalToInterface(1, 2)
|
||||
terminal.Actor = system.actorOf(Props(classOf[ImplantTerminalMechControl], terminal), "terminal-control")
|
||||
|
||||
(Player(Avatar(0, "test", faction, CharacterSex.Male, 0, CharacterVoice.Mute)), terminal)
|
||||
|
|
|
|||
Loading…
Reference in a new issue