public void ItSerializesEntities() { var entity = new StubEntity(); entity.Foo = "Foo value"; entity.bar = "bar value"; var serialized = Serializer.ToJson(entity).ToString(); Assert.AreEqual( new JsonObject { ["Foo"] = "Foo value", ["bar"] = "bar value", ["_id"] = JsonValue.Null, ["_rev"] = JsonValue.Null, ["CreatedAt"] = Serializer.ToJson(default(DateTime)).AsString, ["UpdatedAt"] = Serializer.ToJson(default(DateTime)).AsString, ["_key"] = JsonValue.Null, }.ToString(), serialized ); var deserialized = Serializer.FromJsonString <StubEntity>(serialized); UAssert.AreJsonEqual(entity, deserialized); Assert.AreEqual(entity.Foo, deserialized.Foo); Assert.AreEqual(entity.bar, deserialized.bar); }
public virtual async Task CanSaveFilesWithSerializerAsync(ISerializer serializer, string fileExtension) { await this.ResetAsync(); var storage = this.GetStorage(); if (storage == null) { return; } using (storage) { var path = $"entity-{Guid.NewGuid().ToString("N").Substring(10)}.{fileExtension}"; Assert.False(await storage.ExistsAsync(path)); var entity = new StubEntity { FirstName = "John", LastName = "Doe" }; var saveResult = await storage.SaveFileObjectAsync(path, entity, serializer); // write Assert.True(saveResult); Assert.Single(await FileStorageExtensions.GetFileInformationsAsync(storage)); Assert.True(await storage.ExistsAsync(path)); var getResult = await storage.GetFileObjectAsync <StubEntity>(path, serializer); // read Assert.Equal("John", getResult.FirstName); Assert.Equal("Doe", getResult.LastName); } }
public void AddDomainEvent_GivenValidItem_EventGetsAdded() { var notification = new Mock <INotification>(); var stubEntity = new StubEntity(Guid.NewGuid()); stubEntity.AddDomainEvent(notification.Object); Assert.Contains(notification.Object, stubEntity.DomainEvents); }
public void Generic_IsSatisfiedBy_Test() { var entity = new StubEntity { FirstName = "John" }; new Specification <StubEntity>(e => e.FirstName == "John").IsSatisfiedBy(entity) .ShouldBeTrue(); }
public void MissingFieldOnDeserializationWillBeSetToDefault() { var e = Serializer.FromJsonString <StubEntity>( "{'_id':'e_StubEntity/some-id'}".Replace('\'', '"') ); var def = new StubEntity(); Assert.AreEqual("e_StubEntity/some-id", e.EntityId); Assert.AreEqual(def.Foo, e.Foo); Assert.AreEqual(def.bar, e.bar); }
public void AddRemove() { var entitySet = new EntitySet(e => true); var entity = new StubEntity(); entitySet.Add(entity); Assert.AreEqual(1, entitySet.Count); entitySet.Remove(entity); Assert.AreEqual(0, entitySet.Count); entitySet.Add(entity); Assert.AreEqual(1, entitySet.Count); }
public void InitializedEntity_HasDefaultValue() { // arrange StubEntity test = new StubEntity(); int expected = 0; // act // assert test.Id .Should() .Be(expected); }
public void GoodEntity_ReturnsExpectedValue() { // arrange StubEntity fakeEntity = MakeEntity(); int expected = 53; // act // assert fakeEntity.Id .Should() .Be(expected); }
public void PersistNewItem_Entity_Persisted() { var entity = new StubEntity(); entity.Date = DateTime.Now; entity.Integer = 2; entity.Text1 = "text1"; entity.Text2 = "text2"; entity.Text3 = "text3"; var unitOfWork = new MemoryUnitOfWork(); var target = new ParseRepository<StubEntity>(unitOfWork); target.Add(entity); unitOfWork.Commit(); }
public void ModifiedEnumerable() { var entity = new StubEntity(); var list = new List <IEntity> { entity }; var entityManager = new EntityManager(list, new StubComponentManager()); var enumerable = (IEnumerable)entityManager; var enumerator = enumerable.GetEnumerator(); list.Add(new StubEntity()); // modify collection Assert.IsTrue(enumerator.MoveNext(), "should iterate over original entity list"); Assert.AreSame(entity, enumerator.Current); list.Add(new StubEntity()); // modify again Assert.IsFalse(enumerator.MoveNext(), "should only have one entity in original list"); }
public void ReEnumerate() { var componentManager = new ComponentManager(new StubSetManager()); var entity = new StubEntity(); using (var enumerator = componentManager.GetEnumerator(entity)) { componentManager.AddComponent(entity, new AComponent("modified components")); Assert.IsFalse(enumerator.MoveNext()); componentManager.AddComponent(entity, new AComponent("modified components")); Assert.IsFalse(enumerator.MoveNext()); } // check again for dispose crash using (var enumerator = componentManager.GetEnumerator(new StubEntity())) { Assert.IsFalse(enumerator.MoveNext()); } }
public void FindAll_Filter_EntitiesFiltered() { var unitOfWork = new MemoryUnitOfWork(); var target = new ParseRepository<StubEntity>(unitOfWork); foreach (var toRemove in target.FindAll()) { target.Remove(toRemove); unitOfWork.Commit(); } var entity1 = new StubEntity(); entity1.Date = DateTime.Now; entity1.Text1 = "text1"; entity1.Text2 = "text2"; entity1.Text3 = "text3"; var entity2 = new StubEntity(); entity2.Date = DateTime.Now; entity2.Text1 = "text1"; entity2.Text2 = "text2"; entity2.Text3 = "text4"; target.Add(entity1); target.Add(entity2); unitOfWork.Commit(); var text1 = "text1"; var actual = target.FindAll(0, 1, (b) => b.Text1 == text1 && b.Text2 == "text2" && b.Text3 == "text3"); Assert.AreEqual(1, actual.Count()); var first = actual.First(); Assert.AreEqual("text3", first.Text3); actual = target.FindAll(0, 1, (b) => b.Text1 == text1 && b.Text2 == "text2" && b.Text3 == "text4"); Assert.AreEqual(1, actual.Count()); first = actual.First(); Assert.AreEqual("text4", first.Text3); first = target.FindFirst((b) => b.Text1 == text1 && b.Text2 == "text2" && b.Text3 == "text3"); Assert.AreEqual("text3", first.Text3); }
public void ModifiedEnumerable() { var entitySet = new EntitySet(e => true); var entity = new StubEntity(); entitySet.Add(entity); // Contains Assert.IsTrue(entitySet.Contains(entity)); // GetEnumerator Assert.AreSame(entity, entitySet.First()); var enumerable = (IEnumerable)entitySet; var enumerator = enumerable.GetEnumerator(); entitySet.Add(new StubEntity()); // modify collection Assert.IsTrue(enumerator.MoveNext(), "shouldn't crash, should have original list of entities"); Assert.AreSame(entity, enumerator.Current); Assert.IsFalse(enumerator.MoveNext(), "should be end of original 1 entity list"); }
public void IsTransient_IdSet_ExpectFalse() { var stubEntity = new StubEntity(Guid.NewGuid()); Assert.False(stubEntity.IsTransient()); }
public void IsTransient_NoIdSet_ExpectTrue() { var stubEntity = new StubEntity(); Assert.True(stubEntity.IsTransient()); }
public CustomerCreatedDomainEvent(StubEntity entity) { this.Entity = entity; }
public EntityTests() { this.sut = new StubEntity(); }