コード例 #1
0
        public void CreateReader_WithoutPlaceholders_DoesNotChangeSql()
        {
            // arrange
            var mockEnvironmentWrapper = Substitute.For <IEnvironmentWrapper>();
            var inputSql = "select 1;";

            // act
            var outputSql = new SqlStreamReaderBuilder(mockEnvironmentWrapper)
                            .CreateReader(ParsingUtility.GenerateStreamFromString(inputSql))
                            .ReadToEnd();

            // assert
            Assert.AreEqual(inputSql, outputSql);
        }
コード例 #2
0
        public void CreateReader_WithPlaceholdersButNoEnvironmentVariables_DoesNotChangeSql()
        {
            // arrange
            var mockEnvironmentWrapper = Substitute.For <IEnvironmentWrapper>();

            mockEnvironmentWrapper.GetEnvironmentVariable("bar").ReturnsNull();
            var inputSql = "select 1 where foo = $(bar);";

            // act
            var outputSql = new SqlStreamReaderBuilder(mockEnvironmentWrapper)
                            .CreateReader(ParsingUtility.GenerateStreamFromString(inputSql))
                            .ReadToEnd();

            // assert
            Assert.AreEqual(inputSql, outputSql);
        }
コード例 #3
0
        public void CreateReader_WithPlaceholdersAndSomeEnvironmentVariables_ChangesSql()
        {
            // arrange
            var mockEnvironmentWrapper = Substitute.For <IEnvironmentWrapper>();

            mockEnvironmentWrapper.GetEnvironmentVariable("foo").Returns("foo");
            mockEnvironmentWrapper.GetEnvironmentVariable("bar").ReturnsNull();
            var inputSql = "select 1 where foo = '$(foo)' and bar = '$(bar)';";

            // act
            var outputSql = new SqlStreamReaderBuilder(mockEnvironmentWrapper)
                            .CreateReader(ParsingUtility.GenerateStreamFromString(inputSql))
                            .ReadToEnd();

            // assert
            Assert.AreEqual("select 1 where foo = 'foo' and bar = '$(bar)';", outputSql);
        }