public void TestManifestAddEntityWithLocalizedPaths() { var manifest = CdmCollectionHelperFunctions.GenerateManifest("C:\\Root\\Path"); var cdmCorpus = manifest.Ctx.Corpus; var entity = new CdmEntityDefinition(cdmCorpus.Ctx, "entityName", null); entity.Explanation = "The explanation of the entity"; CdmCollectionHelperFunctions.CreateDocumentForEntity(cdmCorpus, entity); var cdmEntity = new CdmEntityDefinition(cdmCorpus.Ctx, "cdmEntityName", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(cdmCorpus, cdmEntity, "cdm"); var localizedEntityDeclaration = manifest.Entities.Add(entity); var cdmEntityDeclaration = manifest.Entities.Add(cdmEntity); Assert.AreEqual("The explanation of the entity", localizedEntityDeclaration.Explanation); Assert.AreEqual("entityName.cdm.json/entityName", localizedEntityDeclaration.EntityPath); Assert.AreEqual("entityName", localizedEntityDeclaration.EntityName); Assert.AreEqual("cdm:/cdmEntityName.cdm.json/cdmEntityName", cdmEntityDeclaration.EntityPath); Assert.AreEqual("entityName", localizedEntityDeclaration.EntityName); Assert.AreEqual(2, manifest.Entities.Count); Assert.AreEqual(localizedEntityDeclaration, manifest.Entities[0]); Assert.AreEqual(cdmEntityDeclaration, manifest.Entities[1]); }
public void TestCdmEntityCollectionRemoveEntityDeclarationDefinition() { var manifest = CdmCollectionHelperFunctions.GenerateManifest("C:\\Root\\Path"); var entity = new CdmEntityDefinition(manifest.Ctx, "entityName", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(manifest.Ctx.Corpus, entity); var otherEntity = new CdmEntityDefinition(manifest.Ctx, "otherEntityName", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(manifest.Ctx.Corpus, otherEntity); manifest.Entities.Add(entity); manifest.Entities.Add(otherEntity); Assert.AreEqual(2, manifest.Entities.Count); bool removed = manifest.Entities.Remove(entity); Assert.IsTrue(removed); Assert.AreEqual(1, manifest.Entities.Count); Assert.AreEqual(otherEntity.EntityName, manifest.Entities[0].EntityName); removed = manifest.Entities.Remove(entity); Assert.IsFalse(removed); Assert.AreEqual(1, manifest.Entities.Count); }
public void TestManifestAddListOfEntityDeclarations() { var cdmCorpus = new CdmCorpusDefinition(); cdmCorpus.Storage.DefaultNamespace = "local"; cdmCorpus.Storage.Mount("local", new LocalAdapter("CdmCorpus/LocalPath")); var ctx = cdmCorpus.Ctx; var cdmDocument = new CdmDocumentDefinition(ctx, "NameOfDocument"); var collection = new CdmEntityCollection(ctx, cdmDocument); var entityList = new List <CdmEntityDefinition>(); for (int i = 0; i < 2; i++) { var entity = new CdmEntityDefinition(cdmCorpus.Ctx, $"entityName_{i}", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(cdmCorpus, entity); entityList.Add(entity); } Assert.AreEqual(0, collection.Count); collection.AddRange(entityList); Assert.AreEqual(2, collection.Count); for (int i = 0; i < 2; i++) { Assert.AreEqual($"entityName_{i}", collection[i].EntityName); } }
public void TestManifestCanAddEntityDefinition() { var manifest = CdmCollectionHelperFunctions.GenerateManifest("C:\\Root\\Path"); var entity = new CdmEntityDefinition(manifest.Ctx, "entityName", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(manifest.Ctx.Corpus, entity); manifest.Entities.Add(entity); Assert.AreEqual(1, manifest.Entities.Count); Assert.AreEqual("entityName", entity.EntityName); }
public void TestManifestCanAddEntityDeclaration() { var manifest = CdmCollectionHelperFunctions.GenerateManifest("C:\\Root\\Path"); var entity = new CdmEntityDefinition(manifest.Ctx, "entityName", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(manifest.Ctx.Corpus, entity); var entityDeclaration = manifest.Ctx.Corpus.MakeObject <CdmEntityDeclarationDefinition>(Enums.CdmObjectType.LocalEntityDeclarationDef, entity.EntityName, false); entityDeclaration.EntityPath = $"{entity.Owner.AtCorpusPath}/{entity.EntityName}"; manifest.Entities.Add(entityDeclaration); Assert.AreEqual("local:/entityName.cdm.json/entityName", entityDeclaration.EntityPath); Assert.AreEqual("entityName", entityDeclaration.EntityName); Assert.AreEqual(1, manifest.Entities.Count); Assert.AreEqual(entityDeclaration, manifest.Entities[0]); }
public void TestCdmCollectionAddingList() { var cdmCorpus = new CdmCorpusDefinition(); cdmCorpus.Storage.DefaultNamespace = "local"; cdmCorpus.Storage.Mount("local", new LocalAdapter("CdmCorpus/LocalPath")); var ctx = cdmCorpus.Ctx; var cdmDocument = new CdmDocumentDefinition(ctx, "NameOfDocument"); var collection = new CdmCollection <CdmEntityDeclarationDefinition>(ctx, cdmDocument, Enums.CdmObjectType.LocalEntityDeclarationDef); var entityList = new List <CdmEntityDeclarationDefinition>(); for (int i = 0; i < 2; i++) { var entity = new CdmEntityDefinition(cdmCorpus.Ctx, $"entityName_{i}", null); CdmCollectionHelperFunctions.CreateDocumentForEntity(cdmCorpus, entity); var entityDeclaration = cdmCorpus.MakeObject <CdmEntityDeclarationDefinition>(Enums.CdmObjectType.LocalEntityDeclarationDef, entity.EntityName, false); entityDeclaration.Owner = entity.Owner; entityDeclaration.EntityPath = $"{entity.Owner.AtCorpusPath}/{entity.EntityName}"; entityList.Add(entityDeclaration); } Assert.AreEqual(0, collection.Count); collection.AddRange(entityList); Assert.AreEqual(2, collection.Count); for (int i = 0; i < 2; i++) { Assert.AreEqual($"entityName_{i}", collection[i].EntityName); } }