TST: add test cases for int and object dispatching

This commit is contained in:
Maya Tydykov
2017-01-27 15:15:59 -05:00
parent c5efba0c8a
commit 9cdd696467
+37 -7
View File
@@ -35,6 +35,21 @@ class AdjustmentTestCase(TestCase):
)
self.assertEqual(result, expected)
def test_make_int_adjustment(self):
result = adj.make_adjustment_from_indices(
1, 2, 3, 4,
adjustment_kind=adj.OVERWRITE,
value=1,
)
expected = adj.Int64Overwrite(
first_row=1,
last_row=2,
first_col=3,
last_col=4,
value=1,
)
self.assertEqual(result, expected)
def test_make_datetime_adjustment(self):
overwrite_dt = make_datetime64ns(0)
result = adj.make_adjustment_from_indices(
@@ -51,15 +66,12 @@ class AdjustmentTestCase(TestCase):
)
self.assertEqual(result, expected)
def test_make_object_adjustment(self):
class SomeClass(object):
pass
my_value = SomeClass()
@parameterized.expand([("some text",), ("some text".encode(),), (None,)])
def test_make_object_adjustment(self, value):
result = adj.make_adjustment_from_indices(
1, 2, 3, 4,
adjustment_kind=adj.OVERWRITE,
value=my_value,
value=value,
)
expected = adj.ObjectOverwrite(
@@ -67,6 +79,24 @@ class AdjustmentTestCase(TestCase):
last_row=2,
first_col=3,
last_col=4,
value=my_value,
value=value,
)
self.assertEqual(result, expected)
def test_unsupported_type(self):
class SomeClass(object):
pass
with self.assertRaises(TypeError) as e:
adj.make_adjustment_from_indices(
1, 2, 3, 4,
adjustment_kind=adj.OVERWRITE,
value=SomeClass(),
)
exc = e.exception
expected_msg = (
"Don't know how to make overwrite adjustments for values of type "
"%r." % SomeClass
)
self.assertEqual(str(exc), expected_msg)