diff options
Diffstat (limited to 'Swiften/Client/UnitTest')
| -rw-r--r-- | Swiften/Client/UnitTest/ClientSessionTest.cpp | 24 | 
1 files changed, 24 insertions, 0 deletions
| diff --git a/Swiften/Client/UnitTest/ClientSessionTest.cpp b/Swiften/Client/UnitTest/ClientSessionTest.cpp index 57e53e4..e9d1b21 100644 --- a/Swiften/Client/UnitTest/ClientSessionTest.cpp +++ b/Swiften/Client/UnitTest/ClientSessionTest.cpp @@ -45,6 +45,8 @@ class ClientSessionTest : public CppUnit::TestFixture {  		CPPUNIT_TEST(testAuthenticate);  		CPPUNIT_TEST(testAuthenticate_Unauthorized);  		CPPUNIT_TEST(testAuthenticate_NoValidAuthMechanisms); +		CPPUNIT_TEST(testAuthenticate_PLAINOverNonTLS); +		CPPUNIT_TEST(testAuthenticate_RequireTLS);  		CPPUNIT_TEST(testStreamManagement);  		CPPUNIT_TEST(testStreamManagement_Failed);  		CPPUNIT_TEST(testFinishAcksStanzas); @@ -219,6 +221,20 @@ class ClientSessionTest : public CppUnit::TestFixture {  			CPPUNIT_ASSERT(sessionFinishedError);  		} +		void testAuthenticate_RequireTLS() { +			boost::shared_ptr<ClientSession> session(createSession()); +			session->setUseTLS(ClientSession::RequireTLS); +			session->setAllowPLAINOverNonTLS(true); +			session->start(); +			server->receiveStreamStart(); +			server->sendStreamStart(); +			server->sendStreamFeaturesWithMultipleAuthentication(); + +			CPPUNIT_ASSERT_EQUAL(ClientSession::Finished, session->getState()); +			CPPUNIT_ASSERT(sessionFinishedReceived); +			CPPUNIT_ASSERT(sessionFinishedError); +		} +  		void testAuthenticate_NoValidAuthMechanisms() {  			boost::shared_ptr<ClientSession> session(createSession());  			session->start(); @@ -432,6 +448,14 @@ class ClientSessionTest : public CppUnit::TestFixture {  					onElementReceived(boost::shared_ptr<StartTLSFailure>(new StartTLSFailure()));  				} +				void sendStreamFeaturesWithMultipleAuthentication() { +					boost::shared_ptr<StreamFeatures> streamFeatures(new StreamFeatures()); +					streamFeatures->addAuthenticationMechanism("PLAIN"); +					streamFeatures->addAuthenticationMechanism("DIGEST-MD5"); +					streamFeatures->addAuthenticationMechanism("SCRAM-SHA1"); +					onElementReceived(streamFeatures); +				} +  				void sendStreamFeaturesWithPLAINAuthentication() {  					boost::shared_ptr<StreamFeatures> streamFeatures(new StreamFeatures());  					streamFeatures->addAuthenticationMechanism("PLAIN"); | 
 Swift
 Swift