Beispiel #1
0
        /// <summary>
        /// Update test results specific to SQL Server alone
        /// </summary>
        /// <param name="test"></param>
        /// <param name="tableName"></param>
        /// <param name="count"></param>
        internal void UpdateSqlServerTestResults(BaseDataSet test, string tableName, int count)
        {
            test.SetElapsedTime(MSSQLTimer.Elapsed);

            test.SqlObtainedResult1 = test.SqlObtainedResult1.TrimNullValue();
            test.ExpectedResult1    = test.ExpectedResult1.TrimNullValue();

            test.Result = test.SqlObtainedResult1.Compare(test.ExpectedResult1).GetResult();
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlObtainedResult1), test.SqlObtainedResult1));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.Result), test.Result));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlElapsedTime), test.SqlElapsedTime));
            if (!string.IsNullOrWhiteSpace(test.SqlError))
            {
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlError), test.SqlError));
            }

            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.ExecutionTime), test.ExecutionTime));

            if (test.Result.Equals("Passed", StringComparison.CurrentCulture))
            {
                PassCount++;
            }
            else
            {
                FailCount++;
            }

            if (count == 1)
            {
                _dataManipulator.ExecuteQuery(test.InsertOverallStatusQuery(tableName));
            }
            _dataManipulator.ExecuteQuery(test.UpdateOverallStatusCountQuery(tableName, count, PassCount, FailCount));
        }
Beispiel #2
0
        /// <summary>
        /// Update Test Results.
        /// </summary>
        /// <param name="test">Test Obj.</param>
        /// <param name="tableName">Table name.</param>
        /// <param name="count"></param>
        /// <param name="isMultiResult">Is result singular</param>
        internal void UpdateTestResults(BaseDataSet test, string tableName, int count, bool isMultiResult = false)
        {
            test.SetElapsedTime(MSSQLTimer.Elapsed);
            test.SetOracleElapsedTime(OracleTimer.Elapsed);

            test.SqlObtainedResult1 = test.SqlObtainedResult1?.TrimNullValue();
            test.ExpectedResult1    = test.ExpectedResult1?.TrimNullValue();
            test.OracleResult1      = test.OracleResult1?.TrimDecimalPoints()?.TrimNullValue();

            test.OutputComparison1 = test.SqlObtainedResult1.Compare(test.OracleResult1);
            test.Result            = test.SqlObtainedResult1.Compare(test.ExpectedResult1).GetResult();

            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlObtainedResult1), test.SqlObtainedResult1));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.ExpectedResult1), test.ExpectedResult1));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OracleResult1), test.OracleResult1));

            if (isMultiResult)
            {
                test.SqlObtainedResult2 = test.SqlObtainedResult2?.TrimNullValue();
                test.ExpectedResult2    = test.ExpectedResult2?.TrimNullValue();
                test.OracleResult2      = test.OracleResult2?.TrimDecimalPoints()?.TrimNullValue();

                test.OutputComparison2 = test.SqlObtainedResult2.Compare(test.OracleResult2);
                test.Result            = (test.Result.Equals("Passed", StringComparison.CurrentCulture) && test.SqlObtainedResult2.Compare(test.ExpectedResult2)).GetResult();

                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlObtainedResult2), test.SqlObtainedResult2));
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.ExpectedResult2), test.ExpectedResult2));
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OracleResult2), test.OracleResult2));
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OutputComparison2), test.OutputComparison2));
            }

            // comparison of result with expected against obtained results from MSSQL OSS extension functions
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.Result), test.Result));
            // comparison of obtained results from MSSQL OSS extension functions against results from competitive Oracle functions.
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OutputComparison1), test.OutputComparison1));

            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlElapsedTime), test.SqlElapsedTime));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OracleElapsedTime), test.OracleElapsedTime));
            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OracleQuery), test.OracleQuery.EscapeQueryString()));

            if (!string.IsNullOrWhiteSpace(test.SqlError))
            {
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.SqlError), test.SqlError));
            }

            if (!string.IsNullOrWhiteSpace(test.OracleError))
            {
                _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.OracleError), test.OracleError));
            }

            _dataManipulator.ExecuteQuery(test.GetTargetUpdateQuery(tableName, nameof(test.ExecutionTime), test.ExecutionTime));

            //update test results
            if (isMultiResult)
            {
                if (test.OutputComparison1 && test.OutputComparison2)
                {
                    PassCount++;
                }
                else
                {
                    FailCount++;
                }
            }
            else
            {
                if (test.OutputComparison1)
                {
                    PassCount++;
                }
                else
                {
                    FailCount++;
                }
            }

            if (count == 1)
            {
                _dataManipulator.ExecuteQuery(test.InsertOverallStatusQuery(tableName));
            }
            _dataManipulator.ExecuteQuery(test.UpdateOverallStatusCountQuery(tableName, count, PassCount, FailCount));
        }