public void Decorate_MultiDataSource_Test()
        {
            // Arrange
            const string        EXPECTED_DS_NAME     = "Hoge";
            const string        NOT_EXPECTED_DS_NAME = "Huga";
            ConnectionDecorator target      = new ConnectionDecorator();
            MultiDataSource     dataSources = new MultiDataSource();

            dataSources.RegisterDataSource(EXPECTED_DS_NAME, new TestDataSource2());
            dataSources.RegisterDataSource(NOT_EXPECTED_DS_NAME, new TestDataSource());
            target.DataSource = dataSources;

            var scopeArgs = new Dictionary <string, object>();

            scopeArgs[QuillKey.DATA_SOURCE_NAME] = EXPECTED_DS_NAME;

            // Act/Assert
            target.Decorate(TestAction, scopeArgs);
        }
示例#2
0
        private IComponentCreator CreateComponentCreator()
        {
            var creator = new ComponentCreators();

            creator.AddCreator(typeof(IDataSource), t => {
                var source = new MultiDataSource();
                source.RegisterDataSource("HogeSource", new DataSourceImpl(() => new ConnectionImpl()));
                return(source);
            });

            return(creator);
        }
        public void Decorate_MultiDataSource_Default_Test()
        {
            // Arrange
            const string        NOT_EXPECTED_DS_NAME = "Hoge";
            ConnectionDecorator target      = new ConnectionDecorator();
            MultiDataSource     dataSources = new MultiDataSource();

            dataSources.DefaultDataSource = new TestDataSource();
            dataSources.RegisterDataSource(NOT_EXPECTED_DS_NAME, new TestDataSource2());
            target.DataSource = dataSources;

            // Act/Assert
            target.Decorate(TestActionNoAttr);
        }
示例#4
0
        public void GetConnection_DataSourceName_Test()
        {
            // Arrange
            const string TEST_DS_NAME = "HogeSource";
            var          source       = new MultiDataSource();

            source.RegisterDataSource(TEST_DS_NAME, new DataSourceImpl(() => new MultiDsTestConnection()));

            // Act
            var actual = source.GetConnection(TEST_DS_NAME);

            // Assert
            Assert.IsNotNull(actual);
        }
示例#5
0
        public void RegisterDataSourceTest()
        {
            // Arrange
            const int EXPECTED = 1;
            var       source   = new MultiDataSource();
            var       fi       = source.GetType().GetField("_sources", BindingFlags.NonPublic | BindingFlags.Instance);
            var       actual   = (IDictionary <string, IDataSource>)fi.GetValue(source);

            // Act
            source.RegisterDataSource("HogeSource", new DataSourceImpl(() => new MultiDsTestConnection()));

            // Assert
            Assert.AreEqual(EXPECTED, actual.Count());
        }
        public void Decorate_MultiDataSource_Exception_Test()
        {
            // Arrange
            const string        NOT_EXPECTED_DS_NAME = "Huga";
            ConnectionDecorator target      = new ConnectionDecorator();
            MultiDataSource     dataSources = new MultiDataSource();

            dataSources.RegisterDataSource(NOT_EXPECTED_DS_NAME, new TestDataSource());
            target.DataSource = dataSources;

            var scopeArgs = new Dictionary <string, object>();

            scopeArgs[QuillKey.DATA_SOURCE_NAME] = "HogeSource";

            // Act/Assert
            TestUtils.ExecuteExcectedException <ArgumentException>(
                () => target.Decorate(TestAction, scopeArgs));
        }