def test_first_line(self): """ Includes a non-mandatory field before the 'dir-source' line. """ content = b'ho-hum 567\n' + DirectoryAuthority.content() self.assertRaises(ValueError, DirectoryAuthority, content, True) authority = DirectoryAuthority(content, False) self.assertTrue(authority.nickname.startswith('Unnamed')) self.assertEqual(['ho-hum 567'], authority.get_unrecognized_lines())
def test_first_line(self): """ Includes a non-mandatory field before the 'dir-source' line. """ content = b'ho-hum 567\n' + get_directory_authority(content = True) self.assertRaises(ValueError, DirectoryAuthority, content, True) authority = DirectoryAuthority(content, False) self.assertEqual('turtles', authority.nickname) self.assertEqual(['ho-hum 567'], authority.get_unrecognized_lines())
def test_first_line(self): """ Includes a non-mandatory field before the 'dir-source' line. """ content = b'ho-hum 567\n' + DirectoryAuthority.content() self.assertRaises(ValueError, DirectoryAuthority, content, True) authority = DirectoryAuthority(content, False) self.assertTrue(authority.nickname.startswith('Unnamed')) self.assertEqual(['ho-hum 567'], authority.get_unrecognized_lines())
def test_legacy_authority(self): """ Parses an authority using the '-legacy' format. """ content = 'dir-source gabelmoo-legacy 81349FC1F2DBA2C2C11B45CB9706637D480AB913 131.188.40.189 131.188.40.189 80 443' authority = DirectoryAuthority(content, is_vote = False) self.assertEqual('gabelmoo-legacy', authority.nickname) self.assertEqual('81349FC1F2DBA2C2C11B45CB9706637D480AB913', authority.fingerprint) self.assertEqual('131.188.40.189', authority.hostname) self.assertEqual('131.188.40.189', authority.address) self.assertEqual(80, authority.dir_port) self.assertEqual(443, authority.or_port) self.assertEqual(True, authority.is_legacy) self.assertEqual(None, authority.contact) self.assertEqual(None, authority.vote_digest) self.assertEqual(None, authority.legacy_dir_key) self.assertEqual(None, authority.key_certificate) self.assertEqual([], authority.get_unrecognized_lines())
def test_legacy_authority(self): """ Parses an authority using the '-legacy' format. """ content = 'dir-source gabelmoo-legacy 81349FC1F2DBA2C2C11B45CB9706637D480AB913 131.188.40.189 131.188.40.189 80 443' authority = DirectoryAuthority(content, is_vote = False) self.assertEqual('gabelmoo-legacy', authority.nickname) self.assertEqual('81349FC1F2DBA2C2C11B45CB9706637D480AB913', authority.fingerprint) self.assertEqual('131.188.40.189', authority.hostname) self.assertEqual('131.188.40.189', authority.address) self.assertEqual(80, authority.dir_port) self.assertEqual(443, authority.or_port) self.assertEqual(True, authority.is_legacy) self.assertEqual(None, authority.contact) self.assertEqual(None, authority.vote_digest) self.assertEqual(None, authority.legacy_dir_key) self.assertEqual(None, authority.key_certificate) self.assertEqual([], authority.get_unrecognized_lines())