示例#1
0
    def test_unauthorized_request_raises_error(self):
        with mock.patch('requests.get') as get:
            get.return_value = mock.Mock(status_code=401)

            with pytest.raises(ManoderechaError):
                m = Manoderecha('user', 'password')
                m.call('some-url')
示例#2
0
    def test_non_json_response_raises_error(self):
        with mock.patch('requests.get') as get:
            get.return_value = mock.Mock(status_code=200, content="Not JSON")

            with pytest.raises(ManoderechaError):
                m = Manoderecha('user', 'password')
                m.call('some-url')
示例#3
0
    def test_return_none_if_task_doesnt_exist(self):
        with mock.patch('requests.get') as get:
            get.return_value = mock.Mock(status_code=404, content="Blah")

            m = Manoderecha('user', 'password')
            task = m.get_task('1')

            assert task is None
示例#4
0
    def test_get_is_default_method(self):
        with mock.patch('requests.get') as get:
            get.return_value = mock.Mock(content="{}")

            m = Manoderecha('user', 'password')
            m.call('some-url')

            assert get.called
示例#5
0
    def test_gets_task(self, a_task):
        with mock.patch('requests.get') as get:
            get.return_value = a_task

            m = Manoderecha('user', 'password')
            task = m.get_task('1')

            # id from a_task fixture's JSON
            assert task['id'] == 1
示例#6
0
    def test_gets_minute(self, a_minute):
        with mock.patch('requests.get') as get:
            get.return_value = a_minute

            m = Manoderecha('user', 'password')
            minute = m.get_minute('1')

            # id from a_minute fixture's JSON
            assert minute['id'] == 1
示例#7
0
    def test_gets_minutes(self):
        with mock.patch('requests.get') as get:
            for length in [0, 1, 3]:
                get.return_value = make_some_minutes(length)

                m = Manoderecha('user', 'password')
                minutes = m.get_minutes(xrange(1, length + 1))

                assert len(minutes) == length
                assert [m['id'] for m in minutes] == range(1, length + 1)
示例#8
0
    def test_gets_tasks(self):
        with mock.patch('requests.get') as get:
            for length in [0, 1, 3]:
                get.return_value = make_some_tasks(length)

                m = Manoderecha('user', 'password')
                tasks = m.get_tasks(xrange(1, length + 1))

                assert len(tasks) == length
                assert [t['id'] for t in tasks] == range(1, length + 1)