| OLD | NEW |
| 1 /* | 1 /* |
| 2 * libjingle | 2 * libjingle |
| 3 * Copyright 2008 Google Inc. | 3 * Copyright 2008 Google Inc. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
| 9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 EXPECT_TRUE(cm_->initialized()); | 110 EXPECT_TRUE(cm_->initialized()); |
| 111 // Setting the worker thread while initialized should fail. | 111 // Setting the worker thread while initialized should fail. |
| 112 EXPECT_FALSE(cm_->set_worker_thread(rtc::Thread::Current())); | 112 EXPECT_FALSE(cm_->set_worker_thread(rtc::Thread::Current())); |
| 113 cm_->Terminate(); | 113 cm_->Terminate(); |
| 114 EXPECT_FALSE(cm_->initialized()); | 114 EXPECT_FALSE(cm_->initialized()); |
| 115 } | 115 } |
| 116 | 116 |
| 117 // Test that we can create and destroy a voice and video channel. | 117 // Test that we can create and destroy a voice and video channel. |
| 118 TEST_F(ChannelManagerTest, CreateDestroyChannels) { | 118 TEST_F(ChannelManagerTest, CreateDestroyChannels) { |
| 119 EXPECT_TRUE(cm_->Init()); | 119 EXPECT_TRUE(cm_->Init()); |
| 120 cricket::VoiceChannel* voice_channel = | 120 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel( |
| 121 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, | 121 &fake_mc_, transport_controller_, cricket::CN_AUDIO, false, |
| 122 cricket::CN_AUDIO, false, AudioOptions()); | 122 MediaChannelOptions(), AudioOptions()); |
| 123 EXPECT_TRUE(voice_channel != nullptr); | 123 EXPECT_TRUE(voice_channel != nullptr); |
| 124 cricket::VideoChannel* video_channel = | 124 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel( |
| 125 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, | 125 &fake_mc_, transport_controller_, cricket::CN_VIDEO, false, |
| 126 cricket::CN_VIDEO, false, VideoOptions()); | 126 MediaChannelOptions(), VideoOptions()); |
| 127 EXPECT_TRUE(video_channel != nullptr); | 127 EXPECT_TRUE(video_channel != nullptr); |
| 128 cricket::DataChannel* data_channel = cm_->CreateDataChannel( | 128 cricket::DataChannel* data_channel = cm_->CreateDataChannel( |
| 129 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); | 129 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); |
| 130 EXPECT_TRUE(data_channel != nullptr); | 130 EXPECT_TRUE(data_channel != nullptr); |
| 131 cm_->DestroyVideoChannel(video_channel); | 131 cm_->DestroyVideoChannel(video_channel); |
| 132 cm_->DestroyVoiceChannel(voice_channel); | 132 cm_->DestroyVoiceChannel(voice_channel); |
| 133 cm_->DestroyDataChannel(data_channel); | 133 cm_->DestroyDataChannel(data_channel); |
| 134 cm_->Terminate(); | 134 cm_->Terminate(); |
| 135 } | 135 } |
| 136 | 136 |
| 137 // Test that we can create and destroy a voice and video channel with a worker. | 137 // Test that we can create and destroy a voice and video channel with a worker. |
| 138 TEST_F(ChannelManagerTest, CreateDestroyChannelsOnThread) { | 138 TEST_F(ChannelManagerTest, CreateDestroyChannelsOnThread) { |
| 139 worker_.Start(); | 139 worker_.Start(); |
| 140 EXPECT_TRUE(cm_->set_worker_thread(&worker_)); | 140 EXPECT_TRUE(cm_->set_worker_thread(&worker_)); |
| 141 EXPECT_TRUE(cm_->Init()); | 141 EXPECT_TRUE(cm_->Init()); |
| 142 delete transport_controller_; | 142 delete transport_controller_; |
| 143 transport_controller_ = | 143 transport_controller_ = |
| 144 new cricket::FakeTransportController(&worker_, ICEROLE_CONTROLLING); | 144 new cricket::FakeTransportController(&worker_, ICEROLE_CONTROLLING); |
| 145 cricket::VoiceChannel* voice_channel = | 145 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel( |
| 146 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, | 146 &fake_mc_, transport_controller_, cricket::CN_AUDIO, false, |
| 147 cricket::CN_AUDIO, false, AudioOptions()); | 147 MediaChannelOptions(), AudioOptions()); |
| 148 EXPECT_TRUE(voice_channel != nullptr); | 148 EXPECT_TRUE(voice_channel != nullptr); |
| 149 cricket::VideoChannel* video_channel = | 149 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel( |
| 150 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, | 150 &fake_mc_, transport_controller_, cricket::CN_VIDEO, false, |
| 151 cricket::CN_VIDEO, false, VideoOptions()); | 151 MediaChannelOptions(), VideoOptions()); |
| 152 EXPECT_TRUE(video_channel != nullptr); | 152 EXPECT_TRUE(video_channel != nullptr); |
| 153 cricket::DataChannel* data_channel = cm_->CreateDataChannel( | 153 cricket::DataChannel* data_channel = cm_->CreateDataChannel( |
| 154 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); | 154 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); |
| 155 EXPECT_TRUE(data_channel != nullptr); | 155 EXPECT_TRUE(data_channel != nullptr); |
| 156 cm_->DestroyVideoChannel(video_channel); | 156 cm_->DestroyVideoChannel(video_channel); |
| 157 cm_->DestroyVoiceChannel(voice_channel); | 157 cm_->DestroyVoiceChannel(voice_channel); |
| 158 cm_->DestroyDataChannel(data_channel); | 158 cm_->DestroyDataChannel(data_channel); |
| 159 cm_->Terminate(); | 159 cm_->Terminate(); |
| 160 } | 160 } |
| 161 | 161 |
| 162 // Test that we fail to create a voice/video channel if the session is unable | 162 // Test that we fail to create a voice/video channel if the session is unable |
| 163 // to create a cricket::TransportChannel | 163 // to create a cricket::TransportChannel |
| 164 TEST_F(ChannelManagerTest, NoTransportChannelTest) { | 164 TEST_F(ChannelManagerTest, NoTransportChannelTest) { |
| 165 EXPECT_TRUE(cm_->Init()); | 165 EXPECT_TRUE(cm_->Init()); |
| 166 transport_controller_->set_fail_channel_creation(true); | 166 transport_controller_->set_fail_channel_creation(true); |
| 167 // The test is useless unless the session does not fail creating | 167 // The test is useless unless the session does not fail creating |
| 168 // cricket::TransportChannel. | 168 // cricket::TransportChannel. |
| 169 ASSERT_TRUE(transport_controller_->CreateTransportChannel_w( | 169 ASSERT_TRUE(transport_controller_->CreateTransportChannel_w( |
| 170 "audio", cricket::ICE_CANDIDATE_COMPONENT_RTP) == nullptr); | 170 "audio", cricket::ICE_CANDIDATE_COMPONENT_RTP) == nullptr); |
| 171 | 171 |
| 172 cricket::VoiceChannel* voice_channel = | 172 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel( |
| 173 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, | 173 &fake_mc_, transport_controller_, cricket::CN_AUDIO, false, |
| 174 cricket::CN_AUDIO, false, AudioOptions()); | 174 MediaChannelOptions(), AudioOptions()); |
| 175 EXPECT_TRUE(voice_channel == nullptr); | 175 EXPECT_TRUE(voice_channel == nullptr); |
| 176 cricket::VideoChannel* video_channel = | 176 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel( |
| 177 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, | 177 &fake_mc_, transport_controller_, cricket::CN_VIDEO, false, |
| 178 cricket::CN_VIDEO, false, VideoOptions()); | 178 MediaChannelOptions(), VideoOptions()); |
| 179 EXPECT_TRUE(video_channel == nullptr); | 179 EXPECT_TRUE(video_channel == nullptr); |
| 180 cricket::DataChannel* data_channel = cm_->CreateDataChannel( | 180 cricket::DataChannel* data_channel = cm_->CreateDataChannel( |
| 181 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); | 181 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); |
| 182 EXPECT_TRUE(data_channel == nullptr); | 182 EXPECT_TRUE(data_channel == nullptr); |
| 183 cm_->Terminate(); | 183 cm_->Terminate(); |
| 184 } | 184 } |
| 185 | 185 |
| 186 TEST_F(ChannelManagerTest, GetSetOutputVolumeBeforeInit) { | 186 TEST_F(ChannelManagerTest, GetSetOutputVolumeBeforeInit) { |
| 187 int level; | 187 int level; |
| 188 // Before init, SetOutputVolume() remembers the volume but does not change the | 188 // Before init, SetOutputVolume() remembers the volume but does not change the |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 242 EXPECT_FALSE(cm_->SetVideoRtxEnabled(false)); | 242 EXPECT_FALSE(cm_->SetVideoRtxEnabled(false)); |
| 243 | 243 |
| 244 // Can set again after terminate. | 244 // Can set again after terminate. |
| 245 cm_->Terminate(); | 245 cm_->Terminate(); |
| 246 EXPECT_TRUE(cm_->SetVideoRtxEnabled(true)); | 246 EXPECT_TRUE(cm_->SetVideoRtxEnabled(true)); |
| 247 cm_->GetSupportedVideoCodecs(&codecs); | 247 cm_->GetSupportedVideoCodecs(&codecs); |
| 248 EXPECT_TRUE(ContainsMatchingCodec(codecs, rtx_codec)); | 248 EXPECT_TRUE(ContainsMatchingCodec(codecs, rtx_codec)); |
| 249 } | 249 } |
| 250 | 250 |
| 251 } // namespace cricket | 251 } // namespace cricket |
| OLD | NEW |