Beispiel #1
0
 public static ClientMessage RandomClientMessage()
 {
     return(new ClientMessage(
                new ClientMessageID(Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid(), random.Next(3), random.Next(100)),
                EntityChangeSetTests.RandomByteArray(true)
                ));
 }
Beispiel #2
0
        public void SerializeTest()
        {
            DB.Serializer serializer = new DB.Serializer();
            var           ctx        = EntityChangeSetTests.RandomContext();

            for (int i = 0; i < 100; i++)
            {
                RCS       rcs     = RandomOutboundRCS(ctx);
                SerialRCS srcs    = new SerialRCS(new RCS.GenID(Int3.Zero, Int3.One, 0), rcs);
                string    json    = serializer.Serialize(srcs);
                SerialRCS backRCS = serializer.Deserialize <SerialRCS>(json);
                RCS       back    = backRCS.Deserialize();
                Assert.AreEqual(srcs, backRCS);
                Assert.AreEqual(rcs, back);
            }

            for (int i = 0; i < 100; i++)
            {
                SDS    sds     = RandomSDS(ctx);
                var    s       = new SerialSDS(sds, Simulation.ID.XYZ);
                string json    = serializer.Serialize(s);
                var    reverse = serializer.Deserialize <SerialSDS>(json);
                Assert.AreEqual(s, reverse);
                SDS rev2 = reverse.Deserialize();
                Assert.IsTrue(sds.ICMessagesAndEntitiesAreEqual(rev2));
            }
        }
Beispiel #3
0
        public static IntermediateSDS RandomIntermediate(EntityChange.ExecutionContext ctx)
        {
            IntermediateSDS rs = new IntermediateSDS();

            rs.entities        = EntityPoolTests.RandomPool(random.Next(16), ctx);
            rs.ic              = BitCubeTests.RandomIC();
            rs.inputConsistent = random.NextBool();
            rs.localChangeSet  = EntityChangeSetTests.RandomSet(ctx.Ranges);
            return(rs);
        }
Beispiel #4
0
        public static List <Entity> CreateEntities(Box scope, int count, Func <int, EntityLogic> logicFactory = null)
        {
            var rs = new List <Entity>();

            for (int i = 0; i < count; i++)
            {
                rs.Add(new Entity(EntityChangeSetTests.RandomID(scope), Vec3.Zero, logicFactory != null ? logicFactory(i) : null));
            }
            return(rs);
        }
Beispiel #5
0
 private static RCS RandomOutboundRCS(SimulationContext ctx, bool forceConsistent = false)
 {
     return(new RCS(EntityChangeSetTests.RandomSet(ctx), forceConsistent ? InconsistencyCoverage.NewCommon() : BitCubeTests.RandomIC()));
 }
Beispiel #6
0
 public static EntityMessage RandomEntityMessage()
 {
     return(new EntityMessage(random.NextBool() ? new Actor(Guid.NewGuid()) : new Actor(RandomEntityID()), random.NextBool(), random.Next(3), EntityChangeSetTests.RandomByteArray(true)));
 }