ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ExcPeerReviewTest Class Reference

Test peer reviews. More...

+ Inheritance diagram for ExcPeerReviewTest:
+ Collaboration diagram for ExcPeerReviewTest:

Public Member Functions

 testDistributionNumberOfPeers ()
 Test if each rater has $num_assignments peers. More...
 
 testDistributionNumberOfRaters ()
 Test if each peer is assigned to $num_assignments raters. More...
 
 testDistributionNoSelfAssignment ()
 Test if raters are not assigned as peers to themselves. More...
 

Protected Member Functions

 tearDown ()
 
 getDistribution ($user_ids, $num_assignments)
 

Detailed Description

Test peer reviews.

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 26 of file ExcPeerReviewTest.php.

Member Function Documentation

◆ getDistribution()

ExcPeerReviewTest::getDistribution (   $user_ids,
  $num_assignments 
)
protected

Definition at line 32 of file ExcPeerReviewTest.php.

33 {
34 return new \ILIAS\Exercise\PeerReview\ExcPeerReviewDistribution($user_ids, $num_assignments);
35 }
Calculates peer review distribution (rater to peer assignments)

Referenced by testDistributionNoSelfAssignment(), testDistributionNumberOfPeers(), and testDistributionNumberOfRaters().

+ Here is the caller graph for this function:

◆ tearDown()

ExcPeerReviewTest::tearDown ( )
protected

Definition at line 28 of file ExcPeerReviewTest.php.

28 : void
29 {
30 }

◆ testDistributionNoSelfAssignment()

ExcPeerReviewTest::testDistributionNoSelfAssignment ( )

Test if raters are not assigned as peers to themselves.

Definition at line 79 of file ExcPeerReviewTest.php.

79 : void
80 {
81 $user_ids = [10,20,30,40,50];
82 $num_assignments = 4;
83
84 $distribution = $this->getDistribution($user_ids, $num_assignments);
85
86 foreach ($user_ids as $user_id) {
87 foreach ($distribution->getPeersOfRater($user_id) as $peer) {
88 $this->assertNotEquals($user_id, $peer);
89 }
90 }
91 }
getDistribution($user_ids, $num_assignments)

References $user_id, and getDistribution().

+ Here is the call graph for this function:

◆ testDistributionNumberOfPeers()

ExcPeerReviewTest::testDistributionNumberOfPeers ( )

Test if each rater has $num_assignments peers.

Definition at line 40 of file ExcPeerReviewTest.php.

40 : void
41 {
42 $user_ids = [100,200,300,400,500];
43 $num_assignments = 3;
44
45 $distribution = $this->getDistribution($user_ids, $num_assignments);
46
47 foreach ($user_ids as $user_id) {
48 $this->assertEquals(count($distribution->getPeersOfRater($user_id)), $num_assignments);
49 }
50 }

References $user_id, and getDistribution().

+ Here is the call graph for this function:

◆ testDistributionNumberOfRaters()

ExcPeerReviewTest::testDistributionNumberOfRaters ( )

Test if each peer is assigned to $num_assignments raters.

Definition at line 55 of file ExcPeerReviewTest.php.

55 : void
56 {
57 $user_ids = [10,20,30,40,50];
58 $num_assignments = 4;
59
60 $distribution = $this->getDistribution($user_ids, $num_assignments);
61
62 $peer_raters = [];
63 foreach ($user_ids as $user_id) {
64 foreach ($distribution->getPeersOfRater($user_id) as $peer) {
65 $peer_raters[$peer][$user_id] = $user_id;
66 }
67 }
68
69 $this->assertSameSize($peer_raters, $user_ids);
70
71 foreach ($peer_raters as $raters) {
72 $this->assertEquals(count($raters), $num_assignments);
73 }
74 }

References $user_id, and getDistribution().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: