class TestModelRow(unittest.TestCase): # pylint: disable=invalid-name, bad-whitespace HEAD = [u"name", u"sex", u"age"] DATA = [u"Alice", u"female", u"12"] def setUp(self): self.row = Row(self.HEAD, self.DATA, 0) def test_len(self): assert len(self.row) == 3 def test_getitem_with_valid_colname(self): # pylint: disable=bad-whitespace assert self.row["name"] == u"Alice" assert self.row["sex"] == u"female" assert self.row["age"] == u"12" def test_getitem_with_unknown_colname(self): with pytest.raises(KeyError): # pylint: disable=pointless-statement self.row["__UNKNOWN_COLUMN__"] def test_getitem_with_valid_index(self): assert self.row[0] == u"Alice" assert self.row[1] == u"female" assert self.row[2] == u"12" def test_getitem_with_invalid_index(self): colsize = len(self.row) assert colsize == 3 with pytest.raises(IndexError): self.row[colsize] # pylint: disable=pointless-statement def test_get_with_valid_colname(self): # pylint: disable=bad-whitespace assert self.row.get("name") == u"Alice" assert self.row.get("sex") == u"female" assert self.row.get("age") == u"12" def test_getitem_with_unknown_colname_should_return_default(self): assert self.row.get("__UNKNOWN_COLUMN__", "XXX") == u"XXX" def test_as_dict(self): data1 = self.row.as_dict() data2 = dict(self.row.as_dict()) assert isinstance(data1, dict) assert isinstance(data2, dict) assert isinstance(data1, OrderedDict) # -- REQUIRES: Python2.7 or ordereddict installed. # assert not isinstance(data2, OrderedDict) assert data1 == data2 # pylint: disable=bad-whitespace assert data1["name"] == u"Alice" assert data1["sex"] == u"female" assert data1["age"] == u"12"
class TestModelRow(unittest.TestCase): # pylint: disable=invalid-name, bad-whitespace HEAD = [u'name', u'sex', u'age'] DATA = [u'Alice', u'female', u'12'] def setUp(self): self.row = Row(self.HEAD, self.DATA, 0) def test_len(self): eq_(len(self.row), 3) def test_getitem_with_valid_colname(self): # pylint: disable=bad-whitespace eq_(self.row['name'], u'Alice') eq_(self.row['sex'], u'female') eq_(self.row['age'], u'12') @raises(KeyError) def test_getitem_with_unknown_colname(self): self.row['__UNKNOWN_COLUMN__'] # pylint: disable=pointless-statement def test_getitem_with_valid_index(self): eq_(self.row[0], u'Alice') eq_(self.row[1], u'female') eq_(self.row[2], u'12') @raises(IndexError) def test_getitem_with_invalid_index(self): colsize = len(self.row) eq_(colsize, 3) self.row[colsize] # pylint: disable=pointless-statement def test_get_with_valid_colname(self): # pylint: disable=bad-whitespace eq_(self.row.get('name'), u'Alice') eq_(self.row.get('sex'), u'female') eq_(self.row.get('age'), u'12') def test_getitem_with_unknown_colname_should_return_default(self): eq_(self.row.get('__UNKNOWN_COLUMN__', 'XXX'), u'XXX') def test_as_dict(self): data1 = self.row.as_dict() data2 = dict(self.row.as_dict()) assert isinstance(data1, dict) assert isinstance(data2, dict) assert isinstance(data1, OrderedDict) # -- REQUIRES: Python2.7 or ordereddict installed. # assert not isinstance(data2, OrderedDict) eq_(data1, data2) # pylint: disable=bad-whitespace eq_(data1['name'], u'Alice') eq_(data1['sex'], u'female') eq_(data1['age'], u'12')