def test_find_minimum__if_non_list_value__exception_thrown(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with int value 3. Call find_minimum() Expected result: Exception thrown """ sortings = Sortings() sortings.list = -20303 with self.assertRaises(Exception) as actual: sortings.find_minimum() self.assertEqual("Can not find min_val for object of type not 'list'", actual.exception.message)
def test_find_minimum__if_list_of_lists__exception_thrown(self): """ Scenario: 1. Create object of class Sortings 2. Initialize list by list of two lists 3. Call find_minimum() Expected result: Exception thrown """ sorting = Sortings() sorting.list = [[1, 3, 4, 5, 0], [1, 2, 4, 6, 0, 9]] with self.assertRaises(Exception) as actual: sorting.find_minimum() self.assertEqual("An input list should contain only numeric values", actual.exception.message)
def test_find_minimum__if_None__exception_thrown(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with None 3. Call find_minimum() Expected result: Exception is thrown """ sortings = Sortings() sortings.list = None with self.assertRaises(Exception) as actual: sortings.find_minimum() self.assertEqual("Can not find min_val in a list 'None'", actual.exception.message)
def test_find_minimum__if_empty_list__exception_thrown(self): """ Scenario: 1. Create object of class Sortings 2. Initialize list with an empty list 3. Call find_minimum() Expected result: Exception thrown """ sorting = Sortings() sorting.list = [] with self.assertRaises(Exception) as actual: sorting.find_minimum() self.assertEqual("Can not find min_val in an empty list", actual.exception.message)
def test__find_minimum__if_float_values__returns_minimum(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with float values 3. Call find_minimum() Expected result: The minimal value returned """ sortings = Sortings() sortings.list = [0.333, 0, 1 / 3, 1.0 / 3.0] actual_result = sortings.find_minimum() self.assertEqual(0, actual_result)
def test__find_minimum__if_negative_values__returns_minimum(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with negative values 3. Call find_minimum() Expected result: The minimal negative value returned """ sortings = Sortings() sortings.list = [-2, 2, -1, 0] actual_result = sortings.find_minimum() self.assertEqual(-2, actual_result)
def test_find_minimum__if_equal_values__returns_one_value(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with equal values 3. Call find_minimum() Expected result: Single initialized value returned """ sortings = Sortings() sortings.list = [2, 2, 2, 2, 2, 2] actual_result = sortings.find_minimum() self.assertEqual(2, actual_result)
def test_find_minimum__if_one_value__returns_this_value(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with single value 3. Call find_minimum() Expected result: This value is returned """ sortings = Sortings() sortings.list = [34566] actual_result = sortings.find_minimum() self.assertEqual(34566, actual_result)
def test_find_minimum__two_times__returns_minimal(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with positive integers 3. Call find_minimum() method 4. Initialize list with other positive integers 5. Call find_minimum() method Expected result: A correct minimum value returned both times. """ sortings = Sortings() sortings.list = [5, 1, 2, 3] actual_result = sortings.find_minimum() self.assertEqual(1, actual_result) sortings.list = [3456, 123, 12, 35] actual_result = sortings.find_minimum() self.assertEqual(12, actual_result)
def test_find_minimum__returns_minimal(self): """ Scenario: 1. Create object of Sortings class 2. Initialize list with positive integers 3. Call find_minimum() Expected result: A correct minimum value returned """ sortings = Sortings() sortings.list = [5, 1, 2, 3] actual_result = sortings.find_minimum() self.assertEqual(1, actual_result)