コード例 #1
0
 public void SetUp()
 {
     ControlRegistrator.Reset();
     kind = MyEnum.ValueOne;
     type = typeof(MyClass);
     ControlRegistrator.RegisterControl(kind, type);
 }
コード例 #2
0
        private void RunAsRegistrator()
        {
            ControlRegistrator controlRegistrator = new ControlRegistrator();

            controlRegistrator.Dock = DockStyle.Fill;
            Text = "СППР для мед. учреждений (Регистратор)";
            tableLayoutPanel1.Controls.Add(controlRegistrator);
        }
コード例 #3
0
        /// <summary>
        ///A test for GetInstanceOfType
        ///</summary>
        public T GetInstanceOfTypeTestHelper <T>(Enum keyToTest)
            where T : class
        {
            Enum key = keyToTest;
            T    actual;

            actual = ControlRegistrator.GetInstanceOfType <T>(key);
            Assert.IsInstanceOfType(typeof(T), actual);
            return(actual);
        }
コード例 #4
0
        public void GetMultipleInstancesTest1()
        {
            var kind2     = MyEnum.ValueTwo;
            var type2     = typeof(MyParameterClass);
            var parameter = "A String Parameter";

            ControlRegistrator.RegisterControl(kind2, type2);

            var first  = GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, new[] { parameter });
            var second = GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, new[] { parameter });

            Assert.AreEqual(first, second);
            Assert.AreNotSame(first, second);
        }
コード例 #5
0
        /// <summary>
        ///A test for GetInstanceOfType
        ///</summary>
        public T GetInstanceOfTypeTest1Helper <T>(Enum keyToTest, object[] constructorParameters)
            where T : class
        {
            Enum key = keyToTest;

            object[] parameters = constructorParameters;

            // T expected = default(T);
            T actual;

            actual = ControlRegistrator.GetInstanceOfType <T>(key, parameters);
            if (actual != null)
            {
                Assert.IsInstanceOfType(typeof(T), actual);
            }
            return(actual);
        }
コード例 #6
0
        public void GetMultipleInstancesTest()
        {
            var first  = GetInstanceOfTypeTestHelper <MyClass>(kind);
            var second = GetInstanceOfTypeTestHelper <MyClass>(kind);

            Assert.AreNotEqual(first, second);
            Assert.AreNotSame(first, second);

            ControlRegistrator.Reset();
            kind = MyEnum.ValueOne;
            type = typeof(MyClass);
            ControlRegistrator.RegisterControl(kind, type, new SingletonInstance());

            first  = GetInstanceOfTypeTestHelper <MyClass>(kind);
            second = GetInstanceOfTypeTestHelper <MyClass>(kind);
            Assert.AreEqual(first, second);
            Assert.AreSame(first, second);
        }
コード例 #7
0
        public void GetInstanceOfTypeTest1()
        {
            // Construct with parameter.
            var kind2     = MyEnum.ValueTwo;
            var type2     = typeof(MyParameterClass);
            var parameter = "A String Parameter";

            ControlRegistrator.RegisterControl(kind2, type2);
            var actual = GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, new[] { parameter });

            Assert.IsNotNull(actual);

            var expected = parameter;

            Assert.AreEqual(expected, actual.Parameter);

            // wrong parameters.
            Assert.Throws <NullReferenceException>(
                () => GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, null));
            Assert.Throws <NullReferenceException>(
                () => GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, new object[0]));
            Assert.Throws <NullReferenceException>(
                () => GetInstanceOfTypeTest1Helper <MyParameterClass>(kind2, new object[] { 5.5d }));
        }
コード例 #8
0
 public void GetInstanceOfTypeTest()
 {
     GetInstanceOfTypeTestHelper <MyClass>(kind);
     Assert.Throws <KeyNotFoundException>(() => ControlRegistrator.GetInstanceOfType <MyClass>(MyEnum.ValueTwo));
 }
コード例 #9
0
 public void RegisterControlTest()
 {
     Assert.Throws <ArgumentNullException>(() => ControlRegistrator.RegisterControl(null, type));
     Assert.Throws <ArgumentNullException>(() => ControlRegistrator.RegisterControl(kind, null));
 }