Ejemplo n.º 1
0
 /**
  * Test for data_connector::getUserResultSourcedIDsResourceLink().
  */
 public function test_get_user_result_sourced_ids_resource_link()
 {
     $dc = new data_connector();
     $consumer = new ToolConsumer(null, $dc);
     $consumer->name = 'testconsumername';
     $consumer->setKey('TestKey');
     $consumer->secret = 'testsecret';
     $consumer->idScope = ToolProvider::ID_SCOPE_GLOBAL;
     $consumer->save();
     $title = 'testcontexttitle';
     $settings = ['a', 'b', 'c'];
     $lticontextid = 'testlticontextid';
     $context = Context::fromConsumer($consumer, $lticontextid);
     $context->title = $title;
     $context->settings = $settings;
     $context->save();
     $resourcelink = ResourceLink::fromConsumer($consumer, 'testresourcelinkid');
     $resourcelink->setContextId($context->getRecordId());
     $resourcelink->save();
     $resourcelinkchild = ResourceLink::fromConsumer($consumer, 'testresourcelinkchildid');
     $resourcelinkchild->primaryResourceLinkId = $resourcelink->getRecordId();
     $resourcelinkchild->shareApproved = true;
     $resourcelinkchild->setContextId($context->getRecordId());
     $resourcelinkchild->save();
     $user = User::fromResourceLink($resourcelink, '');
     $user->ltiResultSourcedId = 'testLtiResultSourcedId';
     $user->ltiUserId = 'user1';
     $dc->saveUser($user);
     $user2 = User::fromResourceLink($resourcelinkchild, '');
     $user2->ltiResultSourcedId = 'testLtiResultSourcedId2';
     $user->ltiUserId = 'user2';
     $dc->saveUser($user2);
     $users = $dc->getUserResultSourcedIDsResourceLink($resourcelink, false, null);
     $this->assertNotEmpty($users);
     $this->assertCount(2, $users);
     $users = $dc->getUserResultSourcedIDsResourceLink($resourcelink, true, null);
     $this->assertNotEmpty($users);
     $this->assertCount(1, $users);
     $users = $dc->getUserResultSourcedIDsResourceLink($resourcelink, false, ToolProvider::ID_SCOPE_GLOBAL);
     $this->assertNotEmpty($users);
     $this->assertCount(2, $users);
     $users = $dc->getUserResultSourcedIDsResourceLink($resourcelink, true, ToolProvider::ID_SCOPE_GLOBAL);
     $this->assertNotEmpty($users);
     $this->assertCount(1, $users);
 }