public void TestDefaultContextParentWithACollectionOfThreeChildObjectsNested() { var testSkillParentObject = new SkillParentCollection { CreatedSkillParent = DateTime.UtcNow, UpdatedSkillParent = DateTime.UtcNow, DescriptionSkillParent = "A test entity description", Id = 8, NameSkillParent = "cool", SkillChildren = new Collection<SkillChild> { _entitiesForSkillChild[0], _entitiesForSkillChild[1], _entitiesForSkillChild[2] } }; using (var context = new ElasticsearchContext(ConnectionString, _elasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); context.AddUpdateDocument(testSkillParentObject, testSkillParentObject.Id); // Save to Elasticsearch var ret = context.SaveChanges(); Assert.AreEqual(ret.Status, HttpStatusCode.OK); var roundTripResult = context.GetDocument<SkillParentCollection>(testSkillParentObject.Id); Assert.AreEqual(roundTripResult.DescriptionSkillParent, testSkillParentObject.DescriptionSkillParent); Assert.AreEqual(roundTripResult.SkillChildren.First().DescriptionSkillChild, testSkillParentObject.SkillChildren.First().DescriptionSkillChild); Assert.AreEqual(roundTripResult.SkillChildren.ToList()[1].DescriptionSkillChild, testSkillParentObject.SkillChildren.ToList()[1].DescriptionSkillChild); Assert.AreEqual(roundTripResult.SkillChildren.ToList()[1].DescriptionSkillChild, testSkillParentObject.SkillChildren.ToList()[1].DescriptionSkillChild); } }
public void TestDefaultContextParentWithNullCollectionNested() { using (var context = new ElasticsearchContext(ConnectionString, _elasticsearchMappingResolver)) { context.TraceProvider = new ConsoleTraceProvider(); var skill = new SkillParentCollection { CreatedSkillParent = DateTime.UtcNow, UpdatedSkillParent = DateTime.UtcNow, Id = 34, NameSkillParent = "rr", DescriptionSkillParent = "ee" }; context.AddUpdateDocument(skill, skill.Id); // Save to Elasticsearch var ret = context.SaveChanges(); Assert.AreEqual(ret.Status, HttpStatusCode.OK); var roundTripResult = context.GetDocument<SkillParentCollection>(skill.Id); Assert.AreEqual(roundTripResult.DescriptionSkillParent, skill.DescriptionSkillParent); } }
public void TestDefaultContextParentWithACollectionOfOneChildObjectNestedIgnoreChildren() { var testSkillParentObject = new SkillParentCollection { CreatedSkillParent = DateTime.UtcNow, UpdatedSkillParent = DateTime.UtcNow, DescriptionSkillParent = "A test entity description", Id = 7, NameSkillParent = "cool", SkillChildren = new Collection<SkillChild> { _entitiesForSkillChild[0] } }; const bool includeChildObjects = false; using (var context = new ElasticsearchContext(ConnectionString, new ElasticsearchSerializerConfiguration(_elasticsearchMappingResolver, includeChildObjects))) { context.TraceProvider = new ConsoleTraceProvider(); context.AddUpdateDocument(testSkillParentObject, testSkillParentObject.Id); // Save to Elasticsearch var ret = context.SaveChanges(); Assert.AreEqual(ret.Status, HttpStatusCode.OK); var roundTripResult = context.GetDocument<SkillParentCollection>(testSkillParentObject.Id); Assert.AreEqual(roundTripResult.DescriptionSkillParent, testSkillParentObject.DescriptionSkillParent); Assert.AreEqual(roundTripResult.SkillChildren, null); } }