def check_range_multiple_random_shape(self, ranges): for min, max in ranges: for size in sizes: for i in range(replays): with self.subTest(): r = Range(min, max) rand = r.random(size) self.assertEqual(rand.shape, (size, 1), 'Random wrong shape')
def check_range_multiple_random_range(self, ranges): for min, max in ranges: for size in sizes: for i in range(replays): with self.subTest(): r = Range(min, max) rand = r.random(size) self.assertTrue(np.alltrue(min <= rand) and np.alltrue(rand <= max), 'Random not in range')
def test_float_range_contains_max_border(self): range = Range(.5, 2.5) self.assertTrue(range.contains(2.5), 'Contains failed')
def test_int_range_not_contains_max_border(self): value = FloatValue(Range(.5, 2.5)) self.assertFalse(value.contains(2.50001), 'Contains failed')
def test_int_range_not_contains_max_large(self): value = IntValue(Range(1, 5)) self.assertFalse(value.contains(9999999), 'Contains failed')
def test_int_range_contains_middle(self): value = IntValue(Range(1, 5)) self.assertTrue(value.contains(3), 'Contains failed')
def test_size_10_contains_wrong_len_list(self): value = FloatList([Range(.5, 2.5) for __ in range(10)]) self.assertFalse(value.contains([1.5, 2.]), 'Contains failed')
def test_size_10_contains_in_list(self): value = FloatList([Range(.5, 2.5) for __ in range(10)]) v = [.5, 1., 1.5, 2., 2.5, .5, 1., 1.5, 2., 2.5] self.assertTrue(value.contains(v), 'Contains failed')
def test_size_2_contains_in_list(self): value = FloatList([Range(.5, 2.5), Range(.5, 2.5)]) self.assertTrue(value.contains([1., 1.5]), 'Contains failed')
def _check_range_random_type(self, ranges, t): for min, max in ranges: for i in range(replays): with self.subTest(): r = Range(min, max) self.assertIsInstance(r.random(), t, 'Random wrong type')
def _check_range_single_random_range(self, ranges): for min, max in ranges: for i in range(replays): with self.subTest(): r = Range(min, max) self.assertTrue(min <= r.random() <= max, 'Random not in range')
def test_float_range_not_contains_max_large(self): range = Range(.5, 2.5) self.assertFalse(range.contains(9999999), 'Contains failed')
def test_float_range_not_contains_max_border(self): range = Range(.5, 2.5) self.assertFalse(range.contains(2.50001), 'Contains failed')
def test_float_range_not_contains_min_border(self): range = Range(.5, 2.5) self.assertFalse(range.contains(.49999), 'Contains failed')
def test_float_range_contains_middle(self): range = Range(.5, 2.5) self.assertTrue(range.contains(1.5), 'Contains failed')
def test_size_10_contains_wrong_len_list(self): value = IntList([Range(1, 5) for __ in range(10)]) self.assertFalse(value.contains([2, 3]), 'Contains failed')
def test_size_1_contains_out(self): value = FloatList([Range(.5, 2.5)]) self.assertFalse(value.contains(3.), 'Contains failed')
def test_size_1_contains_out(self): value = IntList([Range(1, 5)]) self.assertFalse(value.contains(6), 'Contains failed')
def test_size_2_contains_in_out_list(self): value = FloatList([Range(.5, 2.5), Range(.5, 2.5)]) self.assertFalse(value.contains([2, 7]), 'Contains failed')
def test_size_2_contains_in_list(self): value = IntList([Range(1, 5), Range(1, 5)]) self.assertTrue(value.contains([2, 3]), 'Contains failed')
def test_size_10_contains_in_out_list(self): value = FloatList([Range(.5, 2.5) for __ in range(10)]) v = [.5, 1., 1.5, 2., 2.5, 3., 3.5, 4., 4.5, 5.] self.assertFalse(value.contains(v), 'Contains failed')
def test_size_2_contains_out_list(self): value = IntList([Range(1, 5), Range(1, 5)]) self.assertFalse(value.contains([6, 7]), 'Contains failed')
def test_int_range_contains_max_border(self): value = IntValue(Range(1, 5)) self.assertTrue(value.contains(5), 'Contains failed')
def test_size_10_contains_in_list(self): value = IntList([Range(1, 5) for __ in range(10)]) v = [1, 2, 3, 4, 5, 1, 2, 3, 4, 5] self.assertTrue(value.contains(v), 'Contains failed')
def test_int_range_not_contains_max_border(self): value = IntValue(Range(1, 5)) self.assertFalse(value.contains(5.0001), 'Contains failed')
def test_size_10_contains_out_list(self): value = IntList([Range(1, 5) for __ in range(10)]) v = [-5, -4, -3, -2, -1, 6, 7, 8, 9, 10] self.assertFalse(value.contains(v), 'Contains failed')
def test_int_range_contains_middle(self): value = FloatValue(Range(.5, 2.5)) self.assertTrue(value.contains(1.5), 'Contains failed')
def test_size_10_contains_in_out_list(self): value = IntList([Range(1, 5) for __ in range(10)]) v = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] self.assertFalse(value.contains(v), 'Contains failed')
def test_int_range_not_contains_max_large(self): value = FloatValue(Range(.5, 2.5)) self.assertFalse(value.contains(9999999.), 'Contains failed')
def test_int_range_not_contains_min_large(self): range = Range(1, 5) self.assertFalse(range.contains(-9999999), 'Contains failed')