public void Test_Success()
        {
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, string.Empty, stream);

            Assert.AreEqual(true, response.Success);
        }
        public void Test_Any()
        {
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, string.Empty, stream);

            Assert.IsTrue(response.Rows.Any());
        }
        public void Test_Message()
        {
            const string message  = "message";
            var          stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var          response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, message, stream);

            Assert.AreEqual(message, response.Message);
        }
        public void Test_StatusCode()
        {
            const HttpStatusCode statusCode = HttpStatusCode.Accepted;
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, statusCode, string.Empty, stream);

            Assert.AreEqual(statusCode, response.StatusCode);
        }
        public void Test_Repeat_Enumeration()
        {
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, string.Empty, stream);

            Assert.AreEqual(10, response.Rows.ToList().Count);
            Assert.Throws <StreamAlreadyReadException>(() => response.Rows.ToList());
        }
        public void Test_First()
        {
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, string.Empty, stream);

            var first = response.Rows.First();

            Assert.IsNotNull(first);
        }
Esempio n. 7
0
        public async Task Test_Message()
        {
            const string message    = "message";
            var          stream     = ResourceHelper.ReadResourceAsStream(ViewResultResourceName);
            var          serializer = new DefaultSerializer();
            var          response   = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, message, stream, serializer);
            await response.InitializeAsync();

            Assert.Equal(message, response.Message);
        }
Esempio n. 8
0
        public async Task Test_StatusCode()
        {
            const HttpStatusCode statusCode = HttpStatusCode.Accepted;
            var stream     = ResourceHelper.ReadResourceAsStream(ViewResultResourceName);
            var serializer = new DefaultSerializer();
            var response   = new StreamingViewResult <dynamic, dynamic>(statusCode, string.Empty, stream, serializer);
            await response.InitializeAsync();

            Assert.Equal(statusCode, response.StatusCode);
        }
Esempio n. 9
0
        public async Task GetAsyncEnumerator_HasNotInitialized_InvalidOperationException()
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(@"Documents\Views\200-success.json");

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());

            // Act/Assert

            await Assert.ThrowsAsync <InvalidOperationException>(() => viewResult.ToListAsync().AsTask()).ConfigureAwait(false);
        }
        public void Test_Enumeration()
        {
            var stream   = ResourceHelper.ReadResourceAsStream(@"Data\view_result.json");
            var response = new StreamingViewResult <Beer>(true, HttpStatusCode.OK, string.Empty, stream);

            //read the results
            var count = 0;

            foreach (var beer in response.Rows)
            {
                count++;
            }
            Assert.AreEqual(10, count);
        }
        public async Task InitializeAsync_CalledTwice_InvalidOperationException()
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(@"Documents\Views\200-success.json");

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());

            // Act/Assert

            await viewResult.InitializeAsync();

            await Assert.ThrowsAsync <InvalidOperationException>(async() => await viewResult.InitializeAsync());
        }
Esempio n. 12
0
        public async Task Test_TotalRows()
        {
            var stream     = ResourceHelper.ReadResourceAsStream(ViewResultResourceName);
            var serializer = new DefaultSerializer();
            var response   = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, string.Empty, stream, serializer);
            await response.InitializeAsync();

            await foreach (var row in response)
            {
                // noop
            }

            Assert.Equal(4u, response.MetaData.TotalRows);
        }
Esempio n. 13
0
        public async Task GetAsyncEnumerator_CalledTwice_StreamAlreadyReadException(string filename)
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(filename);

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());
            await viewResult.InitializeAsync().ConfigureAwait(false);

            // Act/Assert

            await viewResult.ToListAsync().ConfigureAwait(false);

            await Assert.ThrowsAsync <StreamAlreadyReadException>(() => viewResult.ToListAsync().AsTask()).ConfigureAwait(false);
        }
Esempio n. 14
0
        public async Task GetAsyncEnumerator_NoStream_Empty()
        {
            // Arrange

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", new DefaultSerializer());

            // Act

            await viewResult.InitializeAsync().ConfigureAwait(false);

            var result = await viewResult.ToListAsync().ConfigureAwait(false);

            // Assert

            Assert.Empty(result);
        }
Esempio n. 15
0
        public async Task InitializeAsync_Success_PreResultFieldsPresent()
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(@"Documents\Views\200-success.json");

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());

            // Act

            await viewResult.InitializeAsync().ConfigureAwait(false);

            // Assert

            Assert.Equal(4u, viewResult.MetaData.TotalRows);
        }
Esempio n. 16
0
        public async Task GetAsyncEnumerator_HasInitialized_GetsResults()
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(@"Documents\Views\200-success.json");

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());
            await viewResult.InitializeAsync().ConfigureAwait(false);

            // Act

            var result = await viewResult.ToListAsync().ConfigureAwait(false);

            // Assert

            Assert.NotEmpty(result);
        }
        public async Task GetAsyncEnumerator_AfterEnumeration_PreResultFieldsStillPresent()
        {
            // Arrange

            using var stream = ResourceHelper.ReadResourceAsStream(@"Documents\Views\200-success.json");

            using var viewResult = new StreamingViewResult <dynamic, dynamic>(HttpStatusCode.OK, "OK", stream, new DefaultSerializer());
            await viewResult.InitializeAsync();

            // Act

            await viewResult.ToListAsync();

            // Assert

            Assert.Equal(4u, viewResult.MetaData.TotalRows);
        }