def test_attributes_with_spec(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" spec = Item(None, os.path.join(FILES, 'REQ001.yml')) self.item = UnknownItem(self.item.uid, spec=spec) self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(3, mock_warning.call_count)
class TestUnknownItem(unittest.TestCase): """Unit tests for the UnknownItem class.""" # pylint: disable= W0212 def setUp(self): self.item = UnknownItem('RQ001') @patch('doorstop.common.verbosity', 2) def test_str(self): """Verify an unknown item can be converted to a string.""" self.assertEqual("RQ001", str(self.item)) @patch('doorstop.common.verbosity', 3) def test_str_verbose(self): """Verify an unknown item can be converted to a string (verbose).""" text = "RQ001 (@{}{})".format(os.sep, '???') self.assertEqual(text, str(self.item)) def test_uid(self): """Verify an unknown item's UID can be read but not set.""" self.assertEqual('RQ001', self.item.uid) self.assertRaises(AttributeError, setattr, self.item, 'uid', 'RQ002') def test_le(self): """Verify unknown item's UID less operator.""" self.assertTrue(self.item < UnknownItem('RQ002')) self.assertFalse(self.item < self.item) def test_relpath(self): """Verify an item's relative path string can be read but not set.""" text = "@{}{}".format(os.sep, '???') self.assertEqual(text, self.item.relpath) self.assertRaises(AttributeError, setattr, self.item, 'relpath', '.') @patch('doorstop.core.item.log.debug') def test_attributes(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(2, mock_warning.call_count) @patch('doorstop.core.item.log.debug') def test_attributes_with_spec(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" spec = Item(None, os.path.join(FILES, 'REQ001.yml')) self.item = UnknownItem(self.item.uid, spec=spec) self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(3, mock_warning.call_count) def test_stamp(self): """Verify an unknown item has no stamp.""" self.assertEqual(Stamp(None), self.item.stamp())
def test_attributes_with_spec(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" spec = Item(os.path.join(FILES, 'REQ001.yml')) self.item = UnknownItem(self.item.uid, spec=spec) self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'get_issues') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(4, mock_warning.call_count)
def setUp(self): self.item = UnknownItem('RQ001')
class TestUnknownItem(unittest.TestCase): """Unit tests for the UnknownItem class.""" # pylint: disable= W0212 def setUp(self): self.item = UnknownItem('RQ001') @patch('doorstop.common.verbosity', 2) def test_str(self): """Verify an unknown item can be converted to a string.""" self.assertEqual("RQ001", str(self.item)) @patch('doorstop.common.verbosity', 3) def test_str_verbose(self): """Verify an unknown item can be converted to a string (verbose).""" text = "RQ001 (@{}{})".format(os.sep, '???') self.assertEqual(text, str(self.item)) def test_uid(self): """Verify an unknown item's UID can be read but not set.""" self.assertEqual('RQ001', self.item.uid) self.assertRaises(AttributeError, setattr, self.item, 'uid', 'RQ002') def test_relpath(self): """Verify an item's relative path string can be read but not set.""" text = "@{}{}".format(os.sep, '???') self.assertEqual(text, self.item.relpath) self.assertRaises(AttributeError, setattr, self.item, 'relpath', '.') def test_prefix(self): """Verify an item's prefix can be read but not set.""" self.assertEqual('RQ', self.item.prefix) self.assertRaises(AttributeError, setattr, self.item, 'prefix', 'REQ') def test_number(self): """Verify an item's number can be read but not set.""" self.assertEqual(1, self.item.number) self.assertRaises(AttributeError, setattr, self.item, 'number', 2) @patch('doorstop.core.item.log.debug') def test_attributes(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'get_issues') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(3, mock_warning.call_count) @patch('doorstop.core.item.log.debug') def test_attributes_with_spec(self, mock_warning): """Verify all other `Item` attributes raise an exception.""" spec = Item(os.path.join(FILES, 'REQ001.yml')) self.item = UnknownItem(self.item.uid, spec=spec) self.assertRaises(AttributeError, getattr, self.item, 'path') self.assertRaises(AttributeError, getattr, self.item, 'text') self.assertRaises(AttributeError, getattr, self.item, 'get_issues') self.assertRaises(AttributeError, getattr, self.item, 'delete') self.assertRaises(AttributeError, getattr, self.item, 'not_on_item') self.assertEqual(4, mock_warning.call_count) def test_stamp(self): """Verify an unknown item has no stamp.""" self.assertEqual(Stamp(None), self.item.stamp())
def test_le(self): """Verify unknown item's UID less operator.""" self.assertTrue(self.item < UnknownItem('RQ002')) self.assertFalse(self.item < self.item)