Chromium Code Reviews

Unified Diff: remoting/protocol/jingle_messages_unittest.cc

Issue 1085703003: Use standard ICE in Chromoting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix crash on memory bots Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « remoting/protocol/jingle_messages.cc ('k') | remoting/protocol/jingle_session.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/protocol/jingle_messages_unittest.cc
diff --git a/remoting/protocol/jingle_messages_unittest.cc b/remoting/protocol/jingle_messages_unittest.cc
index de58443e32d0d73d2863753494724d20b31863df..aa95d0757785b15b24f04349547bf0390444726a 100644
--- a/remoting/protocol/jingle_messages_unittest.cc
+++ b/remoting/protocol/jingle_messages_unittest.cc
@@ -105,6 +105,7 @@ TEST(JingleMessageTest, SessionInitiate) {
"initiator='user@gmail.com/chromiumsy5C6A652D'>"
"<content name='chromoting' creator='initiator'>"
"<description xmlns='google:remoting'>"
+ "<standard-ice/>"
"<control transport='stream' version='2'/>"
"<event transport='stream' version='2'/>"
"<video transport='stream' version='2' codec='vp8'/>"
@@ -145,6 +146,7 @@ TEST(JingleMessageTest, SessionAccept) {
"xmlns='urn:xmpp:jingle:1'>i"
"<content creator='initiator' name='chromoting'>"
"<description xmlns='google:remoting'>"
+ "<standard-ice/>"
"<control transport='stream' version='2'/>"
"<event transport='stream' version='2'/>"
"<video codec='vp8' transport='stream' version='2'/>"
@@ -177,23 +179,112 @@ TEST(JingleMessageTest, SessionAccept) {
<< error;
}
-TEST(JingleMessageTest, TransportInfo) {
- const char* kTestTransportInfoMessage =
+TEST(JingleMessageTest, SessionAcceptNoIce) {
+ const char* kTestSessionAcceptMessage =
+ "<cli:iq from='user@gmail.com/chromoting016DBB07' "
+ "to='user@gmail.com/chromiumsy5C6A652D' type='set' "
+ "xmlns:cli='jabber:client'>"
+ "<jingle action='session-accept' sid='2227053353' "
+ "xmlns='urn:xmpp:jingle:1'>i"
+ "<content creator='initiator' name='chromoting'>"
+ "<description xmlns='google:remoting'>"
+ "<control transport='stream' version='2'/>"
+ "<event transport='stream' version='2'/>"
+ "<video codec='vp8' transport='stream' version='2'/>"
+ "<audio transport='stream' version='2' codec='verbatim'/>"
+ "<initial-resolution height='480' width='640'/>"
+ "<authentication><certificate>"
+ "MIICpjCCAY6gW0Cert0TANBgkqhkiG9w0BAQUFA="
+ "</certificate></authentication>"
+ "</description>"
+ "<transport xmlns='http://www.google.com/transport/p2p'/>"
+ "</content>"
+ "</jingle>"
+ "</cli:iq>";
+
+ scoped_ptr<XmlElement> source_message(
+ XmlElement::ForStr(kTestSessionAcceptMessage));
+ ASSERT_TRUE(source_message.get());
+
+ EXPECT_TRUE(JingleMessage::IsJingleMessage(source_message.get()));
+
+ JingleMessage message;
+ std::string error;
+ EXPECT_TRUE(message.ParseXml(source_message.get(), &error)) << error;
+
+ EXPECT_EQ(message.action, JingleMessage::SESSION_ACCEPT);
+
+ scoped_ptr<XmlElement> formatted_message(message.ToXml());
+ ASSERT_TRUE(formatted_message.get());
+ EXPECT_TRUE(VerifyXml(source_message.get(), formatted_message.get(), &error))
+ << error;
+}
+
+TEST(JingleMessageTest, IceTransportInfo) {
+ const char* kTestIceTransportInfoMessage =
+ "<cli:iq to='user@gmail.com/chromoting016DBB07' type='set' "
+ "xmlns:cli='jabber:client'>"
+ "<jingle xmlns='urn:xmpp:jingle:1' action='transport-info' "
+ "sid='2227053353'>"
+ "<content name='chromoting' creator='initiator'>"
+ "<transport xmlns='google:remoting:ice'>"
+ "<credentials channel='event' ufrag='tPUyEAmQrEw3y7hi' "
+ "password='2iRdhLfawKZC5ydJ'/>"
+ "<credentials channel='video' ufrag='EPK3CXo5sTLJSez0' "
+ "password='eM0VUfUkZ+1Pyi0M'/>"
+ "<candidate name='event' foundation='725747215' "
+ "address='172.23.164.186' port='59089' type='local' "
+ "protocol='udp' priority='2122194688' generation='0'/>"
+ "<candidate name='video' foundation='3623806809' "
+ "address='172.23.164.186' port='57040' type='local' "
+ "protocol='udp' priority='2122194688' generation='0'/>"
+ "</transport>"
+ "</content>"
+ "</jingle>"
+ "</cli:iq>";
+
+ scoped_ptr<XmlElement> source_message(
+ XmlElement::ForStr(kTestIceTransportInfoMessage));
+ ASSERT_TRUE(source_message.get());
+
+ EXPECT_TRUE(JingleMessage::IsJingleMessage(source_message.get()));
+
+ JingleMessage message;
+ std::string error;
+ EXPECT_TRUE(message.ParseXml(source_message.get(), &error)) << error;
+
+ EXPECT_EQ(message.action, JingleMessage::TRANSPORT_INFO);
+ EXPECT_EQ(message.candidates.size(), 2U);
+
+ scoped_ptr<XmlElement> formatted_message(message.ToXml());
+ ASSERT_TRUE(formatted_message.get());
+ EXPECT_TRUE(VerifyXml(source_message.get(), formatted_message.get(), &error))
+ << error;
+}
+
+TEST(JingleMessageTest, GiceTransportInfo) {
+ const char* kTestGiceTransportInfoMessage =
"<cli:iq to='user@gmail.com/chromoting016DBB07' type='set' "
- "xmlns:cli='jabber:client'><jingle xmlns='urn:xmpp:jingle:1' "
- "action='transport-info' sid='2227053353'><content name='chromoting' "
- "creator='initiator'><transport "
- "xmlns='http://www.google.com/transport/p2p'><candidate name='event' "
- "address='172.23.164.186' port='57040' preference='1' "
- "username='tPUyEAmQrEw3y7hi' protocol='udp' generation='0' "
- "password='2iRdhLfawKZC5ydJ' type='local'/><candidate name='video' "
- "address='172.23.164.186' port='42171' preference='1' "
- "username='EPK3CXo5sTLJSez0' protocol='udp' generation='0' "
- "password='eM0VUfUkZ+1Pyi0M' type='local'/></transport></content>"
- "</jingle></cli:iq>";
+ "xmlns:cli='jabber:client'>"
+ "<jingle xmlns='urn:xmpp:jingle:1' action='transport-info' "
+ "sid='2227053353'>"
+ "<content name='chromoting' creator='initiator'>"
+ "<transport xmlns='http://www.google.com/transport/p2p'>"
+ "<candidate name='event' address='172.23.164.186' port='57040' "
+ "preference='1' username='tPUyEAmQrEw3y7hi' "
+ "protocol='udp' generation='0' "
+ "password='2iRdhLfawKZC5ydJ' type='local'/>"
+ "<candidate name='video' address='172.23.164.186' port='42171' "
+ "preference='1' username='EPK3CXo5sTLJSez0' "
+ "protocol='udp' generation='0' "
+ "password='eM0VUfUkZ+1Pyi0M' type='local'/>"
+ "</transport>"
+ "</content>"
+ "</jingle>"
+ "</cli:iq>";
scoped_ptr<XmlElement> source_message(
- XmlElement::ForStr(kTestTransportInfoMessage));
+ XmlElement::ForStr(kTestGiceTransportInfoMessage));
ASSERT_TRUE(source_message.get());
EXPECT_TRUE(JingleMessage::IsJingleMessage(source_message.get()));
« no previous file with comments | « remoting/protocol/jingle_messages.cc ('k') | remoting/protocol/jingle_session.h » ('j') | no next file with comments »

Powered by Google App Engine