mapper = $this->createMock(RestrictionMapper::class); $this->groupManager = $this->createMock(IGroupManager::class); $this->service = new RestrictionService($this->mapper, $this->groupManager); } public function testFindByGroupIds() { $restriction0 = new Restriction(); $restriction0->setRoomTypes(\json_encode([Room::ACCESS_INTERNAL])); $restriction0->setMaxParticipants(50); $restriction0->setAllowRecording(false); $restriction1 = new Restriction(); $restriction1->setRoomTypes(\json_encode([Room::ACCESS_INTERNAL, Room::ACCESS_INTERNAL_RESTRICTED])); $restriction1->setMaxRooms(10); $restriction1->setMaxParticipants(100); $restriction1->setAllowRecording(true); $this->mapper ->expects($this->once()) ->method('findByGroupIds') ->willReturn([$restriction1]); $this->mapper ->expects($this->once()) ->method('findByGroupId') ->willReturn($restriction0); $result = $this->service->findByGroupIds([]); $this->assertEquals([Room::ACCESS_INTERNAL], \json_decode($result->getRoomTypes())); $this->assertEquals(-1, $result->getMaxRooms()); $this->assertEquals(100, $result->getMaxParticipants()); $this->assertTrue($result->getAllowRecording()); } }