Example #1
0
        public void makeAll_CompositeTypeHDCreated_TypeDefinitionGiven()
        {
            // Arrange
            var baseFolder   = GetBaseFolder();
            var version      = GetVersion();
            var source       = new DataTypeProviderMock();
            var targetFolder = GetTargetFolder("Datatype");

            var components = new TypeComponentsMock();

            components.Add("IS", "Namespace ID", 300);
            components.Add("ST", "Universal ID", 0);
            components.Add("ID", "Universal ID Type", 301);

            components.Description = "Hierarchic Designator";
            source.Types["HD"]     = components;

            DataProviderFactory.Instance.SetProvider(source);

            // Act
            DataTypeGenerator.makeAll(baseFolder, version);

            // Assert
            Assert.IsTrue(File.Exists($"{targetFolder}HD.cs"));
        }
Example #2
0
        public void Execute()
        {
            if (!string.IsNullOrEmpty(ConnectionString))
            {
                ConfigurationSettings.ConnectionString = ConnectionString;
            }

            Console.WriteLine("Using Database:{0}", NormativeDatabase.Instance.Connection.ConnectionString);
            Console.WriteLine("Base Path:{0}", BasePath);

            switch (MessageTypeToBuild)
            {
            case MessageType.All:
                SourceGenerator.makeAll(BasePath, Version);
                break;

            case MessageType.EventMapping:
                SourceGenerator.MakeEventMapping(BasePath, Version);
                break;

            case MessageType.Segment:
                SegmentGenerator.makeAll(BasePath, Version);
                break;

            case MessageType.Message:
                MessageGenerator.makeAll(BasePath, Version);
                break;

            case MessageType.DataType:
                DataTypeGenerator.makeAll(BasePath, Version);
                break;
            }
        }
Example #3
0
        public void makeAll_PrimitiveTypesCreated_TypeDefinitionsGiven()
        {
            // Arrange
            var baseFolder   = GetBaseFolder();
            var version      = GetVersion();
            var source       = new DataTypeProviderMock();
            var targetFolder = GetTargetFolder("Datatype");

            // Primitive types that are generated: FT, ST, TX, NM, SI, TN, GTS
            // Primitieve types that must be coded manually: IS, ID, DT, DTM, and TM
            AddPrimitiveComponent(source, "FT", "Formatted Text Data");
            AddPrimitiveComponent(source, "ST", "Structured Text");
            AddPrimitiveComponent(source, "TX", "Text Data");
            AddPrimitiveComponent(source, "NM", "Numeric");
            AddPrimitiveComponent(source, "SI", "Sequence ID");
            //AddPrimitiveComponent(source, "TN", "Telephone Number"); // HL7 version 2.3.1
            AddPrimitiveComponent(source, "GTS", "General Timing Specification");
            AddPrimitiveComponent(source, "IS", "??");
            AddPrimitiveComponent(source, "ID", "??");
            DataProviderFactory.Instance.SetProvider(source);

            // Act
            DataTypeGenerator.makeAll(baseFolder, version);

            // Assert
            Assert.IsTrue(File.Exists($"{targetFolder}FT.cs"));
            Assert.IsTrue(File.Exists($"{targetFolder}ST.cs"));
            Assert.IsTrue(File.Exists($"{targetFolder}TX.cs"));
            Assert.IsTrue(File.Exists($"{targetFolder}NM.cs"));
            Assert.IsTrue(File.Exists($"{targetFolder}SI.cs"));
            Assert.IsFalse(File.Exists($"{targetFolder}IS.cs"));
            Assert.IsFalse(File.Exists($"{targetFolder}ID.cs"));
        }
Example #4
0
        public void makeAll_DataTypesCreated_DefinitionGiven()
        {
            // Arrange
            var baseFolder = GetBaseFolder();
            var version    = GetVersion();

            ConfigurationSettings.XmlFilename = "Mocks\\reverse-nHapi.xml";
            var messageTargetFolder = GetTargetFolder("Message");
            var groupTargetFolder   = GetTargetFolder("Group");

            // Act
            DataTypeGenerator.makeAll(baseFolder, version);

            // Assert
            // TODO
        }