def test_article(self, mock_nntp): """Test whether the article method works properly""" mock_nntp.return_value = MockNNTPLib() client = NNTTPClient(NNTP_SERVER, archive=self.archive, from_archive=False) data = client.article(2) self.assertEqual(len(data), 3) self.assertEqual(len(data['lines']), 220) self.assertEqual(data['lines'][-1], b'--lATx5p5hwwFl8QooX4JNWNU6e6LBSB7ES--') self.assertEqual( data['message_id'], '<*****@*****.**>') self.assertEqual(data['number'], 2) client = NNTTPClient(NNTP_SERVER, archive=self.archive, from_archive=True) archived_data = client.article(2) self.assertEqual(len(data), 3) self.assertEqual(len(data['lines']), 220) self.assertEqual(data['lines'][-1], b'--lATx5p5hwwFl8QooX4JNWNU6e6LBSB7ES--') self.assertEqual( data['message_id'], '<*****@*****.**>') self.assertEqual(data['number'], 2) self.assertEqual(data, archived_data)
def test_fetch_from_archive(self, mock_nntp): """Test whether the fetch from archive method works properly""" mock_nntp.return_value = MockNNTPLib() # first we upload data to the archive client = NNTTPClient(NNTP_SERVER, archive=self.archive, from_archive=False) group = client.group("example.dev.project-link") over = client.over((1, 1)) article = client.article(2) # then we read the data within the archive client = NNTTPClient(NNTP_SERVER, archive=self.archive, from_archive=True) group_archived = client._fetch_from_archive( "group", "example.dev.project-link") self.assertEqual(group, group_archived) over_archived = client._fetch_from_archive("over", (1, 1)) self.assertEqual(over, over_archived) article_archived = client._fetch_from_archive("article", 2) self.assertEqual(article, article_archived)