def test_Population_Standard_Deviation_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.stddev(lst), float((column['stdev']))) self.assertNotEqual(self.statistics.stddev(lst), float((column['stdev'])) * 3, "Wrong Pop Std Deviation")
def test_zscore_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.z_score(lst), float((column['zscore']))) self.assertNotEqual(self.statistics.z_score(lst), float((column['zscore'])) * 2, "Incorrect Z Score")
def test_Population_Mean_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.mean(lst), float( (column['mean']))) self.assertNotEqual(self.statistics.mean(lst), float((column['mean'])) * 2, "Mean does not match")
def test_Median_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.med(lst), float( (column['median']))) self.assertNotEqual(self.statistics.med(lst), float((column['median'])) + 2, "Incorrect Median")
def test_variance_population_proportion_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = [] for row in test_data: y = int(row['Value 1']) lst.append(y) for column in answer: result = float((column['var_pop_prop'])) self.assertEqual(self.statistics.vpop_proportion(lst), result)
def test_Mode_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = [] for row in test_data: y = int(row['Value 1']) lst.append(y) for column in answer: result = float((column['mode'])) self.assertEqual(self.statistics.mod(lst), result)
def test_variance_population_proportion_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.vpop_proportion(lst), float((column['var_pop_prop']))) self.assertNotEqual(self.statistics.vpop_proportion(lst), float((column['var_pop_prop'])) - 2, "WrongResult")
def test_population_variance_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.pvariance(lst), float((column['pop_variance']))) self.assertNotEqual(self.statistics.pvariance(lst), float((column['pop_variance'])) - 3, "Wrong Pop Var")
def test_proportion_calculator(self): test_data = CsvReader('Tests/Data/StatCalcData.csv').data answer = CsvReader('Tests/Data/StatAnswers.csv').data lst = data_add(test_data) for column in answer: self.assertEqual(self.statistics.proportion(lst), float((column['proportion']))) self.assertNotEqual(self.statistics.proportion(lst), float((column['proportion'])) - 2, "Wrong Proportion")
class MyTestCase(unittest.TestCase): def setUp(self) -> None: self.statistics = Statistics() test_data = CsvReader('Tests/CSVFiles/TestCaseData.csv').data test_answer = CsvReader('Tests/CSVFiles/TestAnswers.csv').data zscore_ans = CsvReader('Tests/CSVFiles/ZScores.csv').data zdata = [float(row['zscore']) for row in zscore_ans] column1 = [int(row['Value 1']) for row in test_data] column2 = [int(row['Value 2']) for row in test_data] def test_instantiate_calculator(self): self.assertIsInstance(self.statistics, Statistics) def test_mean_statistics(self): global row for row in self.test_answer: pprint(row["mean"]) self.assertEqual(self.statistics.mean(self.column1), float(row['mean'])) self.assertEqual(self.statistics.result, float(row['mean'])) def test_median_statistics(self): global row for row in self.test_answer: pprint(row["median"]) self.assertEqual(self.statistics.median(self.column1), float(row['median'])) self.assertEqual(self.statistics.result, float(row['median'])) def test_mode_statistics(self): for row in self.test_answer: pprint(row["mode"]) self.assertEqual(self.statistics.mode(self.column1), float(row['mode'])) self.assertEqual(self.statistics.result, float(row['mode'])) def test_standard_deviation_statistics(self): for row in self.test_answer: pprint(row["stddev"]) self.assertEqual(self.statistics.stddev(self.column1), float(row['stddev'])) self.assertEqual(self.statistics.result, float(row['stddev'])) def test_variance_statistics(self): for row in self.test_answer: pprint(row['variance']) self.assertEqual(self.statistics.variance(self.column1), float(row['variance'])) self.assertEqual(self.statistics.result, float(row['variance'])) def test_correlation_statistics(self): for row in self.test_answer: pprint(row['correlation']) self.assertEqual(self.statistics.correlation(self.column1, self.column2), float(row['correlation'])) self.assertEqual(self.statistics.result, float(row['correlation']))
def test_Population_Variance_calculator(self): test_data = CsvReader('Tests/Data/population_list.csv').data test_result = CsvReader('Tests/Data/result_data.csv').data list1 = [] for column in test_result: result_test = float((column['Population_Variance'])) for row in test_data: result = int(row['List1']) list1.append(result) self.assertEqual(round(self.Statistics.population_variance(list1)), round(result_test))
def test_mode(self): test_data = CsvReader('Tests/Data/population_list.csv').data result_data = CsvReader('Tests/Data/result_data.csv').data for column in result_data: mode_value = float(column['Mode']) data = [] for row in test_data: result = float(row['List1']) data.append(result) self.Statistics.mode(data) self.assertEqual(round(self.Statistics.result), round(mode_value))
def test_standard_deviation(self): test_data = CsvReader('Tests/Data/population_list.csv').data test_result = CsvReader('Tests/Data/result_data.csv').data for column in test_result: result_test = float(column['Standard Deviation']) list1 = [] for row in test_data: result = float(row['List1']) list1.append(result) self.Statistics.standard_deviation(list1) self.assertEqual(round(self.Statistics.result), round(result_test))
def test_multiplication(self): test_data = CsvReader('Tests/Data/multiplication.csv').data for row in test_data: self.assertEqual( self.calculator.multiple(row['Value 1'], row['Value 2']), int(row['Result'])) self.assertEqual(self.calculator.result, int(row['Result']))
def test_division(self): test_data = CsvReader('Tests/Data/division.csv').data for row in test_data: self.assertEqual( self.calculator.div(row['Value 1'], row['Value 2']), float(row['Result'])) self.assertEqual(self.calculator.result, float(row['Result']))
def test_mode_statistics(self): test_data_mode = CsvReader("Tests/Data/descriptive_stats.csv").data for row in test_data_mode: input_data = ast.literal_eval(row['input']) mode_data = ast.literal_eval(row['mode']) self.assertEqual(self.statistics.mode(input_data), mode_data) self.assertEqual(self.statistics.result, mode_data)
def test_sample_mean(self): try: mean_data = CsvReader('Data/unit_test_median.csv').data for d in mean_data: data_list = [] first_val = int(d['Value 1']) data_list.append(first_val) second_val = int(d['Value 2']) data_list.append(second_val) third_val = int(d['Value 3']) data_list.append(third_val) fourth_val = int(d['Value 4']) data_list.append(fourth_val) fifth_val = int(d['Value 5']) data_list.append(fifth_val) six_val = int(d['Value 6']) data_list.append(six_val) seven_val = int(d['Value 7']) data_list.append(seven_val) eight_val = int(d['Value 8']) data_list.append(eight_val) nine_val = int(d['Value 9']) data_list.append(nine_val) self.assertAlmostEqual(self.statistics.median(data_list), int(d['Result'])) self.assertAlmostEqual(self.statistics.result, int(d['Result'])) except: FileNotFoundError("Error. File was not found")
def test_square_rt_method_calculator(self): test_data = CsvReader("Tests/Data/square_root.csv").data for row in test_data: y = float(row['Result']) self.assertEqual(self.calculator.square_rt(int(row['Value 1'])), round(y, 7)) self.assertEqual(self.calculator.result, round(y, 7))
def test_add_method_calculator(self): test_data = CsvReader("Tests/Data/addition.csv").data for row in test_data: self.assertEqual( self.calculator.add(int(row['Value 1']), int(row['Value 2'])), int(row['Result'])) self.assertEqual(self.calculator.result, int(row['Result']))
def test_squareroot(self): test_data = CsvReader("Tests/Data/squareroot.csv").data for row in test_data: result = float(row['Result']) self.assertAlmostEqual(self.calculator.squareroot(row['Value 1']), result) self.assertAlmostEqual(self.calculator.result, result)
def test_division(self): test_data = CsvReader("Tests/Data/division.csv").data for row in test_data: result = float(row['Result']) self.assertAlmostEqual( self.calculator.divide(row['Value 1'], row['Value 2']), result) self.assertAlmostEqual(self.calculator.result, result)
def test_addition(self): test_data = CsvReader("Tests/Data/addition.csv").data for row in test_data: result = float(row['Result']) self.assertEqual( self.calculator.add(row['Value 1'], row['Value 2']), result) self.assertEqual(self.calculator.result, result)
def test_median(self): test_data = CsvReader('./Tests/Data/unit_test_median.csv').data for row in test_data: nums = [float(val) for val in row['nums'].split('_')] result = float(row['result']) self.assertAlmostEqual(self.statistic.median(nums), result) self.assertNotEqual(self.statistic.median(nums), result - 1)
def test_mean(self): test_data = CsvReader("/Tests/Data/Mean.csv").data for row in test_data: self.assertEqual( self.statistics.mean(row['Value 1'], row['Value 2']), float(row['Result'])) self.assertEqual(self.statistics.result, float(row['Result']))
def correlation_coefficient(self): test_data = CsvReader("/Tests/Data/correlationcoefficient.csv").data for row in test_data: self.assertEqual( self.statistics.correlation_coefficient(row['Value 1']), float(row['Result'])) self.assertEqual(self.statistics.result, float(row['Result']))
def test_addition(self): test_data_add = CsvReader('./Tests/Data/Unit Test Addition.csv').data for row in test_data_add: self.assertEqual( self.calculator.add(row['Value 1'], row['Value 2']), int(row['Result'])) self.assertEqual(self.calculator.result, int(row['Result']))
def test_zscore(self): test_data = CsvReader("/Tests/Data/zscore.csv").data for row in test_data: self.assertEqual( self.statistics.zscore(row['Value 1'], row['Value 2'], row['Value 3']), float(row['Result'])) self.assertEqual(self.statistics.result, float(row['Result']))
def test_SquareRoot(self): test_data = CsvReader('./Tests/Data/UnitTestSquareRoot.csv').data for row in test_data: a = int(row['Value 1']) result = float(row['Result']) self.assertAlmostEqual(self.statistic.squareRoot(a), result) self.assertNotEqual(self.statistic.squareRoot(a), result - 1)
def test_sample_mean(self): try: mean_data = CsvReader( 'Data/unit_test_confidence_interval.csv').data for d in mean_data: data_list = [] first_val = int(d['Value 1']) data_list.append(first_val) second_val = int(d['Value 2']) data_list.append(second_val) third_val = int(d['Value 3']) data_list.append(third_val) fourth_val = int(d['Value 4']) data_list.append(fourth_val) fifth_val = int(d['Value 5']) data_list.append(fifth_val) six_val = int(d['Value 6']) self.assertAlmostEqual( self.statistics.confidence_interval(data_list, six_val), int(d['Result'])) self.assertAlmostEqual(self.statistics.result, int(d['Result'])) except: FileNotFoundError("Error. File was not found")
def test_sample_mean(self): mean_data = CsvReader('Data/unit_test_population_correlation_coefficient.csv').data for d in mean_data: x_vals = [] y_vals = [] X1 = int(d['X1']) x_vals.append(X1) Y1 = int(d['Y1']) y_vals.append(Y1) X2 = int(d['X2']) x_vals.append(X2) Y2 = int(d['Y2']) y_vals.append(Y2) X3 = int(d['X3']) x_vals.append(X3) Y3 = int(d['Y3']) y_vals.append(Y3) X4 = int(d['X4']) x_vals.append(X4) Y4 = int(d['Y4']) y_vals.append(Y4) X5 = int(d['X5']) x_vals.append(X5) Y5 = int(d['Y5']) y_vals.append(Y5) self.assertAlmostEqual(self.statistics.population_corre_coefficient(x_vals, y_vals), float(d['Result']), places=3) self.assertAlmostEqual(self.statistics.result, float(d['Result']), places=3)