コード例 #1
0
        public void Generic_Invoke_WithAction_ReturnsConfiguration()
        {
            EngineConfigurationTypeBuilder <SimpleMethodClass>  configuration = new EngineConfigurationTypeBuilder <SimpleMethodClass>();
            IEngineConfigurationTypeBuilder <SimpleMethodClass> returnValue   = configuration.Invoke(x => x.ReturnSomething());

            Assert.AreEqual(configuration, returnValue);
        }
コード例 #2
0
        public void NonGeneric_SetupMethod_ReturnsConfiguration()
        {
            EngineConfigurationTypeBuilder  configuration = new EngineConfigurationTypeBuilder(typeof(SimpleMethodClass));
            IEngineConfigurationTypeBuilder returnValue   = configuration.SetupMethod("ReturnSomething");

            Assert.AreEqual(configuration, returnValue);
        }
コード例 #3
0
        public void NonGeneric_Setup_WithProperty_ReturnsMemberConfiguration()
        {
            IEngineConfigurationTypeBuilder       configuration       = new EngineConfigurationTypeBuilder(typeof(SimplePropertyClass));
            IEngineConfigurationTypeMemberBuilder memberConfiguration = configuration.SetupProperty("SomeProperty");

            Assert.NotNull(memberConfiguration);
        }
コード例 #4
0
        public void Generic_Setup_WithField_ReturnsMemberConfiguration()
        {
            EngineConfigurationTypeBuilder <SimpleFieldClass> configuration = new EngineConfigurationTypeBuilder <SimpleFieldClass>();
            IEngineConfigurationTypeMemberBuilder <SimpleFieldClass, String> memberConfiguration = configuration.Setup(x => x.SomeField);

            Assert.NotNull(memberConfiguration);
        }
コード例 #5
0
        public void NonGeneric_Setup_WithField_ReturnsMemberConfiguration()
        {
            IEngineConfigurationTypeBuilder       configuration       = new EngineConfigurationTypeBuilder(typeof(SimpleFieldClass));
            IEngineConfigurationTypeMemberBuilder memberConfiguration = configuration.SetupField("SomeField");

            Assert.NotNull(memberConfiguration);
        }
コード例 #6
0
        public void GetConfigurationType_ReturnsType()
        {
            IEngineConfigurationTypeProvider configuration = new EngineConfigurationTypeBuilder <SimpleFieldClass>();
            Type type = configuration.GetConfigurationType();

            Assert.AreEqual(typeof(SimpleFieldClass), type);
        }
コード例 #7
0
        public void NotGeneric_UseInvalidDataSourceWithArgs_ThrowsArgumentException()
        {
            EngineConfigurationTypeBuilder       configuration         = new EngineConfigurationTypeBuilder(typeof(SimpleUser));
            EngineConfigurationTypeMemberBuilder propertyConfiguration = new EngineConfigurationTypeMemberBuilder(null, configuration);

            Assert.Throws <ArgumentException>(() => { propertyConfiguration.Use(typeof(SimpleUser), 0, 1, 10); });
        }
コード例 #8
0
        public void NotGeneric_UseWithArgs_ReturnsTypeBuilder()
        {
            EngineConfigurationTypeBuilder       configuration         = new EngineConfigurationTypeBuilder(typeof(SimpleUser));
            EngineConfigurationTypeMemberBuilder propertyConfiguration = new EngineConfigurationTypeMemberBuilder(null, configuration);

            IEngineConfigurationTypeBuilder returnedConfiguration = propertyConfiguration.Use(typeof(SimpleDataSource), 0, 1, 10);

            Assert.AreEqual(configuration, returnedConfiguration);
        }
コード例 #9
0
        public void Invoke_WithInvalidGenericMethodCall_ThrowsArgumentException()
        {
            EngineConfigurationTypeBuilder <SimpleMethodClass> configuration = new EngineConfigurationTypeBuilder <SimpleMethodClass>();

            Assert.Throws <ArgumentException>(() =>
            {
                configuration.Invoke(x => x.SetSomething(TestGenericClass.Something <string>()));
            });
        }
コード例 #10
0
        public void Invoke_WithInvalidMethodCall_ThrowsArgumentException()
        {
            EngineConfigurationTypeBuilder <SimpleMethodClass> configuration = new EngineConfigurationTypeBuilder <SimpleMethodClass>();

            Assert.Throws <ArgumentException>(() =>
            {
                configuration.Invoke(x => x.SetSomething(new SimpleMethodClass().ReturnSomething()));
            });
        }
コード例 #11
0
        public void NotGeneric_Default_ReturnsTypeBuilder()
        {
            EngineConfigurationTypeBuilder       configuration         = new EngineConfigurationTypeBuilder(typeof(SimpleUser));
            EngineConfigurationTypeMemberBuilder propertyConfiguration = new EngineConfigurationTypeMemberBuilder(null, configuration);

            IEngineConfigurationTypeBuilder returnedConfiguration = propertyConfiguration.Default();

            Assert.AreEqual(configuration, returnedConfiguration);
        }
コード例 #12
0
        public void Generic_UseWithArgs_ReturnsTypeBuilder()
        {
            EngineConfigurationTypeBuilder <SimpleUser> configuration = new EngineConfigurationTypeBuilder <SimpleUser>();
            EngineConfigurationTypeMemberBuilder <SimpleUser, string> propertyConfiguration = new EngineConfigurationTypeMemberBuilder <SimpleUser, string>(null, configuration);

            IEngineConfigurationTypeBuilder <SimpleUser> returnedConfiguration = propertyConfiguration.Use <SimpleDataSource>(0, 1, 10);

            Assert.AreEqual(configuration, returnedConfiguration);
        }
コード例 #13
0
        public void Generic_Default_ReturnsTypeBuilder()
        {
            EngineConfigurationTypeBuilder <SimpleUser> configuration = new EngineConfigurationTypeBuilder <SimpleUser>();
            EngineConfigurationTypeMemberBuilder <SimpleUser, string> propertyConfiguration = new EngineConfigurationTypeMemberBuilder <SimpleUser, string>(null, configuration);

            IEngineConfigurationTypeBuilder <SimpleUser> returnedConfiguration = propertyConfiguration.Default();

            Assert.AreEqual(configuration, returnedConfiguration);
        }
コード例 #14
0
        public void Generic_Setup_Ctor_With_Factory_Sets_Factory()
        {
            var configuration = new EngineConfigurationTypeBuilder <SimpleCtorClass>();

            configuration.ConstructWith <TestFactory>();

            var t = ((IEngineConfigurationTypeProvider)configuration).GetFactory();

            Assert.AreEqual(typeof(TestFactory), t.Build().GetType());
        }
コード例 #15
0
        public void Generic_Default_ResetsSource()
        {
            EngineConfigurationTypeBuilder <SimpleUser> configuration = new EngineConfigurationTypeBuilder <SimpleUser>();
            EngineConfigurationTypeMemberBuilder <SimpleUser, string> propertyConfiguration = new EngineConfigurationTypeMemberBuilder <SimpleUser, string>(null, configuration);

            propertyConfiguration.Use <SimpleDataSource>();
            propertyConfiguration.Default();

            Assert.AreEqual(0, propertyConfiguration.GetDatasources().Count());
        }
コード例 #16
0
        public void NonGeneric_SetupMethodWithParameters_ReturnsConfiguration()
        {
            EngineConfigurationTypeBuilder configuration = new EngineConfigurationTypeBuilder(typeof(SimpleMethodClass));
            var context = new MethodInvocationContext();

            context.AddArgumentValue("Hello");
            IEngineConfigurationTypeBuilder returnValue = configuration.SetupMethod("SetSomething", context);

            Assert.AreEqual(configuration, returnValue);
        }
コード例 #17
0
        public void NotGeneric_Default_ResetsSource()
        {
            EngineConfigurationTypeBuilder       configuration         = new EngineConfigurationTypeBuilder(typeof(SimpleUser));
            EngineConfigurationTypeMemberBuilder propertyConfiguration = new EngineConfigurationTypeMemberBuilder(null, configuration);

            propertyConfiguration.Use(typeof(SimpleDataSource));
            propertyConfiguration.Default();

            Assert.AreEqual(0, propertyConfiguration.GetDatasources().Count());
        }
コード例 #18
0
        public void GetConfigurationMembers_ReturnsMembers()
        {
            EngineConfigurationTypeBuilder <SimpleFieldClass> configuration = new EngineConfigurationTypeBuilder <SimpleFieldClass>();

            configuration.Setup(x => x.SomeField);
            ((IEngineConfigurationTypeBuilder)configuration).SetupField("SomeOtherField");

            var members = ((IEngineConfigurationTypeProvider)configuration).GetConfigurationMembers();

            Assert.AreEqual(2, members.Count());
        }
コード例 #19
0
        public void GetConfigurationMembersWithMethods_ReturnsMembers()
        {
            EngineConfigurationTypeBuilder <SimpleMethodClass> configuration = new EngineConfigurationTypeBuilder <SimpleMethodClass>();

            configuration.Invoke(x => x.SetSomething("Literal"));
            configuration.SetupMethod("ReturnSomething");

            var members = ((IEngineConfigurationTypeProvider)configuration).GetConfigurationMembers();

            Assert.AreEqual(2, members.Count());
        }
コード例 #20
0
        public void Generic_Setup_Ctor_With_Factory_With_Args_Sets_Factory_With_Args()
        {
            var configuration = new EngineConfigurationTypeBuilder <SimpleCtorClass>();

            configuration.ConstructWith <TestFactory>("one", "two");

            var t = (TestFactory)((IEngineConfigurationTypeProvider)configuration).GetFactory().Build();

            Assert.AreEqual("one", t.ArgOne);
            Assert.AreEqual("two", t.ArgTwo);
        }
コード例 #21
0
        public void Generic_GetConfigurationAction_Invalid_ReturnsNULL()
        {
            EngineConfigurationTypeBuilder <SimpleUser> configuration = new EngineConfigurationTypeBuilder <SimpleUser>();
            EngineTypeMember member = ReflectionHelper.GetMember <SimpleUser>(x => x.EmailAddress);

            EngineConfigurationTypeMemberBuilder <SimpleUser, string> propertyConfiguration = new EngineConfigurationTypeMemberBuilder <SimpleUser, string>(
                member, configuration);

            IEngineConfigurationDatasource returnAction = propertyConfiguration.GetDatasources().FirstOrDefault();

            Assert.Null(returnAction);
        }
コード例 #22
0
        public void Generic_GetConfigurationMember_ReturnsConfigurationMember()
        {
            EngineConfigurationTypeBuilder <SimpleUser> configuration = new EngineConfigurationTypeBuilder <SimpleUser>();
            EngineTypeMember member = ReflectionHelper.GetMember <SimpleUser>(x => x.EmailAddress);

            EngineConfigurationTypeMemberBuilder <SimpleUser, string> propertyConfiguration = new EngineConfigurationTypeMemberBuilder <SimpleUser, string>(
                member, configuration);

            EngineTypeMember returnMember = propertyConfiguration.GetConfigurationMember();

            Assert.AreEqual(member, returnMember);
        }
コード例 #23
0
        public void NonGeneric_SetupMethod_WithNonExistentMethod_ThrowsArgumentException()
        {
            EngineConfigurationTypeBuilder configuration = new EngineConfigurationTypeBuilder(typeof(SimpleMethodClass));

            Assert.Throws <ArgumentException>(() => { configuration.SetupMethod("DoesNotExist"); });
        }
コード例 #24
0
        public void NonGeneric_Setup_WithNonExistentField_ThrowsArgumentException()
        {
            IEngineConfigurationTypeBuilder configuration = new EngineConfigurationTypeBuilder(typeof(SimpleFieldClass));

            Assert.Throws <ArgumentException>(() => { configuration.SetupProperty("SomeNonExistantField"); });
        }