コード例 #1
0
        public void TestClientCodeGen_GlobalNamespace_NoRootNamespace_FullNames()
        {
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("Global.shared.cs"),
                TestHelper.GetTestFileName("Global.shared.vb"),
            };

            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(
                @"FullTypeNames\Scenarios",
                "CG_Global_Full",
                "GlobalNamespace_NoRootNamespace.g",
                new Type[] { typeof(GlobalNamespaceTest.GlobalNamespaceTest_DomainService) },
                /* language */ null,
                sharedFiles,
                /* rootNamespace */ string.Empty,
                /* useFullTypeNames */ true);

            options.AddSharedType(typeof(GlobalNamespaceTest_Attribute));
            options.AddSharedType(typeof(GlobalNamespaceTest_Enum));
            options.AddSharedType(typeof(GlobalNamespaceTest_Validation));
            options.AddSharedType(typeof(GlobalNamespaceTest_ValidationAttribute));
            options.AddSharedMethod(typeof(GlobalNamespaceTest_Validation).GetMethod("Validate"));

            TestHelper.ValidateCodeGen(options);
        }
コード例 #2
0
        public void TestClientCodeGen_SystemNamespace_FullNames()
        {
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("SystemNamespace.shared.cs"),
                TestHelper.GetTestFileName("SystemNamespace.shared.vb"),
            };

            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(
                @"FullTypeNames\Scenarios",
                "CG_SystemNamespace_Full",
                "SystemNamespace.g",
                new Type[] { typeof(System.SystemDomainService), typeof(System.Subsystem.SubsystemDomainService), typeof(SystemExtensions.SystemExtensionsDomainService) },
                /* language */ null,
                sharedFiles,
                /* rootNamespace */ string.Empty,
                /* useFullTypeNames */ true);

            options.AddSharedType(typeof(System.SystemNamespaceAttribute));
            options.AddSharedType(typeof(System.Subsystem.SubsystemNamespaceAttribute));
            options.AddSharedType(typeof(System.SystemEnum));
            options.AddSharedType(typeof(System.Subsystem.SubsystemEnum));
            options.AddSharedType(typeof(SystemExtensions.SystemExtensionsNamespaceAttribute));
            options.AddSharedType(typeof(SystemExtensions.SystemExtensionsEnum));

            TestHelper.ValidateCodeGen(options);
        }
コード例 #3
0
        public void TestClientCodeGen_GlobalNamespace()
        {
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("Global.shared.cs"),
                TestHelper.GetTestFileName("Global.shared.vb"),
            };

            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(
                @"Default\Scenarios",
                "CG_Global",
                "GlobalNamespace.g",
                typeof(GlobalNamespaceTest.GlobalNamespaceTest_DomainService),
                sharedFiles,
                /* useFullTypeNames */ false);

            options.AddSharedType(typeof(GlobalNamespaceTest_Attribute));
            options.AddSharedType(typeof(GlobalNamespaceTest_Enum));
            options.AddSharedType(typeof(GlobalNamespaceTest_Validation));
            options.AddSharedType(typeof(GlobalNamespaceTest_ValidationAttribute));
            options.AddSharedMethod(typeof(GlobalNamespaceTest_Validation).GetMethod("Validate"));

            TestHelper.ValidateCodeGen(options);
        }
コード例 #4
0
        public void TestCityClientProxies()
        {
            string[] sharedFiles = new string[] { 
                TestHelper.GetTestFileName("Cities.shared.cs"),
                TestHelper.GetTestFileName("Cities.shared.vb")
            };

            // Default
            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(@"Default\Cities", "CG_Cities", "Cities.g", typeof(CityDomainService), sharedFiles, false);
            options.AddSharedType(typeof(Cities.TimeZone));
            TestHelper.ValidateCodeGen(options);
        }
コード例 #5
0
        public void TestClientCodegen_Scenarios_FullTypes()
        {
            Type[] types = new[]
            {
                typeof(TestDomainServices.TestProvider_Scenarios),
                typeof(TestDomainServices.NamedUpdates.NamedUpdate_CustomOnly),
                typeof(TestDomainServices.NamedUpdates.NamedUpdate_CustomAndUpdate),
                typeof(TestDomainServices.NamedUpdates.NamedUpdate_CustomValidation),
                typeof(TestDomainServices.NamedUpdates.CalculatorDomainService),
            };
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("Mock.shared.cs"),
                TestHelper.GetTestFileName("Mock.shared.vb"),
                TestHelper.GetTestFileName("Test.shared.cs"),
                TestHelper.GetTestFileName("Test.shared.vb"),
            };

            // Full types
            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(@"FullTypeNames\Scenarios", "CG_Scenarios_FullTypes_2", "TestProvider_Scenarios.g",
                types, string.Empty, sharedFiles, true);
            // Simulate that this attribute is shared to cause code gen to propagate it
            options.AddSharedType(typeof(CustomNamespace.CustomAttribute));
            options.AddSharedType(typeof(TestEnum));
            options.AddSharedType(typeof(System.Xml.Linq.XElement));

            TestHelper.ValidateCodeGen(options);
        }
コード例 #6
0
        public void TestClientCodegen_Scenarios_CodeGen_FullTypes()
        {
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("Mock.shared.cs"),
                TestHelper.GetTestFileName("Mock.shared.vb")
            };

            // Full types
            var options = new TestHelper.CodeGenValidationOptions(@"FullTypeNames\Scenarios", "CG_Scenarios_FullTypes_1", "TestProvider_Scenarios_CodeGen.g",
                typeof(TestDomainServices.TestProvider_Scenarios_CodeGen), sharedFiles, true);
            // Simulate that this attribute is shared to cause code gen to propagate it
            options.AddSharedType(typeof(CustomNamespace.CustomAttribute));
            options.AddSharedType(typeof(TestEnum));
            TestHelper.ValidateCodeGen(options);
        }
コード例 #7
0
        public void TestClientCodegen_InterfaceInheritanceScenarios()
        {
            string[] sharedFiles = new string[]
            {
                TestHelper.GetTestFileName("Mock.shared.cs"),
                TestHelper.GetTestFileName("Mock.shared.vb")
            };

            // Default
            TestHelper.CodeGenValidationOptions options = new TestHelper.CodeGenValidationOptions(@"Default\Scenarios", "CG_Scenarios_INTF", "InterfaceInheritance.g",
                typeof(TestDomainServices.InterfaceInheritanceDomainService), sharedFiles, false);
            options.AddSharedType(typeof(System.Xml.Linq.XElement));
            TestHelper.ValidateCodeGen(options);
        }