예제 #1
0
        public void TestString()
        {
            var commandChannel = Mock.Of <ICommandChannel>(m =>
                                                           m.FetchValue(It.IsAny <string>(), It.IsAny <IEnumerable <KeyValuePair <string, IConvertible> > >()) == "str"
                                                           );

            var executor = new SingleValueExecutor();

            Assert.AreEqual("str", executor.ExecuteOnAdapter(commandChannel, "string"));
        }
예제 #2
0
        public void TestDateTime()
        {
            var commandChannel = Mock.Of <ICommandChannel>(m =>
                                                           m.FetchValue(It.IsAny <string>(), It.IsAny <IEnumerable <KeyValuePair <string, IConvertible> > >()) == (IConvertible)DateTime.MinValue
                                                           );

            var executor = new SingleValueExecutor();

            Assert.AreEqual(DateTime.MinValue, executor.ExecuteOnAdapter(commandChannel, "date"));
        }
예제 #3
0
        public async Task TestExceptionsNotSwallowedAsync()
        {
            var executor = new SingleValueExecutor();

            var commandChannel = new Mock <IAsyncCommandChannel>();

            commandChannel
            .Setup(m => m.FetchValueAsync(It.IsAny <string>(), It.IsAny <IDictionary <string, IConvertible> >()))
            .Throws <VerySpecificException>();

            await Assert.ThrowsExceptionAsync <VerySpecificException>(async() => await executor.ExecuteOnAdapterAsync(commandChannel.Object, ""));
        }
예제 #4
0
        public void TestExceptionsNotSwallowed()
        {
            var executor = new SingleValueExecutor();

            var commandChannel = new Mock <ICommandChannel>();

            commandChannel
            .Setup(m => m.FetchValue(It.IsAny <string>(), It.IsAny <IDictionary <string, IConvertible> >()))
            .Throws <VerySpecificException>();

            Assert.ThrowsException <VerySpecificException>(() => executor.ExecuteOnAdapter(commandChannel.Object, ""));
        }
예제 #5
0
        public ITableSelect <IConvertible> Select(string column)
        {
            var executor = new SingleValueExecutor();

            return(SelectCustom(executor, column));
        }