@@ -120,9 +120,24 @@ protected function generateCreateParams()
120120 'allowRequestsWithoutSession ' => $ this ->faker ->boolean (50 ),
121121 'virtualBackgroundsDisabled ' => $ this ->faker ->boolean (50 ),
122122 'userCameraCap ' => $ this ->faker ->numberBetween (1 , 5 ),
123+ 'groups ' => $ this ->generateBreakoutRoomsGroups (),
123124 ];
124125 }
125126
127+ /**
128+ * @return array<array{id: string, name: string, roster: array}>
129+ */
130+ protected function generateBreakoutRoomsGroups (): array
131+ {
132+ $ br = $ this ->faker ->numberBetween (0 , 8 );
133+ $ groups = [];
134+ for ($ i = 0 ; $ i <= $ br ; ++$ i ) {
135+ $ groups [] = ['id ' => $ this ->faker ->uuid , 'name ' => $ this ->faker ->name , 'roster ' => $ this ->faker ->randomElements ];
136+ }
137+
138+ return $ groups ;
139+ }
140+
126141 /**
127142 * @return array
128143 */
@@ -145,6 +160,10 @@ protected function getCreateMock($params)
145160 {
146161 $ createMeetingParams = new CreateMeetingParameters ($ params ['meetingID ' ], $ params ['name ' ]);
147162
163+ foreach ($ params ['groups ' ] as $ group ) {
164+ $ createMeetingParams ->addBreakoutRoomsGroup ($ group ['id ' ], $ group ['name ' ], $ group ['roster ' ]);
165+ }
166+
148167 return $ createMeetingParams ->setAttendeePW ($ params ['attendeePW ' ])
149168 ->setModeratorPW ($ params ['moderatorPW ' ])
150169 ->setDialNumber ($ params ['dialNumber ' ])
@@ -339,4 +358,19 @@ public function assertEachGetterValueIsBoolean($obj, $getters)
339358 $ this ->assertIsBool ($ obj ->$ getterName (), 'Got a ' .\gettype ($ obj ->$ getterName ()).' instead of a boolean for property -> ' .$ getterName );
340359 }
341360 }
361+
362+ public function assertUrlContainsAllRequestParameters (string $ url , array $ parameters ): void
363+ {
364+ foreach ($ parameters as $ parameter ) {
365+ if (\is_bool ($ parameter )) {
366+ $ parameter = $ parameter ? 'true ' : 'false ' ;
367+ }
368+
369+ if (!\is_array ($ parameter )) {
370+ $ this ->assertStringContainsString ($ parameter , urldecode ($ url ));
371+ } else {
372+ $ this ->assertUrlContainsAllRequestParameters ($ url , $ parameter );
373+ }
374+ }
375+ }
342376}
0 commit comments