public void SerializeToString_SerializeString_RightDeserialized() { var actual = SHSerializer.SerializeToString("teste"); var deserialized = SHSerializer.DeserializeFromString <string>(actual); Assert.AreEqual("teste", deserialized); }
public void SerializeVector2_Vector2_RightDeserialized() { var actual = SHSerializer.SerializeVector2(new Vector2(1.2f, 3.4f)); var deserialized = SHSerializer.DeserializeVector2(actual); Assert.AreEqual(1.2f, deserialized.x); Assert.AreEqual(3.4f, deserialized.y); }
public virtual void Modify(TEntity entity) { var serialized = SHSerializer.SerializeToString(entity); var key = GetKey(entity.Id); SHLog.Debug("Serializing key '{0}' with raw value: '{1}'", key, serialized); PlayerPrefs.SetString(key, serialized); }
public void SerializeVector3_Vector3_RightDeserialized() { var actual = SHSerializer.SerializeVector3(new Vector3(1.2f, 3.4f, 5.6f)); var deserialized = SHSerializer.DeserializeVector3(actual); Assert.AreEqual(1.2f, deserialized.x); Assert.AreEqual(3.4f, deserialized.y); Assert.AreEqual(5.6f, deserialized.z); }
public void SerializeToString_SerializeObject_RightDeserialized() { var stub = new SerializationTargetStub { Boolean = true, Integer = 123, Text = "teste" }; var actual = SHSerializer.SerializeToString(stub); var deserialized = SHSerializer.DeserializeFromString <SerializationTargetStub>(actual); Assert.IsTrue(deserialized.Boolean); Assert.AreEqual(123, deserialized.Integer); Assert.AreEqual("teste", deserialized.Text); }
public virtual IQueryable <TEntity> All() { var allIds = GetAllIds(); var result = new List <TEntity>(); foreach (var id in allIds) { var longId = long.Parse(id); var key = GetKey(longId); var rawValue = PlayerPrefs.GetString(key); Debug.LogFormat("Deserializing entity with key {0}. Raw value: '{1}'", key, rawValue); TEntity entity; if (!ClearEmptyEntities && String.IsNullOrEmpty(rawValue)) { entity = m_createNew(); entity.Id = longId; } else { try { entity = SHSerializer.DeserializeFromString <TEntity>(rawValue); if (ClearEmptyEntities && entity == null) { Debug.LogWarningFormat("Clear entity with key {0} because it is null.", key); Delete(longId); continue; } } catch (FormatException ex) { throw new FormatException(String.Format("Error trying to deserialize value key '{0}' with raw value: {1}", key, rawValue), ex); } } result.Add(entity); } return(result.AsQueryable()); }
public static void Example() { Vector2 vVector2 = UnityEngine.Random.insideUnitCircle; Vector3 vVector3 = UnityEngine.Random.onUnitSphere; Quaternion qQuater = UnityEngine.Random.rotation; float fFloat = UnityEngine.Random.value; int iInt = UnityEngine.Random.Range(0, 10000); double dDouble = (double)UnityEngine.Random.Range(0, 10000); string strString = "Brundle Fly"; bool bBool = UnityEngine.Random.value < 0.5f ? true : false; Debug.Log("--- Before ---"); Debug.Log(string.Format("vVector2 : {0}, vVector3 : {1}, qQuater : {2}, fFloat : {3}, iInt : {4}, dDouble : {5}, strString : {6}, bBool : {7}", vVector2, vVector3, qQuater, fFloat, iInt, dDouble, strString, bBool)); Debug.Log("--- Serialize ---"); SHSerializer pSerializer = new SHSerializer(); pSerializer.Serialize(vVector2); pSerializer.Serialize(vVector3); pSerializer.Serialize(qQuater); pSerializer.Serialize(fFloat); pSerializer.Serialize(iInt); pSerializer.Serialize(dDouble); pSerializer.Serialize(strString); pSerializer.Serialize(bBool); Debug.Log("--- Deserialize ---"); SHSerializer pDeSerializer = new SHSerializer(pSerializer.ByteArray); vVector2 = pDeSerializer.DeserializeVector2(); vVector3 = pDeSerializer.DeserializeVector3(); qQuater = pDeSerializer.DeserializeQuaternion(); fFloat = pDeSerializer.DeserializeFloat(); iInt = pDeSerializer.DeserializeInt(); dDouble = pDeSerializer.DeserializeDouble(); strString = pDeSerializer.DeserializeString(); bBool = pDeSerializer.DeserializeBool(); Debug.Log("--- After ---"); Debug.Log(string.Format("vVector2 : {0}, vVector3 : {1}, qQuater : {2}, fFloat : {3}, iInt : {4}, dDouble : {5}, strString : {6}, bBool : {7}", vVector2, vVector3, qQuater, fFloat, iInt, dDouble, strString, bBool)); }