def test_get_assertion_500(self):
        okta_saml = OktaSaml('org', 'user', 'password')
        okta_saml.assertion = mock.MagicMock()
        okta_saml.session = mock.MagicMock()
        resp = requests.Response()
        resp.status_code = 500
        resp.url = ''
        okta_saml.session.get.return_value = resp

        with self.assertRaises(UnknownError):
            okta_saml.get_assertion('foo')
    def test_get_assertion_successful(self):
        okta_saml = OktaSaml('org', 'user', 'password')
        okta_saml.assertion = mock.MagicMock()
        okta_saml.assertion.return_value = 'assertion'
        okta_saml.session = mock.MagicMock()
        okta_saml.session.get.return_value = MockResponse(None, None, 'assert')

        ret = okta_saml.get_assertion('foo')

        okta_saml.assertion.assert_has_calls([mock.call('assert')])
        self.assertEqual(ret, 'assertion')
Example #3
0
    def test_get_assertion_successful(self):
        okta_saml = OktaSaml("org", "user", "password")
        okta_saml.assertion = mock.MagicMock()
        okta_saml.assertion.return_value = "assertion"
        okta_saml.session = mock.MagicMock()
        okta_saml.session.get.return_value = MockResponse(None, None, "assert")

        ret = okta_saml.get_assertion("foo")

        okta_saml.assertion.assert_has_calls([mock.call("assert")])
        self.assertEqual(ret, "assertion")
Example #4
0
    def test_get_assertion_500(self):
        okta_saml = OktaSaml("org", "user", "password")
        okta_saml.assertion = mock.MagicMock()
        okta_saml.session = mock.MagicMock()
        resp = requests.Response()
        resp.status_code = 500
        resp.url = ""
        okta_saml.session.get.return_value = resp

        with self.assertRaises(UnknownError):
            okta_saml.get_assertion("foo")
    def test_get_assertion_missing(self):
        okta_saml = OktaSaml('org', 'user', 'password')
        okta_saml.assertion = mock.MagicMock()
        okta_saml.assertion.return_value = b''
        okta_saml.session = mock.MagicMock()
        okta_saml.session.get.return_value = MockResponse(None, None, 'assert')
        okta_saml.get_okta_error_from_response = mock.MagicMock()

        with self.assertRaises(UnknownError):
            okta_saml.get_assertion('foo')

        okta_saml.get_okta_error_from_response.assert_has_calls([mock.ANY])
Example #6
0
    def test_get_assertion_missing(self):
        okta_saml = OktaSaml("org", "user", "password")
        okta_saml.assertion = mock.MagicMock()
        okta_saml.assertion.return_value = b""
        okta_saml.session = mock.MagicMock()
        okta_saml.session.get.return_value = MockResponse(None, None, "assert")
        okta_saml.get_okta_error_from_response = mock.MagicMock()

        with self.assertRaises(UnknownError):
            okta_saml.get_assertion("foo")

        okta_saml.get_okta_error_from_response.assert_has_calls([mock.ANY])
    def test_get_assertion_2FA_no_token(self):
        okta_saml = OktaSaml('org', 'user', 'password')
        okta_saml.assertion = mock.MagicMock()
        okta_saml.session = mock.MagicMock()
        resp = MockResponse(None, None, 'assert')
        resp.url = 'https://foo.bar/second-factor?zort=yep'
        okta_saml.session.get.return_value = resp
        okta_saml.get_state_token_from_html = mock.MagicMock()
        okta_saml.get_state_token_from_html.side_effect = AttributeError

        with self.assertRaises(ReauthNeeded) as err:
            okta_saml.get_assertion('foo')

        exc = err.exception
        self.assertEqual(exc.state_token, None)
Example #8
0
    def test_get_assertion_2FA(self):
        okta_saml = OktaSaml("org", "user", "password")
        okta_saml.assertion = mock.MagicMock()
        okta_saml.session = mock.MagicMock()
        resp = MockResponse(None, None, "assert")
        resp.url = "https://foo.bar/second-factor?zort=yep"
        okta_saml.session.get.return_value = resp
        okta_saml.get_state_token_from_html = mock.MagicMock()
        okta_saml.get_state_token_from_html.return_value = "token"

        with self.assertRaises(ReauthNeeded) as err:
            okta_saml.get_assertion("foo")

        exc = err.exception
        self.assertEqual(exc.state_token, "token")