public function testGetUsers()
{
$organization = new Organization((object) ['id' => '123']);
$user_data = ['a' => ['id' => 'abc', 'email' => '*****@*****.**', 'profile' => (object) ['full_name' => 'User A']], 'b' => ['id' => 'bcd', 'email' => '*****@*****.**', 'profile' => (object) ['full_name' => 'User B']], 'c' => ['id' => 'cde', 'email' => '*****@*****.**', 'profile' => (object) ['full_name' => 'User C']]];
$model_data = $users = [];
foreach ($user_data as $i => $user) {
$model_data[$i] = $this->getMockBuilder(OrganizationUserMembership::class)->disableOriginalConstructor()->getMock();
$users[$user['id']] = new User((object) $user);
$model_data[$i]->method('getUser')->willReturn($users[$user['id']]);
}
$org_user_membership = $this->getMockBuilder(OrganizationUserMemberships::class)->setMethods(['getMembers'])->disableOriginalConstructor()->getMock();
$org_user_membership->expects($this->any())->method('getMembers')->willReturn($model_data);
$container = $this->getMockBuilder(Container::class)->disableOriginalConstructor()->getMock();
$container->expects($this->once())->method('get')->with(OrganizationUserMemberships::class, [['organization' => $organization]])->willReturn($org_user_membership);
$organization->setContainer($container);
$this->assertEquals($org_user_membership, $organization->getUserMemberships());
$this->assertEquals($users, $organization->getUsers());
}