public void NormalStoredProcedure_WhenCalledOnSqlConnection_ReturnsCorrectValues()
        {
            // ARRANGE
            const int expectedId = 10;
            const string expectedName = @"Dave";
            const bool expectedActive = true;

            var parameters = new NormalStoredProcedureParameters
            {
                Id = expectedId
            };
            List<NormalStoredProcedureReturnType> results;
            var procedure = new NormalStoredProcedure(parameters);
            var connectionString = ConfigurationManager.ConnectionStrings["IntegrationTestConnection"].ConnectionString;

            // ACT
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                results = connection.ExecuteStoredProcedure(procedure);
            }
            var result = results.First();

            // ASSERT
            Assert.AreEqual(expectedId, result.Id);
            Assert.AreEqual(expectedName, result.Name);
            Assert.AreEqual(expectedActive, result.Active);
        }
        public void NormalStoredProcedure_WhenCalledOnDbContext_ReturnsCorrectValues()
        {
            // ARRANGE
            const int expectedId = 10;
            const string expectedName = @"Dave";
            const bool expectedActive = true;

            var parameters = new NormalStoredProcedureParameters
            {
                Id = expectedId
            };
            var procedure = new NormalStoredProcedure(parameters);

            // ACT
            var results = Context.ExecuteStoredProcedure(procedure);
            var result = results.First();

            // ASSERT
            Assert.AreEqual(expectedId, result.Id);
            Assert.AreEqual(expectedName, result.Name);
            Assert.AreEqual(expectedActive, result.Active);
        }
        public void Parameters_WhenSuppliedProcedureHasParametersAndUsingFluidApi_ParametersAreNull()
        {
            // ARRANGE
            const int expectedParameterCount = 1;
            const int expectedValue = 1;
            var parameters = new NormalStoredProcedureParameters
            {
                Id = 1
            };
            var procedure = new NormalStoredProcedure(parameters);

            // ACT
            var actualParameters = new StoredProcedureSqlParameterBuilder<List<NormalStoredProcedureRecordSetReturnType>, NormalStoredProcedureParameters>(procedure)
                .BuildSqlParameters()
                .SqlParameters;

            // ASSERT
            Assert.AreEqual(expectedParameterCount, actualParameters.Count);
            Assert.AreEqual(expectedValue, actualParameters.First().Value);
        }
        public void HasNullStoredProcedureParameters_WhenProceduredDoesNotHaveNullStoredProcedureParameters_ReturnsFalse()
        {
            // ARRANGE
            var parameters = new NormalStoredProcedureParameters { Id = 1 };
            var procedure = new NormalStoredProcedure(parameters);

            // ACT
            var actualresult = procedure.HasNullStoredProcedureParameters;

            // ASSERT
            Assert.IsFalse(actualresult);
        }