Пример #1
0
    def test_adding_document_to_corpus_fails(self, mocked_post):
        mocked_post.return_value.status_code = 403

        session = requests.Session()
        session.auth = ('wrong_user', 'my_precious')
        corpus = Corpus(session=session, **self.example_json)
        with self.assertRaises(RuntimeError):
            corpus.add_document("example.pdf")
Пример #2
0
    def test_adding_document_to_corpus_fails(self, mocked_post):
        mocked_post.return_value.status_code = 403

        session = requests.Session()
        session.auth = ('wrong_user', 'my_precious')
        corpus = Corpus(session=session, **self.example_json)
        with self.assertRaises(RuntimeError):
            corpus.add_document("example.pdf")
Пример #3
0
    def test_add_document_to_corpus(self, mocked_post):
        mocked_post.return_value.status_code = 201
        mocked_post.return_value.json.return_value = self.example_document

        corpus = Corpus(session=self.session, **self.example_json)
        result = corpus.add_document("content.")

        # requests takes either a file-like object or a string. Both should
        # work.
        files = {"blob": "content."}
        data = {"corpus": corpus.url}

        mocked_post.assert_called_with("http://pypln.example.com/documents/",
                                       data=data, files=files)

        self.assertIs(type(result), Document)

        for key, value in self.example_document.items():
            if key == 'properties':
                key = 'properties_url'
            self.assertEqual(value, getattr(result, key))
Пример #4
0
    def test_add_document_to_corpus(self, mocked_post):
        mocked_post.return_value.status_code = 201
        mocked_post.return_value.json.return_value = self.example_document

        corpus = Corpus(session=self.session, **self.example_json)
        result = corpus.add_document("content.")

        # requests takes either a file-like object or a string. Both should
        # work.
        files = {"blob": "content."}
        data = {"corpus": corpus.url}

        mocked_post.assert_called_with("http://pypln.example.com/documents/",
                                       data=data,
                                       files=files)

        self.assertIs(type(result), Document)

        for key, value in self.example_document.items():
            if key == 'properties':
                key = 'properties_url'
            self.assertEqual(value, getattr(result, key))