File: validate_spec_url_test.py

package info (click to toggle)
swagger-spec-validator 3.0.4-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 696 kB
  • sloc: python: 2,321; makefile: 28; sh: 2
file content (22 lines) | stat: -rw-r--r-- 789 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from unittest import mock

import pytest

from swagger_spec_validator.common import SwaggerValidationError
from swagger_spec_validator.util import validate_spec_url
from tests.conftest import is_urlopen_error


def test_raise_SwaggerValidationError_on_urlopen_error():
    with pytest.raises(SwaggerValidationError) as excinfo:
        validate_spec_url("http://foo")
    assert is_urlopen_error(excinfo.value)


@mock.patch("swagger_spec_validator.util.read_url")
@mock.patch("swagger_spec_validator.util.get_validator")
def test_validate_spec_url_success(mock_get_validator, mock_read_url):
    spec_url = mock.Mock()
    validate_spec_url(spec_url)
    mock_read_url.assert_called_once_with(spec_url)
    mock_get_validator.assert_called_once_with(mock_read_url.return_value, spec_url)