mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-03-05 05:20:24 +00:00
38 lines
1.4 KiB
Scala
38 lines
1.4 KiB
Scala
// Copyright (c) 2017 PSForever
|
|
package game.objectcreate
|
|
|
|
import net.psforever.packet.PacketCoding
|
|
import net.psforever.packet.game.{ObjectCreateMessage, PlanetSideGUID}
|
|
import net.psforever.packet.game.objectcreate._
|
|
import org.specs2.mutable._
|
|
import scodec.bits._
|
|
|
|
class BoomerTriggerDataTest extends Specification {
|
|
val string_boomertrigger = hex"17 76000000 58084A8100E80C00000000" //reconstructed from an inventory entry
|
|
|
|
"BoomerTriggerData" should {
|
|
"decode (held)" in {
|
|
PacketCoding.DecodePacket(string_boomertrigger).require match {
|
|
case ObjectCreateMessage(len, cls, guid, parent, data) =>
|
|
len mustEqual 118
|
|
cls mustEqual ObjectClass.boomer_trigger
|
|
guid mustEqual PlanetSideGUID(3600)
|
|
parent.isDefined mustEqual true
|
|
parent.get.guid mustEqual PlanetSideGUID(4272)
|
|
parent.get.slot mustEqual 0
|
|
data.isDefined mustEqual true
|
|
data.get.isInstanceOf[BoomerTriggerData] mustEqual true
|
|
data.get.asInstanceOf[BoomerTriggerData].unk mustEqual 0
|
|
case _ =>
|
|
ko
|
|
}
|
|
}
|
|
|
|
"encode (held)" in {
|
|
val obj = BoomerTriggerData(0)
|
|
val msg = ObjectCreateMessage(ObjectClass.boomer_trigger, PlanetSideGUID(3600), ObjectCreateMessageParent(PlanetSideGUID(4272), 0), obj)
|
|
val pkt = PacketCoding.EncodePacket(msg).require.toByteVector
|
|
pkt mustEqual string_boomertrigger
|
|
}
|
|
}
|
|
}
|