Skip to content

Commit 3008c4a

Browse files
committed
Codecov additions, and refactored some of that terrible default handling
1 parent e1a2a94 commit 3008c4a

File tree

2 files changed

+32
-16
lines changed

2 files changed

+32
-16
lines changed

src/OpenTok/Broadcast.php

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -112,12 +112,10 @@ public function __construct($broadcastData, $options = array())
112112
);
113113

114114
$options = array_merge($defaults, array_intersect_key($options, $defaults));
115-
list($apiKey, $apiSecret, $apiUrl, $client, $isStopped, $streamMode, $hasAudio, $hasVideo) = array_values($options);
116115

117-
// validate params
118116
Validators::validateBroadcastData($broadcastData);
119-
Validators::validateClient($client);
120-
Validators::validateHasStreamMode($streamMode);
117+
Validators::validateClient($options['client']);
118+
Validators::validateHasStreamMode($options['streamMode']);
121119

122120
$this->data = $broadcastData;
123121

@@ -129,21 +127,22 @@ public function __construct($broadcastData, $options = array())
129127
$this->status = $this->data['status'];
130128
}
131129

132-
$this->isStopped = $isStopped;
130+
$this->isStopped = $options['isStopped'];
133131
$this->resolution = $this->data['resolution'];
134132
$this->isHls = isset($this->data['settings']['hls']);
135133
$this->isLowLatency = $this->data['settings']['hls']['lowLatency'] ?? false;
136134
$this->isDvr = $this->data['settings']['hls']['dvr'] ?? false;
137-
$this->hasAudio = $hasAudio;
138-
$this->hasVideo = $hasVideo;
135+
$this->hasAudio = $options['hasAudio'];
136+
$this->hasVideo = $options['hasVideo'];
137+
138+
$this->client = $options['client'] ?? new Client();
139139

140-
$this->client = isset($client) ? $client : new Client();
141140
if (!$this->client->isConfigured()) {
142-
Validators::validateApiKey($apiKey);
143-
Validators::validateApiSecret($apiSecret);
144-
Validators::validateApiUrl($apiUrl);
141+
Validators::validateApiKey($options['apiKey']);
142+
Validators::validateApiSecret($options['apiSecret']);
143+
Validators::validateApiUrl($options['apiUrl']);
145144

146-
$this->client->configure($apiKey, $apiSecret, $apiUrl);
145+
$this->client->configure($options['apiKey'], $options['apiSecret'], $options['apiUrl']);
147146
}
148147
}
149148

tests/OpenTokTest/BroadcastTest.php

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public function setUp(): void
3434
'updatedAt' => 1394394801000,
3535
'partnerId' => 685,
3636
'sessionId' => '2_MX44NTQ1MTF-flR1ZSBOb3YgMTIgMDk6NDA6NTkgUFNUIDIwMTN-MC43NjU0Nzh-',
37+
'multiBroadcastTag' => 'broadcast-1234b',
3738
'layout' => [
3839
'type' => 'custom',
3940
'stylesheet' => 'a layout stylesheet',
@@ -42,8 +43,9 @@ public function setUp(): void
4243
'maxDuration' => 5400,
4344
'resolution' => '640x480',
4445
'streamMode' => StreamMode::AUTO,
45-
'isAudio' => true,
46-
'isVideo' => true
46+
'status' => 'started',
47+
'hasAudio' => true,
48+
'hasVideo' => true
4749
];
4850
}
4951

@@ -134,12 +136,12 @@ private function setupOT()
134136
return $this->setupOTWithMocks([]);
135137
}
136138

137-
public function testInitializes()
139+
public function testInitializes(): void
138140
{
139-
// Arrange
140141
$this->setupOT();
141142
$this->setupBroadcasts(StreamMode::AUTO);
142143
$this->assertInstanceOf(Broadcast::class, $this->broadcast);
144+
143145
}
144146

145147
public function testCannotAddStreamToBroadcastInAutoMode(): void
@@ -238,5 +240,20 @@ public function testCannotRemoveStreamFromBroadcastOnAuto(): void
238240
'5dfds4-asdda4asf4'
239241
);
240242
}
243+
244+
public function testGetters(): void
245+
{
246+
$broadcastObject = new Broadcast($this->broadcastData, [
247+
'apiKey' => 'abc',
248+
'apiSecret' => 'efg',
249+
'client' => $this->client
250+
]);
251+
252+
$this->assertTrue($broadcastObject->hasAudio);
253+
$this->assertTrue($broadcastObject->hasVideo);
254+
$this->assertEquals('broadcast-1234b', $broadcastObject->multiBroadcastTag);
255+
$this->assertEquals('started', $broadcastObject->status);
256+
$this->assertNull($broadcastObject->wrongKey);
257+
}
241258
}
242259

0 commit comments

Comments
 (0)