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();
     }
 }
Exemple #3
0
        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);
        }
Exemple #4
0
        public FHIRImporter(IObjectRepository tdb, bool shouldUpdate)
        {
            this.tdb = tdb;

            this.importer = new TemplateImporter(this.tdb, shouldUpdate);
        }
Exemple #5
0
        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.");
        }