Пример #1
0
        public void Faker_TestRecursion()
        {
            Faker.Faker faker4 = new Faker.Faker(new DictionaryOfGenerators());
            TestClass4  test4  = faker4.Create <TestClass4>();

            Assert.AreNotEqual(null, test4.testClass5);
        }
Пример #2
0
        public void Test()
        {
            var test3 = new TestClass4();

            PartContainer.Fill(test3);
            PartContainer.Fill(typeof(TestClass4));
            Assert.Null(TestClass4.TestProp5);
            Assert.Null(test3.TestProp6);
            foreach (var test in new[] { TestClass4.TestProp, TestClass4.TestProp2, test3.TestProp3, test3.TestProp4 })
            {
                Assert.NotNull(test);
                Assert.Equal(2, test.Count());
                if (test.First() is TestClass1)
                {
                    Assert.IsType <TestClass1>(test.First());
                    Assert.Equal("TestClass1", test.First().ID);
                    Assert.IsType <TestClass2>(test.Last());
                    Assert.Equal("TestClass2", test.Last().ID);
                }
                else
                {
                    Assert.IsType <TestClass2>(test.First());
                    Assert.Equal("TestClass2", test.First().ID);
                    Assert.IsType <TestClass1>(test.Last());
                    Assert.Equal("TestClass1", test.Last().ID);
                }
            }
        }
Пример #3
0
        public static void Main(string[] args)
        {
//            DictionaryOfGenerators dict = new DictionaryOfGenerators();
//            var config = new FakerConfig(dict);
//
//            config.Add<TestClass1, string, StringConfigGenerator>(TestClass1 => TestClass1.str );
//            Faker faker = new Faker(dict);
//            TestClass1 obj = faker.Create<TestClass1>();
//
//            if(obj != null)
//                new ConsoleWriter().GetClassFields<TestClass1>(obj);

//            Faker faker2 = new Faker(new DictionaryOfGenerators());
//            TestClass2 test2 = faker2.Create<TestClass2>();
//            if(test2 != null)
//                new ConsoleWriter().GetClassFields<TestClass2>(test2);

            Faker      faker4 = new Faker(new DictionaryOfGenerators());
            TestClass4 test4  = faker4.Create <TestClass4>();

            if (test4 != null)
            {
                new ConsoleWriter().GetClassFields <TestClass4>(test4);
            }
        }
Пример #4
0
        public void GenericParseWorks4()
        {
            var o = (TestClass4)Bridge.Html5.JSON.Parse("{ \"i\": 3, \"s\": \"test\" }");

            Assert.AreEqual(3, o.i);
            Assert.AreEqual("test", o.s);
            Assert.AreEqual(4, o.Inc());
            Assert.AreEqual(11, TestClass4.Inc(10));
            Assert.True(IsPlainObject(o), "IsPlainObject");
        }
Пример #5
0
        public void NavigateForward_NavigateToModelThatIsAlreadyInChainBeforeCurrent_ChainAfterTheTargetIsEmpty()
        {
            var        kernel         = NinjectBootstrapper.GetKernel(new TestModule());
            var        firstClassMock = new Mock <ViewModelBaseFactory <TestClass1> >();
            TestClass1 instance1      = new TestClass1();

            firstClassMock.Setup(x => x.Get(It.IsAny <object>())).Returns(instance1);

            var        secondClassMock = new Mock <ViewModelBaseFactory <TestClass2> >();
            TestClass2 instance2       = new TestClass2();

            secondClassMock.Setup(x => x.Get(It.IsAny <object>())).Returns(instance2);

            var        thirdClassMock = new Mock <ViewModelBaseFactory <TestClass3> >();
            TestClass3 instance3      = new TestClass3();

            thirdClassMock.Setup(x => x.Get(It.IsAny <object>())).Returns(instance3);

            var        fourthClassMock = new Mock <ViewModelBaseFactory <TestClass4> >();
            TestClass4 instance4       = new TestClass4();

            fourthClassMock.Setup(x => x.Get(It.IsAny <object>())).Returns(instance4);

            var factory = new ChildrenViewModelsFactory(new List <IViewModelFactory>
            {
                firstClassMock.Object,
                secondClassMock.Object,
                thirdClassMock.Object,
                fourthClassMock.Object,
            });

            kernel.Bind <IViewModelNavigator>()
            .To <ViewModelNavigator>()
            .WithConstructorArgument("childrenViewModelsFactory", factory);

            var nav = kernel.Get <IViewModelNavigator>();

            nav.NavigateForward(instance1);
            nav.NavigateForward <TestClass2>(instance1, null);
            nav.NavigateForward <TestClass3>(instance2, null);
            nav.NavigateForward <TestClass4>(instance3, null);

            nav.NavigateForward <TestClass1>(instance4, null);

            FieldInfo storage = typeof(ViewModelNavigator).GetField("_storage", BindingFlags.NonPublic | BindingFlags.Instance);
// ReSharper disable once PossibleNullReferenceException
            ViewModelStorage store = (ViewModelStorage)storage.GetValue(nav);
            FieldInfo        order = typeof(ViewModelStorage).GetField("_navigationOrder", BindingFlags.NonPublic | BindingFlags.Instance);
// ReSharper disable once PossibleNullReferenceException
            LinkedList <BaseViewModel> orderVal = (LinkedList <BaseViewModel>)order.GetValue(store);

            Assert.IsTrue(orderVal.Count == 1);
        }
Пример #6
0
        public void Autosubscribe_Parameterless()
        {
            using (var wait = new ManualResetEvent(false))
            {
                var target = new MessageBus();
                var obj    = new TestClass4(wait);
                var token  = target.AutoWireupSubscribers(obj);

                target.Publish("test");
                wait.WaitOne(2000).Should().Be(true);
            }
        }
        public void CascadeConstructor()
        {
            var Temp = new Utilities.IoC.Default.DefaultBootstrapper(AppDomain.CurrentDomain.GetAssemblies(), AppDomain.CurrentDomain.GetAssemblies().Types());

            Temp.RegisterAll <ITestClass>();
            Temp.Register <TestClass3>();
            Temp.Register <TestClass4>();
            TestClass4 Object = Temp.Resolve <TestClass4>();

            Assert.NotNull(Object);
            Assert.NotNull(Object.Class);
            Assert.Equal(2, Object.Class.Classes.Count());
        }
Пример #8
0
        public void When_setting_with_multiple_groups_Then_returns_true()
        {
            var obj = new TestClass4()
            {
                ID = 1, G2SID = "LOL"
            };
            var  results = new Collection <ValidationResult>();
            var  context = new ValidationContext(obj, null, null);
            bool valid   = Validator.TryValidateObject(obj, context, results, true);

            Assert.That(valid, Is.True);
            Assert.That(results, Has.Count.EqualTo(0));
        }
Пример #9
0
        public void GetDeclareTestClass4ScriptTest()
        {
            var message = "testMessage";
            var item    = new TestClass4();

            item.Function1 = r => new TestClass4Item {
                Field1 = r.Field1, Field2 = message, Field3 = r
            };

            var script = provider.GetDeclareClassScript(item);

            Assert.AreEqual(DeclareClassScript4, script);
        }
Пример #10
0
        public void GenericParseWithCallbackWorks4()
        {
            var o = (TestClass4)Bridge.Html5.JSON.Parse("{ \"i\": 3, \"s\": \"test\" }", (s, x) => { if (s == "i")
                                                                                                     {
                                                                                                         return(100);
                                                                                                     }
                                                                                                     return(x); });

            Assert.AreEqual(100, o.i);
            Assert.AreEqual("test", o.s);
            Assert.AreEqual(101, o.Inc());
            Assert.AreEqual(11, TestClass4.Inc(10));
            Assert.True(IsPlainObject(o), "IsPlainObject");
        }
Пример #11
0
        public void Test2()
        {
            var test = new TestClass4();

            Assert.Null(test.Get1);
            Assert.Null(test.Get2);
            Assert.Null(test.Get3);
            PartContainer.Fill(test);
            Assert.NotNull(test.Get1);
            Assert.NotNull(test.Get2);
            Assert.NotNull(test.Get3);
            Assert.Equal(typeof(string), test.Get1());
            Assert.Equal(typeof(int), test.Get2());
            Assert.Equal(typeof(int), test.Get3(1));
        }
Пример #12
0
        public void HappyPathDateTimeOffsetCrossTypes()
        {
            var results = new List <ValidationResult>();

            var request = new TestClass4
            {
                Start = DateTime.Today,
                End   = DateTimeOffset.Now.AddDays(-1)
            };

            var context = new ValidationContext(request);
            var isValid = new DataAnnotationsValidator(new DottedNumberCollectionPropertyNamingStrategy()).TryValidateObjectRecursive(request, results, context);

            Assert.IsFalse(isValid);
            Assert.AreEqual("Start must be before End", results[0].ErrorMessage);
            Assert.AreEqual(1, results[0].MemberNames.Count());
        }
Пример #13
0
        public void NavigateForward_NavigateToModelThatIsAlreadyInChainAfterCurrent_ChainContainsTwoItems()
        {
            var kernel = NinjectBootstrapper.GetKernel(new TestModule());
            var firstClassMock = new Mock<ViewModelBaseFactory<TestClass1>>();
            TestClass1 instance1 = new TestClass1();
            firstClassMock.Setup(x => x.Get(It.IsAny<object>())).Returns(instance1);

            var secondClassMock = new Mock<ViewModelBaseFactory<TestClass2>>();
            TestClass2 instance2 = new TestClass2();
            secondClassMock.Setup(x => x.Get(It.IsAny<object>())).Returns(instance2);

            var thirdClassMock = new Mock<ViewModelBaseFactory<TestClass3>>();
            TestClass3 instance3 = new TestClass3();
            thirdClassMock.Setup(x => x.Get(It.IsAny<object>())).Returns(instance3);

            var fourthClassMock = new Mock<ViewModelBaseFactory<TestClass4>>();
            TestClass4 instance4 = new TestClass4();
            fourthClassMock.Setup(x => x.Get(It.IsAny<object>())).Returns(instance4);

            var factory = new ChildrenViewModelsFactory(new List<IViewModelFactory>
                                                        {
                                                            firstClassMock.Object,
                                                            secondClassMock.Object,
                                                            thirdClassMock.Object,
                                                            fourthClassMock.Object,
                                                        });

            kernel.Bind<IViewModelNavigator>()
                .To<ViewModelNavigator>()
                .WithConstructorArgument("childrenViewModelsFactory", factory);

            var nav = kernel.Get<IViewModelNavigator>();
            nav.NavigateForward(instance1);
            nav.NavigateForward<TestClass2>(instance1, null);
            nav.NavigateBack(instance2);
            nav.NavigateForward<TestClass2>(instance1, null);

            FieldInfo storage = typeof(ViewModelNavigator).GetField("_storage", BindingFlags.NonPublic | BindingFlags.Instance);
            // ReSharper disable once PossibleNullReferenceException
            ViewModelStorage store = (ViewModelStorage)storage.GetValue(nav);
            FieldInfo order = typeof(ViewModelStorage).GetField("_navigationOrder", BindingFlags.NonPublic | BindingFlags.Instance);
            // ReSharper disable once PossibleNullReferenceException
            LinkedList<BaseViewModel> orderVal = (LinkedList<BaseViewModel>)order.GetValue(store);
            Assert.IsTrue(orderVal.Count == 2);
        }
        public void TestGetInstancesWithInstanceGeneric()
        {
            const string key1 = "MyKey1";
            const string key2 = "MyKey2";

            var instanceOriginal1 = new TestClass();
            var instanceOriginal2 = new TestClass();
            var instanceOriginal3 = new TestClass4();

            SimpleIoc.Default.Reset();
            SimpleIoc.Default.Register <ITestClass>(() => instanceOriginal1, key1);
            SimpleIoc.Default.Register <ITestClass>(() => instanceOriginal2, key2);

            var instance1 = SimpleIoc.Default.GetInstance <ITestClass>(key1);
            var instance2 = SimpleIoc.Default.GetInstance <ITestClass>(key1);
            var instance3 = SimpleIoc.Default.GetInstance <ITestClass>(key2);

            Assert.IsNotNull(instance1);
            Assert.IsNotNull(instance2);
            Assert.IsNotNull(instance3);

            Assert.IsInstanceOfType(instance1, typeof(TestClass));
            Assert.IsInstanceOfType(instance2, typeof(TestClass));
            Assert.IsInstanceOfType(instance3, typeof(TestClass));

            Assert.AreSame(instance1, instance2);
            Assert.AreNotSame(instance1, instance3);

            SimpleIoc.Default.Register <ITestClass>(() => instanceOriginal3, key1);

            var instance4 = SimpleIoc.Default.GetInstance <ITestClass>(key1);

            Assert.IsNotNull(instance4);

            Assert.IsInstanceOfType(instance4, typeof(TestClass4));
            Assert.AreSame(instanceOriginal3, instance4);
            Assert.AreNotSame(instance1, instance4);
        }
Пример #15
0
        public void TestGetAllInstancesWithInstance()
        {
            const string key1 = "MyKey1";
            const string key2 = "MyKey2";
            const string key3 = "MyKey3";
            const string key4 = "MyKey4";
            const string key5 = "MyKey5";
            const string key6 = "MyKey6";

            var instanceOriginal1 = new TestClass();
            var instanceOriginal2 = new TestClass();
            var instanceOriginal3 = new TestClass();
            var instanceOriginal4 = new TestClass();
            var instanceOriginal5 = new TestClass4();
            var instanceOriginal6 = new TestClass4();

            SimpleIoc.Default.Reset();
            SimpleIoc.Default.Register(() => instanceOriginal1, key1);
            SimpleIoc.Default.Register(() => instanceOriginal2, key2);
            SimpleIoc.Default.Register(() => instanceOriginal3, key3);
            SimpleIoc.Default.Register(() => instanceOriginal4, key4);
            SimpleIoc.Default.Register(() => instanceOriginal5, key5);
            SimpleIoc.Default.Register(() => instanceOriginal6, key6);

            var instance1 = SimpleIoc.Default.GetInstance<TestClass>(key1);
            var instance2 = SimpleIoc.Default.GetInstance<TestClass>(key2);
            var instance3 = SimpleIoc.Default.GetInstance<TestClass>(key3);
            var instance4 = SimpleIoc.Default.GetInstance<TestClass>(key4);
            var instance5 = SimpleIoc.Default.GetInstance<TestClass4>(key5);
            var instance6 = SimpleIoc.Default.GetInstance<TestClass4>(key6);

            Assert.IsNotNull(instance1);
            Assert.IsNotNull(instance2);
            Assert.IsNotNull(instance3);
            Assert.IsNotNull(instance4);
            Assert.IsNotNull(instance5);
            Assert.IsNotNull(instance6);

            var allInstances = SimpleIoc.Default.GetAllInstances(typeof(TestClass));
            Assert.AreEqual(4, allInstances.Count());

            foreach (var instance in allInstances)
            {
                Assert.IsNotNull(instance);

                if (instance.Equals(instance1))
                {
                    instance1 = null;
                }

                if (instance.Equals(instance2))
                {
                    instance2 = null;
                }

                if (instance.Equals(instance3))
                {
                    instance3 = null;
                }

                if (instance.Equals(instance4))
                {
                    instance4 = null;
                }

                if (instance.Equals(instance5))
                {
                    instance5 = null;
                }

                if (instance.Equals(instance6))
                {
                    instance6 = null;
                }
            }

            Assert.IsNull(instance1);
            Assert.IsNull(instance2);
            Assert.IsNull(instance3);
            Assert.IsNull(instance4);
            Assert.IsNotNull(instance5);
            Assert.IsNotNull(instance6);
        }
Пример #16
0
 public static void Moo <N, O>(TestClass4 <N> p1, int p2) where N : NoOneSubclasses, new()
 {
 }
        public void TestGetAllInstancesWithInstanceGeneric()
        {
            const string key1 = "MyKey1";
            const string key2 = "MyKey2";
            const string key3 = "MyKey3";
            const string key4 = "MyKey4";
            const string key5 = "MyKey5";
            const string key6 = "MyKey6";

            var instanceOriginal1 = new TestClass();
            var instanceOriginal2 = new TestClass();
            var instanceOriginal3 = new TestClass();
            var instanceOriginal4 = new TestClass();
            var instanceOriginal5 = new TestClass4();
            var instanceOriginal6 = new TestClass4();

            SimpleIoc.Default.Reset();
            SimpleIoc.Default.Register(() => instanceOriginal1, key1);
            SimpleIoc.Default.Register(() => instanceOriginal2, key2);
            SimpleIoc.Default.Register(() => instanceOriginal3, key3);
            SimpleIoc.Default.Register(() => instanceOriginal4, key4);
            SimpleIoc.Default.Register(() => instanceOriginal5, key5);
            SimpleIoc.Default.Register(() => instanceOriginal6, key6);

            var instance1 = SimpleIoc.Default.GetInstance <TestClass>(key1);
            var instance2 = SimpleIoc.Default.GetInstance <TestClass>(key2);
            var instance3 = SimpleIoc.Default.GetInstance <TestClass>(key3);
            var instance4 = SimpleIoc.Default.GetInstance <TestClass>(key4);
            var instance5 = SimpleIoc.Default.GetInstance <TestClass4>(key5);
            var instance6 = SimpleIoc.Default.GetInstance <TestClass4>(key6);

            Assert.IsNotNull(instance1);
            Assert.IsNotNull(instance2);
            Assert.IsNotNull(instance3);
            Assert.IsNotNull(instance4);
            Assert.IsNotNull(instance5);
            Assert.IsNotNull(instance6);

            var allInstances = SimpleIoc.Default.GetAllInstances <TestClass>();

            Assert.AreEqual(4, allInstances.Count());

            foreach (var instance in allInstances)
            {
                Assert.IsNotNull(instance);

                if (instance.Equals(instance1))
                {
                    instance1 = null;
                }

                if (instance.Equals(instance2))
                {
                    instance2 = null;
                }

                if (instance.Equals(instance3))
                {
                    instance3 = null;
                }

                if (instance.Equals(instance4))
                {
                    instance4 = null;
                }

                if (instance.Equals(instance5))
                {
                    instance5 = null;
                }

                if (instance.Equals(instance6))
                {
                    instance6 = null;
                }
            }

            Assert.IsNull(instance1);
            Assert.IsNull(instance2);
            Assert.IsNull(instance3);
            Assert.IsNull(instance4);
            Assert.IsNotNull(instance5);
            Assert.IsNotNull(instance6);
        }
Пример #18
0
        public void TestGetInstancesWithInstanceGeneric()
        {
            const string key1 = "MyKey1";
            const string key2 = "MyKey2";

            var instanceOriginal1 = new TestClass();
            var instanceOriginal2 = new TestClass();
            var instanceOriginal3 = new TestClass4();

            SimpleIoc.Default.Reset();
            SimpleIoc.Default.Register<ITestClass>(() => instanceOriginal1, key1);
            SimpleIoc.Default.Register<ITestClass>(() => instanceOriginal2, key2);

            var instance1 = SimpleIoc.Default.GetInstance<ITestClass>(key1);
            var instance2 = SimpleIoc.Default.GetInstance<ITestClass>(key1);
            var instance3 = SimpleIoc.Default.GetInstance<ITestClass>(key2);

            Assert.IsNotNull(instance1);
            Assert.IsNotNull(instance2);
            Assert.IsNotNull(instance3);

            Assert.IsInstanceOfType(instance1, typeof(TestClass));
            Assert.IsInstanceOfType(instance2, typeof(TestClass));
            Assert.IsInstanceOfType(instance3, typeof(TestClass));

            Assert.AreSame(instance1, instance2);
            Assert.AreNotSame(instance1, instance3);

            SimpleIoc.Default.Register<ITestClass>(() => instanceOriginal3, key1);

            var instance4 = SimpleIoc.Default.GetInstance<ITestClass>(key1);
            Assert.IsNotNull(instance4);

            Assert.IsInstanceOfType(instance4, typeof(TestClass4));
            Assert.AreSame(instanceOriginal3, instance4);
            Assert.AreNotSame(instance1, instance4);
        }