| Index: remoting/protocol/jingle_messages_unittest.cc
|
| diff --git a/remoting/protocol/jingle_messages_unittest.cc b/remoting/protocol/jingle_messages_unittest.cc
|
| index 50fb2f6b55ec0db5f8c8816c77cd0a4dc34ab787..bc4d817e105d7ed186829d157ab40dbf5ac48dfa 100644
|
| --- a/remoting/protocol/jingle_messages_unittest.cc
|
| +++ b/remoting/protocol/jingle_messages_unittest.cc
|
| @@ -566,5 +566,76 @@ TEST(JingleMessageTest, ErrorMessage) {
|
| EXPECT_FALSE(error.empty());
|
| }
|
|
|
| +TEST(JingleMessageTest, ErrorCodeShouldBeIncludedInXml) {
|
| + JingleMessage message(std::string("to_jid"),
|
| + JingleMessage::SESSION_TERMINATE,
|
| + std::string("sid"));
|
| + message.action = JingleMessage::SESSION_TERMINATE;
|
| + message.reason = JingleMessage::DECLINE;
|
| + message.error_code = JingleMessage::ErrorCode::INVALID_ACCOUNT;
|
| + EXPECT_EQ(message.ToXml()->Str(),
|
| + "<iq xmlns=\"jabber:client\" to=\"to_jid\" type=\"set\">"
|
| + "<jingle xmlns=\"urn:xmpp:jingle:1\" sid=\"sid\" "
|
| + "action=\"session-terminate\">"
|
| + "<reason><decline/></reason>"
|
| + "<rem:error-code xmlns:rem=\"google:remoting\">"
|
| + "<rem:invalid-account/>"
|
| + "</rem:error-code>"
|
| + "</jingle>"
|
| + "</iq>");
|
| + JingleMessage parsed;
|
| + ParseFormatAndCompare(message.ToXml()->Str().c_str(), &parsed);
|
| + EXPECT_EQ(message.action, parsed.action);
|
| + EXPECT_EQ(message.reason, parsed.reason);
|
| + EXPECT_EQ(message.error_code, parsed.error_code);
|
| +
|
| + message.error_code = parsed.error_code = JingleMessage::ErrorCode::UNKNOWN;
|
| + EXPECT_EQ(message.ToXml()->Str(),
|
| + "<iq xmlns=\"jabber:client\" to=\"to_jid\" type=\"set\">"
|
| + "<jingle xmlns=\"urn:xmpp:jingle:1\" sid=\"sid\" "
|
| + "action=\"session-terminate\">"
|
| + "<reason><decline/></reason>"
|
| + "</jingle>"
|
| + "</iq>");
|
| + ParseFormatAndCompare(message.ToXml()->Str().c_str(), &parsed);
|
| + EXPECT_EQ(message.action, parsed.action);
|
| + EXPECT_EQ(message.reason, parsed.reason);
|
| +}
|
| +
|
| +TEST(JingleMessageTest, InvalidAccount) {
|
| + const char* kTestSessionTerminateMessage =
|
| + "<cli:iq from='user@gmail.com/chromoting016DBB07' "
|
| + "to='user@gmail.com/chromiumsy5C6A652D' type='set' "
|
| + "xmlns:cli='jabber:client'><jingle action='session-terminate' "
|
| + "sid='2227053353' xmlns='urn:xmpp:jingle:1'><reason><decline/></reason>"
|
| + "<gr:error-code xmlns:gr='google:remoting'>"
|
| + "<gr:invalid-account/>"
|
| + "</gr:error-code>"
|
| + "</jingle></cli:iq>";
|
| + JingleMessage message;
|
| + ParseFormatAndCompare(kTestSessionTerminateMessage, &message);
|
| + EXPECT_EQ(message.action, JingleMessage::SESSION_TERMINATE);
|
| + EXPECT_EQ(message.reason, JingleMessage::DECLINE);
|
| + EXPECT_EQ(message.error_code, JingleMessage::ErrorCode::INVALID_ACCOUNT);
|
| +}
|
| +
|
| +TEST(JingleMessageTest, AuthenticationFailed) {
|
| + const char* kTestSessionTerminateMessage =
|
| + "<cli:iq from='user@gmail.com/chromoting016DBB07' "
|
| + "to='user@gmail.com/chromiumsy5C6A652D' type='set' "
|
| + "xmlns:cli='jabber:client'><jingle action='session-terminate' "
|
| + "sid='2227053353' xmlns='urn:xmpp:jingle:1'><reason><decline/></reason>"
|
| + "<gr:error-code xmlns:gr='google:remoting'>"
|
| + "<gr:authentication-failed />"
|
| + "</gr:error-code>"
|
| + "</jingle></cli:iq>";
|
| + JingleMessage message;
|
| + ParseFormatAndCompare(kTestSessionTerminateMessage, &message);
|
| + EXPECT_EQ(message.action, JingleMessage::SESSION_TERMINATE);
|
| + EXPECT_EQ(message.reason, JingleMessage::DECLINE);
|
| + EXPECT_EQ(message.error_code,
|
| + JingleMessage::ErrorCode::AUTHENTICATION_FAILED);
|
| +}
|
| +
|
| } // namespace protocol
|
| } // namespace remoting
|
|
|