public void SerializeDeserializeExit() { var testExit = ThingRepository.Instance.Make <Exit>(); testExit.aliases.Add("test"); testExit.SetLinkTargets(new Dbref[] { new Dbref(246, Dbref.DbrefObjectType.Room) }); testExit.contents.TryAdd(new Dbref(135, Dbref.DbrefObjectType.Thing)); testExit.externalDescription = "test externalDescription"; testExit.SetFlag(Thing.Flag.LINK_OK); testExit.name = "test name"; testExit.owner = new Dbref(456, Dbref.DbrefObjectType.Player); testExit.SetPropertyPathValue("test/deep/string", Property.PropertyType.String, "STRING TEST < WOO >"); testExit.SetPropertyPathValue("test/deep/int", 321); testExit.SetPropertyPathValue("test/deep/dbref", new Dbref(2468, Dbref.DbrefObjectType.Garbage)); testExit.SetPropertyPathValue("test/deep/float", 12.34F); var serialized = testExit.Serialize(); Assert.NotNull(serialized); var deserialized = Thing.Deserialize <Exit>(serialized); Assert.NotNull(deserialized); Assert.NotNull(deserialized !.properties); Assert.AreEqual(testExit.aliases, deserialized.aliases); Assert.NotNull(deserialized.contents); Assert.AreEqual(testExit.contents.Count, deserialized.contents.Count); Assert.AreEqual(testExit.contents, deserialized.contents); Assert.AreEqual(testExit.properties.Count, deserialized.properties.Count); Assert.AreEqual(testExit.properties, deserialized.properties); Assert.AreEqual(testExit.externalDescription, deserialized.externalDescription); Assert.AreEqual(testExit.flags, deserialized.flags); Assert.AreEqual(testExit.id, deserialized.id); Assert.AreEqual(testExit.Location, deserialized.Location); Assert.AreEqual(testExit.Owner, deserialized.Owner); Assert.AreEqual(testExit.pennies, deserialized.pennies); Assert.AreEqual(testExit.templates, deserialized.templates); Assert.AreEqual(testExit.Type, deserialized.Type); var reserialized = deserialized.Serialize(); Assert.NotNull(reserialized); Assert.AreEqual(serialized, reserialized); }
public void SerializeDeserializeThing() { var testObj = ThingRepository.Instance.Make <Thing>(); testObj.externalDescription = "test externalDescription"; testObj.SetFlag(Thing.Flag.QUELL); testObj.name = "test name"; testObj.owner = new Dbref(456, Dbref.DbrefObjectType.Player); testObj.pennies = 789; testObj.SetPropertyPathValue("test/deep/string", Property.PropertyType.String, "STRING TEST < WOO >"); testObj.SetPropertyPathValue("test/deep/int", 321); testObj.SetPropertyPathValue("test/deep/dbref", new Dbref(2468, Dbref.DbrefObjectType.Garbage)); testObj.SetPropertyPathValue("test/deep/float", 12.34F); var serialized = testObj.Serialize(); Assert.NotNull(serialized); var deserialized = Thing.Deserialize <Thing>(serialized); Assert.NotNull(deserialized); Assert.NotNull(deserialized !.properties); Assert.AreEqual(testObj.properties.Count, deserialized.properties.Count); Assert.AreEqual(testObj.properties, deserialized.properties); Assert.AreEqual(testObj.externalDescription, deserialized.externalDescription); Assert.AreEqual(testObj.flags, deserialized.flags); Assert.AreEqual(testObj.id, deserialized.id); Assert.AreEqual(testObj.Location, deserialized.Location); Assert.AreEqual(testObj.Owner, deserialized.Owner); Assert.AreEqual(testObj.pennies, deserialized.pennies); Assert.AreEqual(testObj.templates, deserialized.templates); Assert.AreEqual(testObj.Type, deserialized.Type); var reserialized = deserialized.Serialize(); Assert.NotNull(reserialized); Assert.AreEqual(serialized, reserialized); }
public void SerializeDeserializeHumanPlayer() { var player = ThingRepository.Instance.Make <HumanPlayer>(); player.id = new Dbref(1, Dbref.DbrefObjectType.Player); Assert.IsTrue(player.SetPassword("secret")); Assert.IsFalse(player.SetPassword(" ")); Assert.IsFalse(player.CheckPassword("secret ")); Assert.IsFalse(player.CheckPassword("SECRET")); Assert.IsFalse(player.CheckPassword(" secret")); Assert.IsFalse(player.CheckPassword("hunter2")); Assert.IsFalse(player.CheckPassword("")); Assert.IsFalse(player.CheckPassword(null)); Assert.IsTrue(player.CheckPassword("secret")); var serialized = player.Serialize(); Assert.NotNull(serialized); var deserialized = Thing.Deserialize <HumanPlayer>(serialized); Assert.NotNull(deserialized); Assert.NotNull(deserialized !.properties); Assert.AreEqual(player.properties.Count, deserialized.properties.Count); Assert.AreEqual(player.properties, deserialized.properties); Assert.IsFalse(deserialized.CheckPassword("hunter2")); Assert.IsTrue(deserialized.CheckPassword("secret")); var reserialized = deserialized.Serialize(); Assert.NotNull(reserialized); Assert.AreEqual(serialized, reserialized); }