public void Setup() { this.mockRepo = new MockObjectRepository(); this.mockRepo.InitializeCDARepository(); this.mockRepo.FindOrAddImplementationGuide(MockObjectRepository.DEFAULT_CDA_IG_TYPE_NAME, "Dev Test IG"); string importXml = Helper.GetSampleContents("Trifolia.Test.DocSamples.sample2.xml"); TemplateImporter importer = new TemplateImporter(this.mockRepo); var templates = importer.Import(importXml); Assert.AreEqual(0, importer.Errors.Count, "Expected 0 errors from importing sample2.xml"); Assert.AreEqual(5, templates.Count, "Expected 5 templates to be imported from sample2.xml"); }
private void ImportTemplates_Execute(ExecuteEventArgs ea) { // Package: https://raw2.github.com/RoryBecker/CodeRushTemplatePackages/master/CS_PluginTemplatesPackage.xml // Template: https://raw2.github.com/RoryBecker/CodeRushPluginTemplates/master/CS_NewAction.xml // Template: https://raw2.github.com/groovyghoul/fakeiteasy-coderush-templates/master/CSharp_Custom_FakeItEasy.xml //TemplateLoader TemplateLoader = new TemplateLoader(); //TemplateLoader.ImportTemplatePackageViaUrl("https://raw2.github.com/RoryBecker/CodeRushTemplatePackages/master/CS_PluginTemplatesPackage.xml"); //TemplateLoader.SaveAndReloadTemplates(); using (TemplateImporter TemplateImporter = new TemplateImporter()) { TemplateImporter.ShowDialog(); } }
public static void Setup(TestContext context) { FHIRDSTU1ExportTest.tdb = new MockObjectRepository(); TrifoliaImporter importer = new TrifoliaImporter(FHIRDSTU1ExportTest.tdb); FHIRDSTU1ExportTest.tdb.InitializeFHIRRepository(); FHIRDSTU1ExportTest.tdb.InitializeLCGAndLogin(); string importContent = Helper.GetSampleContents(IMPORT_XML); var importModel = ImportModel.Deserialize(importContent); var importStatus = importer.Import(importModel); Assert.IsTrue(importStatus.Success, "Expected import to succeed"); Assert.AreNotEqual(importStatus.ImplementationGuides.Count, 0, "Expected import to include implementation guides"); IGSettingsManager igManager = new IGSettingsManager(tdb, importStatus.ImplementationGuides.First().InternalId); TemplateImporter templateImporter = new TemplateImporter(tdb, shouldUpdate: true); FHIRDSTU1ExportTest.exportedXml = FHIRExporter.GenerateExport(tdb, templateImporter.Import(importModel.Template), igManager); Assert.IsNotNull(FHIRDSTU1ExportTest.exportedXml); }
public FHIRImporter(IObjectRepository tdb, bool shouldUpdate) { this.tdb = tdb; this.importer = new TemplateImporter(this.tdb, shouldUpdate); }
public void ImportTemplatesTest() { MockObjectRepository tdb = new MockObjectRepository(); tdb.InitializeCDARepository(); var implementationGuide = tdb.FindOrCreateImplementationGuide(Constants.IGTypeNames.CDA, "Test IG"); string importXml = "<?xml version=\"1.0\" encoding=\"utf-16\"?>" + "<Trifolia xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns=\"http://www.lantanagroup.com\">" + " <Template identifier=\"urn:oid:1.2.3.4.5\" implementationGuideType=\"CDA\" templateType=\"Document\" title=\"Test Template 1\" bookmark=\"D_Test_Template_1\" context=\"ClinicalDocument\">" + " <ImplementationGuide name=\"Test IG\" />" + " <Description>Test Description 2</Description>" + " <Notes>Test Note 1</Notes>" + " <Constraint isVerbose=\"false\" number=\"1000\" context=\"templateId\" conformance=\"SHALL\" cardinality=\"1..1\" />" + " <Constraint isVerbose=\"false\" number=\"1001\" context=\"code\" conformance=\"SHALL\" cardinality=\"1..1\">" + " <Constraint isVerbose=\"false\" number=\"1002\" context=\"@code\" conformance=\"SHALL\" cardinality=\"1..1\">" + " <SingleValueCode code=\"12345X\" displayName=\"Test Static Value\" />" + " </Constraint>" + " </Constraint>" + " <Constraint isVerbose=\"false\" number=\"1003\" context=\"code\" conformance=\"SHALL\" cardinality=\"1..1\">" + " <Constraint isVerbose=\"false\" number=\"1004\" context=\"@code\" conformance=\"SHALL\" cardinality=\"1..1\" dataType=\"CE\">" + " <ValueSet identifier=\"urn:oid:9.8.7.6.5.4.3.2.1\" isStatic=\"true\" />" + " </Constraint>" + " </Constraint>" + " </Template>" + " <Template identifier=\"urn:oid:1.2.3.4.5.6\" implementationGuideType=\"CDA\" templateType=\"Document\" title=\"Test Template 2\" bookmark=\"D_Test_Template_2\" impliedTemplateOid=\"urn:oid:1.2.3.4.5\" context=\"Document\">" + " <ImplementationGuide name=\"Test IG\" />" + " <Description>Test Description 1</Description>" + " <Notes>Test Note 2</Notes>" + " <Constraint isVerbose=\"false\" number=\"1005\" context=\"code\" conformance=\"SHALL\" cardinality=\"1..1\" />" + " </Template>" + " <Template identifier=\"urn:oid:1.2.3.4.5.6.7\" implementationGuideType=\"CDA\" templateType=\"Document\" title=\"Test Template 3\" bookmark=\"D_Test_Template_3\" context=\"Document\">" + " <ImplementationGuide name=\"Test IG\" />" + " <Description>Test Description 3</Description>" + " <Notes>Test Note 3</Notes>" + " <Constraint isVerbose=\"false\" number=\"1006\" conformance=\"SHALL\" cardinality=\"1..1\" containedTemplateOid=\"urn:oid:1.2.3.4.5.6\" />" + " <Constraint isVerbose=\"false\" number=\"1007\" context=\"entry\" conformance=\"SHALL\" cardinality=\"1..1\">" + " <Constraint isVerbose=\"false\" number=\"1008\" context=\"observation\" conformance=\"SHALL\" cardinality=\"1..1\" containedTemplateOid=\"urn:oid:1.2.3.4.5.6\" />" + " </Constraint>" + " </Template>" + "</Trifolia>"; TemplateImporter importer = new TemplateImporter(tdb); List <Template> templates = importer.Import(importXml); Assert.AreEqual(0, importer.Errors.Count, "Should not have errors"); Assert.IsNotNull(templates, "Did not expect import to return null list of templates"); Assert.AreEqual(3, templates.Count, "Expected to find 3 imported templates"); Template firstTemplate = templates[0]; Assert.AreEqual("urn:oid:1.2.3.4.5", firstTemplate.Oid, "First template's oid was not correct."); Assert.AreEqual("Test Template 1", firstTemplate.Name, "First template's title was not set correctly."); Assert.AreEqual("D_Test_Template_1", firstTemplate.Bookmark, "First template's bookmark was not set correctly."); Assert.IsNotNull(firstTemplate.ImplementationGuideType, "First template's implementation guide type was not set."); Assert.AreEqual(Constants.IGTypeNames.CDA, firstTemplate.ImplementationGuideType.Name, "First template's implementation guide was not correct."); Assert.IsNotNull(firstTemplate.TemplateType, "First template's type was not set."); Assert.AreEqual("Document", firstTemplate.TemplateType.Name, "First template's type was not correct."); Assert.IsNotNull(firstTemplate.PrimaryContext, "First template's context was not set."); Assert.AreEqual("ClinicalDocument", firstTemplate.PrimaryContext, "First template's context was not correct."); Assert.AreEqual(5, firstTemplate.ChildConstraints.Count, "Expected to find 5 constraints in the first template."); TemplateConstraint constraint = firstTemplate.ChildConstraints.ToList()[0]; Assert.IsNotNull(constraint.Context, "First constraint of first template does not have a context."); Assert.AreEqual(constraint.Context, "templateId", "First constraint of first template does not have the correct context."); Assert.AreEqual(constraint.Cardinality, "1..1", "First constraint of first template does not have the correct cardinality."); Assert.IsNotNull(constraint.Conformance, "First constraint of first template does does not have a conformance."); Assert.AreEqual(constraint.Conformance, "SHALL", "First constraint of first template does does not have the correct conformance."); TemplateConstraint secondConstraint = firstTemplate.ChildConstraints.ToList()[2]; Assert.IsNotNull(secondConstraint.ParentConstraint, "Third constraint of the first template does not have a parent constraint."); }