Skip to content

Commit ebb2c56

Browse files
authored
Merge pull request #244 from opentok/dev
* Fix Notice: Undefined property: OpenTok\StreamList:: when call OpenTok\StreamList::getItems() method * Update Travis Config to specify HHVM 3.3.0 (the last HHVM version that supports PHP) (#242)
2 parents a8b636c + 0a3f3cb commit ebb2c56

File tree

5 files changed

+54
-44
lines changed

5 files changed

+54
-44
lines changed

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@ php:
55
- 5.6
66
- 7.0
77
- 7.1
8-
- hhvm
8+
- hhvm-3.30
99
before_script:
10+
- curl -sSfL -o ~/.phpenv/versions/hhvm/bin/phpunit https://phar.phpunit.de/phpunit-5.7.phar
1011
- travis_retry composer install
1112
script:
1213
- ./vendor/bin/phpunit

src/OpenTok/StreamList.php

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,17 @@
33
namespace OpenTok;
44

55
/**
6-
* An object, returned by the <a href="OpenTok.html#method_listStreams">OpenTok.listStreams()</a>
7-
* method, representing a list of streams in an OpenTok session.
8-
*/
9-
class StreamList {
10-
11-
/** @ignore */
6+
* An object, returned by the <a href="OpenTok.html#method_listStreams">OpenTok.listStreams()</a>
7+
* method, representing a list of streams in an OpenTok session.
8+
*/
9+
class StreamList
10+
{
11+
/** @ignore */
1212
private $data;
1313

14+
/** @ignore */
15+
private $items;
16+
1417
/** @ignore */
1518
public function __construct($streamListData)
1619
{
@@ -19,6 +22,8 @@ public function __construct($streamListData)
1922

2023
/**
2124
* Returns the number of total streams for the session ID.
25+
*
26+
* @return int
2227
*/
2328
public function totalCount()
2429
{
@@ -27,20 +32,24 @@ public function totalCount()
2732

2833
/**
2934
* Returns an array of Stream objects.
35+
*
36+
* @return array
3037
*/
3138
public function getItems()
3239
{
33-
if (!$this->items) {
40+
if (!is_array($this->items)) {
3441
$items = array();
35-
foreach($this->data['items'] as $streamData) {
42+
foreach ($this->data['items'] as $streamData) {
3643
$items[] = new Stream($streamData);
3744
}
3845
$this->items = $items;
3946
}
4047
return $this->items;
4148
}
4249

43-
50+
/**
51+
* @return array
52+
*/
4453
public function jsonSerialize()
4554
{
4655
return $this->data;

src/OpenTok/Util/Client.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838

3939
// TODO: build this dynamically
4040
/** @internal */
41-
define('OPENTOK_SDK_VERSION', '4.4.0');
41+
define('OPENTOK_SDK_VERSION', '4.4.1');
4242
/** @internal */
4343
define('OPENTOK_SDK_USER_AGENT', 'OpenTok-PHP-SDK/' . OPENTOK_SDK_VERSION);
4444

tests/OpenTok/ArchiveTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ public function testStopsArchive()
156156
// TODO: test the dynamically built User Agent string
157157
$userAgent = $request->getHeaderLine('User-Agent');
158158
$this->assertNotEmpty($userAgent);
159-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
159+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
160160

161161
// TODO: test the properties of the actual archive object
162162
$this->assertEquals('stopped', $this->archive->status);
@@ -195,7 +195,7 @@ public function testDeletesArchive()
195195
// TODO: test the dynamically built User Agent string
196196
$userAgent = $request->getHeaderLine('User-Agent');
197197
$this->assertNotEmpty($userAgent);
198-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
198+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
199199

200200
$this->assertTrue($success);
201201
// TODO: assert that all properties of the archive object were cleared

tests/OpenTok/OpenTokTest.php

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public function testCreatesDefaultSession()
126126
// TODO: test the dynamically built User Agent string
127127
$userAgent = $request->getHeaderLine('User-Agent');
128128
$this->assertNotEmpty($userAgent);
129-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
129+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
130130

131131
$p2p_preference = $this->getPostField($request, 'p2p.preference');
132132
$this->assertEquals('enabled', $p2p_preference);
@@ -186,7 +186,7 @@ public function testCreatesMediaRoutedAndLocationSession()
186186
// TODO: test the dynamically built User Agent string
187187
$userAgent = $request->getHeaderLine('User-Agent');
188188
$this->assertNotEmpty($userAgent);
189-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
189+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
190190

191191
$location = $this->getPostField($request, 'location');
192192
$this->assertEquals('12.34.56.78', $location);
@@ -234,7 +234,7 @@ public function testCreatesMediaRelayedSession()
234234
// TODO: test the dynamically built User Agent string
235235
$userAgent = $request->getHeaderLine('User-Agent');
236236
$this->assertNotEmpty($userAgent);
237-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
237+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
238238

239239
$p2p_preference = $this->getPostField($request, 'p2p.preference');
240240
$this->assertEquals('enabled', $p2p_preference);
@@ -279,7 +279,7 @@ public function testCreatesAutoArchivedSession()
279279
// TODO: test the dynamically built User Agent string
280280
$userAgent = $request->getHeaderLine('User-Agent');
281281
$this->assertNotEmpty($userAgent);
282-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
282+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
283283

284284
$archiveMode = $this->getPostField($request, 'archiveMode');
285285
$this->assertEquals('always', $archiveMode);
@@ -521,7 +521,7 @@ public function testStartsArchive()
521521
// TODO: test the dynamically built User Agent string
522522
$userAgent = $request->getHeaderLine('User-Agent');
523523
$this->assertNotEmpty($userAgent);
524-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
524+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
525525

526526
$this->assertInstanceOf('OpenTok\Archive', $archive);
527527
$this->assertEquals(0, $archive->duration);
@@ -571,7 +571,7 @@ public function testStartsArchiveNamed()
571571
// TODO: test the dynamically built User Agent string
572572
$userAgent = $request->getHeaderLine('User-Agent');
573573
$this->assertNotEmpty($userAgent);
574-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
574+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
575575

576576
$body = json_decode($request->getBody());
577577
$this->assertEquals($sessionId, $body->sessionId);
@@ -619,7 +619,7 @@ public function testStartsArchiveNamedDeprecated()
619619
// TODO: test the dynamically built User Agent string
620620
$userAgent = $request->getHeaderLine('User-Agent');
621621
$this->assertNotEmpty($userAgent);
622-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
622+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
623623

624624
$body = json_decode($request->getBody());
625625
$this->assertEquals($sessionId, $body->sessionId);
@@ -666,7 +666,7 @@ public function testStartsArchiveAudioOnly()
666666
// TODO: test the dynamically built User Agent string
667667
$userAgent = $request->getHeaderLine('User-Agent');
668668
$this->assertNotEmpty($userAgent);
669-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
669+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
670670

671671
$body = json_decode($request->getBody());
672672
$this->assertEquals($sessionId, $body->sessionId);
@@ -716,7 +716,7 @@ public function testStartsArchiveIndividualOutput()
716716
// TODO: test the dynamically built User Agent string
717717
$userAgent = $request->getHeaderLine('User-Agent');
718718
$this->assertNotEmpty($userAgent);
719-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
719+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
720720

721721
$body = json_decode($request->getBody());
722722
$this->assertEquals($sessionId, $body->sessionId);
@@ -765,7 +765,7 @@ public function testStartsArchiveResolutionSD()
765765
// TODO: test the dynamically built User Agent string
766766
$userAgent = $request->getHeaderLine('User-Agent');
767767
$this->assertNotEmpty($userAgent);
768-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
768+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
769769

770770
$body = json_decode($request->getBody());
771771
$this->assertEquals($sessionId, $body->sessionId);
@@ -813,7 +813,7 @@ public function testStartsArchiveResolutionHD()
813813
// TODO: test the dynamically built User Agent string
814814
$userAgent = $request->getHeaderLine('User-Agent');
815815
$this->assertNotEmpty($userAgent);
816-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
816+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
817817

818818
$body = json_decode($request->getBody());
819819
$this->assertEquals($sessionId, $body->sessionId);
@@ -857,7 +857,7 @@ public function testStopsArchive()
857857
// TODO: test the dynamically built User Agent string
858858
$userAgent = $request->getHeaderLine('User-Agent');
859859
$this->assertNotEmpty($userAgent);
860-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
860+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
861861

862862
$this->assertInstanceOf('OpenTok\Archive', $archive);
863863
// TODO: test the properties of the actual archive object
@@ -896,7 +896,7 @@ public function testGetsArchive()
896896
// TODO: test the dynamically built User Agent string
897897
$userAgent = $request->getHeaderLine('User-Agent');
898898
$this->assertNotEmpty($userAgent);
899-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
899+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
900900

901901
$this->assertInstanceOf('OpenTok\Archive', $archive);
902902
// TODO: test the properties of the actual archive object
@@ -933,7 +933,7 @@ public function testDeletesArchive()
933933
// TODO: test the dynamically built User Agent string
934934
$userAgent = $request->getHeaderLine('User-Agent');
935935
$this->assertNotEmpty($userAgent);
936-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
936+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
937937

938938
$this->assertTrue($success);
939939
// TODO: test the properties of the actual archive object
@@ -968,7 +968,7 @@ public function testListsArchives()
968968
// TODO: test the dynamically built User Agent string
969969
$userAgent = $request->getHeaderLine('User-Agent');
970970
$this->assertNotEmpty($userAgent);
971-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
971+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
972972

973973
$this->assertInstanceOf('OpenTok\ArchiveList', $archiveList);
974974
// TODO: test the properties of the actual archiveList object and its contained archive
@@ -1004,7 +1004,7 @@ public function testListsArchivesWithOffsetAndCount()
10041004
// TODO: test the dynamically built User Agent string
10051005
$userAgent = $request->getHeaderLine('User-Agent');
10061006
$this->assertNotEmpty($userAgent);
1007-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1007+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
10081008

10091009
$this->assertInstanceOf('OpenTok\ArchiveList', $archiveList);
10101010
$this->assertEquals(1, $archiveList->totalCount());
@@ -1045,7 +1045,7 @@ public function testListsArchivesWithSessionId()
10451045
// TODO: test the dynamically built User Agent string
10461046
$userAgent = $request->getHeaderLine('User-Agent');
10471047
$this->assertNotEmpty($userAgent);
1048-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1048+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
10491049

10501050
$this->assertInstanceOf('OpenTok\ArchiveList', $archiveList);
10511051
$this->assertEquals(2, $archiveList->totalCount());
@@ -1131,7 +1131,7 @@ public function testForceDisconnect()
11311131
// TODO: test the dynamically built User Agent string
11321132
$userAgent = $request->getHeaderLine('User-Agent');
11331133
$this->assertNotEmpty($userAgent);
1134-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1134+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
11351135

11361136
$this->assertTrue($success);
11371137
}
@@ -1192,7 +1192,7 @@ public function testStartsBroadcast()
11921192
// TODO: test the dynamically built User Agent string
11931193
$userAgent = $request->getHeaderLine('User-Agent');
11941194
$this->assertNotEmpty($userAgent);
1195-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1195+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
11961196

11971197
$this->assertInstanceOf('OpenTok\Broadcast', $broadcast);
11981198
$this->assertInternalType('string', $broadcast->id);
@@ -1248,7 +1248,7 @@ public function testStartBroadcastWithOptions()
12481248
// TODO: test the dynamically built User Agent string
12491249
$userAgent = $request->getHeaderLine('User-Agent');
12501250
$this->assertNotEmpty($userAgent);
1251-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1251+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
12521252

12531253
$this->assertInstanceOf('OpenTok\Broadcast', $broadcast);
12541254
$this->assertInternalType('string', $broadcast->id);
@@ -1295,7 +1295,7 @@ public function testStopsBroadcast()
12951295
// TODO: test the dynamically built User Agent string
12961296
$userAgent = $request->getHeaderLine('User-Agent');
12971297
$this->assertNotEmpty($userAgent);
1298-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1298+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
12991299

13001300
$this->assertInstanceOf('OpenTok\Broadcast', $broadcast);
13011301
$this->assertTrue($broadcast->isStopped);
@@ -1332,7 +1332,7 @@ public function testGetsBroadcast()
13321332
// TODO: test the dynamically built User Agent string
13331333
$userAgent = $request->getHeaderLine('User-Agent');
13341334
$this->assertNotEmpty($userAgent);
1335-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1335+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
13361336

13371337
$this->assertInstanceOf('OpenTok\Broadcast', $broadcast);
13381338
}
@@ -1376,7 +1376,7 @@ public function testUpdatesBroadcastLayoutWithPredefined()
13761376
// TODO: test the dynamically built User Agent string
13771377
$userAgent = $request->getHeaderLine('User-Agent');
13781378
$this->assertNotEmpty($userAgent);
1379-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1379+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
13801380
}
13811381

13821382
public function testUpdatesBroadcastLayoutWithCustom()
@@ -1422,7 +1422,7 @@ public function testUpdatesBroadcastLayoutWithCustom()
14221422
// TODO: test the dynamically built User Agent string
14231423
$userAgent = $request->getHeaderLine('User-Agent');
14241424
$this->assertNotEmpty($userAgent);
1425-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1425+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
14261426
}
14271427

14281428
public function testUpdatesStreamLayoutClassList()
@@ -1467,7 +1467,7 @@ public function testUpdatesStreamLayoutClassList()
14671467
// TODO: test the dynamically built User Agent string
14681468
$userAgent = $request->getHeaderLine('User-Agent');
14691469
$this->assertNotEmpty($userAgent);
1470-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1470+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
14711471
}
14721472

14731473
public function testGetStream()
@@ -1506,7 +1506,7 @@ public function testGetStream()
15061506

15071507
$userAgent = $request->getHeaderLine('User-Agent');
15081508
$this->assertNotEmpty($userAgent);
1509-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1509+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
15101510
}
15111511

15121512
public function testSipCall()
@@ -1674,7 +1674,7 @@ public function testSignalData()
16741674
// TODO: test the dynamically built User Agent string
16751675
$userAgent = $request->getHeaderLine('User-Agent');
16761676
$this->assertNotEmpty($userAgent);
1677-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1677+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
16781678

16791679
$body = json_decode($request->getBody());
16801680
$this->assertEquals('apple', $body->data);
@@ -1716,7 +1716,7 @@ public function testSignalWithConnectionId()
17161716
// TODO: test the dynamically built User Agent string
17171717
$userAgent = $request->getHeaderLine('User-Agent');
17181718
$this->assertNotEmpty($userAgent);
1719-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1719+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
17201720

17211721
$body = json_decode($request->getBody());
17221722
$this->assertEquals('random message', $body->data);
@@ -1827,7 +1827,7 @@ public function testListStreams()
18271827
// TODO: test the dynamically built User Agent string
18281828
$userAgent = $request->getHeaderLine('User-Agent');
18291829
$this->assertNotEmpty($userAgent);
1830-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1830+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
18311831

18321832
$this->assertInstanceOf('OpenTok\StreamList', $streamList);
18331833

@@ -1871,7 +1871,7 @@ public function testsSetArchiveLayoutWithPredefined()
18711871
// TODO: test the dynamically built User Agent string
18721872
$userAgent = $request->getHeaderLine('User-Agent');
18731873
$this->assertNotEmpty($userAgent);
1874-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1874+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
18751875
}
18761876

18771877
public function testsSetArchiveLayoutWithCustom()
@@ -1917,7 +1917,7 @@ public function testsSetArchiveLayoutWithCustom()
19171917
// TODO: test the dynamically built User Agent string
19181918
$userAgent = $request->getHeaderLine('User-Agent');
19191919
$this->assertNotEmpty($userAgent);
1920-
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.0', $userAgent);
1920+
$this->assertStringStartsWith('OpenTok-PHP-SDK/4.4.1', $userAgent);
19211921
}
19221922

19231923
}

0 commit comments

Comments
 (0)