Example #1
0
    def test_init(self):
        auth = nonza.SASLAuth("foo")
        self.assertEqual(auth.mechanism, "foo")
        self.assertEqual(auth.payload, None)

        auth = nonza.SASLAuth(mechanism="foo", payload=b"foobar")
        self.assertEqual(auth.mechanism, "foo")
        self.assertEqual(auth.payload, b"foobar")
Example #2
0
 def test_initiate_challenge(self):
     state, payload = self._run_test(self.sm.initiate("foo", b"bar"), [
         XMLStreamMock.Send(nonza.SASLAuth(mechanism="foo", payload=b"bar"),
                            response=XMLStreamMock.Receive(
                                nonza.SASLChallenge(payload=b"baz")))
     ])
     self.assertEqual(state, "challenge")
     self.assertEqual(payload, b"baz")
Example #3
0
 def test_initiate_success(self):
     state, payload = self._run_test(self.sm.initiate("foo", b"bar"), [
         XMLStreamMock.Send(nonza.SASLAuth(mechanism="foo", payload=b"bar"),
                            response=XMLStreamMock.Receive(
                                nonza.SASLSuccess()))
     ])
     self.assertEqual(state, "success")
     self.assertIsNone(payload)
Example #4
0
    def test_initiate_failure(self):
        with self.assertRaises(aiosasl.SASLFailure) as ctx:
            self._run_test(self.sm.initiate("foo", b"bar"), [
                XMLStreamMock.Send(
                    nonza.SASLAuth(mechanism="foo", payload=b"bar"),
                    response=XMLStreamMock.Receive(
                        nonza.SASLFailure(condition=(namespaces.sasl,
                                                     "not-authorized"))))
            ])

        self.assertEqual("not-authorized", ctx.exception.opaque_error)