public void CanSerializeThenDeserializeTypedEntity() { TypedEntity entity = HiveModelCreationHelper.MockTypedEntity(true); var graph = entity.GetAllIdentifiableItems().Reverse().ToArray(); var testTypes = new List <object>(); foreach (var referenceByHiveId in graph.WhereNotNull()) { object test; try { test = SerializeDeserialize(referenceByHiveId); Assert.NotNull(test); testTypes.Add(test); } catch (Exception ex) { throw; } } var obj = SerializeDeserialize(entity); Assert.That(obj, Is.Not.Null); Assert.That(obj.GetType(), Is.EqualTo(typeof(TypedEntity))); Assert.That(((TypedEntity)obj).Id, Is.EqualTo(entity.Id)); Assert.That(((TypedEntity)obj).Attributes.Count, Is.EqualTo(entity.Attributes.Count)); Assert.That(((TypedEntity)obj).AttributeGroups.Count(), Is.EqualTo(entity.AttributeGroups.Count())); }