예제 #1
0
        public void Register(IAppHost appHost)
        {
            var nativeTypesMeta = new NativeTypesMetadata(appHost.Metadata, MetadataTypesConfig);

            appHost.Register <INativeTypesMetadata>(nativeTypesMeta);

            DefaultGenerator = nativeTypesMeta.GetGenerator();

            appHost.RegisterService <NativeTypesService>();
        }
예제 #2
0
        public void Can_access_enum_with_Equals_member()
        {
            var enumNames  = new List <string>();
            var enumValues = new List <string>();

            var type  = typeof(ComparisonOperator);
            var names = Enum.GetNames(type);

            for (var i = 0; i < names.Length; i++)
            {
                var name       = names[i];
                var enumMember = MetadataTypesGenerator.GetEnumMember(type, name);
                var value      = enumMember.GetRawConstantValue();
                var enumValue  = Convert.ToInt64(value).ToString();

                enumNames.Add(name);
                enumValues.Add(enumValue);
            }

            Assert.That(enumNames, Is.EquivalentTo(new[] { "Equals", "NotEqual" }));
            Assert.That(enumValues, Is.EquivalentTo(new[] { "0", "1" }));
        }