diff options
| author | Luke Lee <durdenmisc@gmail.com> | 2010-09-19 16:14:27 -0500 |
|---|---|---|
| committer | Luke Lee <durdenmisc@gmail.com> | 2010-09-19 16:14:27 -0500 |
| commit | 7ec0f2ef0716298c2666451490138cbb5a85bdc1 (patch) | |
| tree | 11b0088875df8a99ae1ac1ba43e365bb44b75a63 /test_tablib.py | |
| parent | bd470684a4d0cdf5f7e5ea127d28a89a92ef33b6 (diff) | |
| parent | dbcea81c170b0bb101a23428e648034d1ab41258 (diff) | |
| download | tablib-7ec0f2ef0716298c2666451490138cbb5a85bdc1.tar.gz | |
Attempt at merging upstream develop branch
- Kept the slicing tests in tact by leaving their setup info. in the main setup
- Moved around some of the test methods to organize them a bit by functionality
Diffstat (limited to 'test_tablib.py')
| -rw-r--r-- | test_tablib.py | 65 |
1 files changed, 57 insertions, 8 deletions
diff --git a/test_tablib.py b/test_tablib.py index 3111206..ad7bcd9 100644 --- a/test_tablib.py +++ b/test_tablib.py @@ -13,6 +13,9 @@ class TablibTestCase(unittest.TestCase): def setUp(self): """Create simple data set with headers""" + global data + data = tablib.Dataset() + headers = ('first_name', 'last_name', 'gpa') self.john = ('John', 'Adams', 90) self.george = ('George', 'Washington', 67) @@ -29,9 +32,7 @@ class TablibTestCase(unittest.TestCase): def test_empty_append(self): """Verify append() correctly adds tuple with no headers""" - data = tablib.Dataset() - - new_row = (1, 2, 3) + new_row = (1,2,3) data.append(new_row) # Verify width/data @@ -42,13 +43,63 @@ class TablibTestCase(unittest.TestCase): """Verify append() correctly detects mismatch of number of headers and data """ - data = tablib.Dataset() - data.headers = ['first', 'second'] new_row = (1, 2, 3, 4) self.assertRaises(tablib.InvalidDimensions, data.append, new_row) + + def test_add_column(self): + # No Headers + + data.append(['kenneth']) + data.append(['bessie']) + + new_col = ['reitz', 'monke'] + + data.append(col=new_col) + + self.assertEquals(data[0], ('kenneth', 'reitz')) + self.assertEquals(data.width, 2) + + # With Headers + data.headers = ('fname', 'lname') + new_col = ['age', 21, 22] + data.append(col=new_col) + + self.assertEquals(data[new_col[0]], new_col[1:]) + + def test_add_column_no_data_no_headers(self): + + # no headers + + new_col = ('reitz', 'monke') + + data.append(col=new_col) + + self.assertEquals(data[0], tuple([new_col[0]])) + self.assertEquals(data.width, 1) + self.assertEquals(data.height, len(new_col)) + + def test_add_column_no_data_with_headers(self): + + # no headers + + data.headers = ('first', 'last') + + new_col = ('age',) + data.append(col=new_col) + + self.assertEquals(len(data.headers), 3) + self.assertEquals(data.width, 3) + + new_col = ('foo', 'bar') + + self.assertRaises(tablib.InvalidDimensions, data.append, col=new_col) + + def tuple_check(self): + data.append(col=(1,2,3)) + def test_header_slicing(self): """Verify slicing by headers""" @@ -75,8 +126,6 @@ class TablibTestCase(unittest.TestCase): self.assertEqual(self.founders[1:3], [self.george, self.tom]) self.assertEqual(self.founders[2:], [self.tom]) - # def test_adding_header with (self): - - + if __name__ == '__main__': unittest.main() |
