ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ilBuddySystemRelationCollectionTest Class Reference

Class ilBuddySystemRelationCollectionTest. More...

+ Inheritance diagram for ilBuddySystemRelationCollectionTest:
+ Collaboration diagram for ilBuddySystemRelationCollectionTest:

Public Member Functions

 testElementsCanBeInitiallyAdded (array $elements)
 provideElements More...
 
 testElementsCanBeAddedAndRemoved (array $elements)
 provideElements More...
 
 testIterator (array $elements)
 provideElements More...
 
 testRemovingAnNonExistingElementRaisesAnException ()
 
 testRemovingAnNonExistingElementByKeyRaisesAnException ()
 
 testElementsCanBeSliced ()
 
 testElementsCanBeFiltered ()
 
 provideElements ()
 

Additional Inherited Members

- Protected Member Functions inherited from ilBuddySystemBaseTest
 setUp ()
 
 tearDown ()
 
 setGlobalVariable (string $name, $value)
 

Detailed Description

Member Function Documentation

◆ provideElements()

ilBuddySystemRelationCollectionTest::provideElements ( )

Definition at line 152 of file ilBuddySystemRelationCollectionTest.php.

152  : array
153  {
154  $relation1 = $this->getMockBuilder(ilBuddySystemRelation::class)->disableOriginalConstructor()->getMock();
155  $relation2 = $this->getMockBuilder(ilBuddySystemRelation::class)->disableOriginalConstructor()->getMock();
156  $relation3 = $this->getMockBuilder(ilBuddySystemRelation::class)->disableOriginalConstructor()->getMock();
157  $relation4 = $this->getMockBuilder(ilBuddySystemRelation::class)->disableOriginalConstructor()->getMock();
158  $relation5 = $this->getMockBuilder(ilBuddySystemRelation::class)->disableOriginalConstructor()->getMock();
159 
160  return [
161  'indexed' => [[0, 1, 2, 3, 4, 5]],
162  'associative' => [['A' => 'a', 'B' => 'b', 'C' => 'c']],
163  'mixed' => [[0, 'A' => 'a', 1, 'B' => 'b', 2, 3]],
164  'relations' => [[$relation1, $relation2, $relation3, $relation4, $relation5]]
165  ];
166  }

◆ testElementsCanBeAddedAndRemoved()

ilBuddySystemRelationCollectionTest::testElementsCanBeAddedAndRemoved ( array  $elements)

provideElements

Parameters
array$elements

Definition at line 51 of file ilBuddySystemRelationCollectionTest.php.

References $data, and ILIAS\LTI\ToolProvider\$key.

51  : void
52  {
53  $collection = new ilBuddySystemRelationCollection();
54  $this->assertTrue($collection->isEmpty());
55 
56  foreach ($elements as $elm) {
57  $collection->add($elm);
58  $this->assertTrue($collection->contains($elm));
59  }
60 
61  foreach ($elements as $elm) {
62  $collection->removeElement($elm);
63  $this->assertFalse($collection->contains($elm));
64  }
65 
66  $this->assertTrue($collection->isEmpty());
67 
68  foreach ($elements as $elm) {
69  $collection->add($elm);
70  $this->assertTrue($collection->contains($elm));
71  }
72 
73  foreach ($elements as $elm) {
74  $key = $collection->getKey($elm);
75  $collection->remove($key);
76  $this->assertFalse($collection->contains($elm));
77  }
78 
79  $this->assertTrue($collection->isEmpty());
80 
81  foreach ($elements as $key => $elm) {
82  $collection[$key] = $elm;
83  $this->assertTrue($collection->contains($elm));
84  }
85 
86  foreach ($elements as $key => $elm) {
87  unset($collection[$key]);
88  $this->assertFalse($collection->contains($elm));
89  }
90 
91  $this->assertTrue($collection->isEmpty());
92 
93  $collection[] = 5;
94 
95  $data = $collection->toArray();
96  $this->assertSame(5, reset($data));
97  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...
string $key
Consumer key/client ID value.
Definition: System.php:193

◆ testElementsCanBeFiltered()

ilBuddySystemRelationCollectionTest::testElementsCanBeFiltered ( )

Definition at line 141 of file ilBuddySystemRelationCollectionTest.php.

141  : void
142  {
143  $collection = new ilBuddySystemRelationCollection();
144  $collection->add(1);
145  $collection->add(2);
146  $collection->add(3);
147  $collection->add(4);
148 
149  $this->assertSame([3], $collection->slice(2, 1)->getValues());
150  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testElementsCanBeInitiallyAdded()

ilBuddySystemRelationCollectionTest::testElementsCanBeInitiallyAdded ( array  $elements)

provideElements

Parameters
array$elements

Definition at line 31 of file ilBuddySystemRelationCollectionTest.php.

References ILIAS\LTI\ToolProvider\$key.

31  : void
32  {
33  $collection = new ilBuddySystemRelationCollection($elements);
34 
35  $this->assertFalse($collection->isEmpty());
36  $this->assertSame($elements, $collection->toArray());
37  $this->assertSame(array_values($elements), $collection->getValues());
38  $this->assertSame(array_keys($elements), $collection->getKeys());
39 
40  foreach ($elements as $key => $elm) {
41  $this->assertArrayHasKey($collection->getKey($elm), $elements);
42  $this->assertTrue(isset($collection[$key]));
43  $this->assertEquals($collection[$key], $elm);
44  }
45  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...
string $key
Consumer key/client ID value.
Definition: System.php:193

◆ testElementsCanBeSliced()

ilBuddySystemRelationCollectionTest::testElementsCanBeSliced ( )

Definition at line 128 of file ilBuddySystemRelationCollectionTest.php.

128  : void
129  {
130  $collection = new ilBuddySystemRelationCollection();
131  $collection->add(1);
132  $collection->add(2);
133  $collection->add(3);
134  $collection->add(4);
135 
136  $this->assertCount(2, $collection->filter(function ($elm) {
137  return $elm % 2 === 0;
138  })->toArray());
139  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testIterator()

ilBuddySystemRelationCollectionTest::testIterator ( array  $elements)

provideElements

Parameters
array$elements

Definition at line 103 of file ilBuddySystemRelationCollectionTest.php.

References ILIAS\LTI\ToolProvider\$key.

103  : void
104  {
105  $collection = new ilBuddySystemRelationCollection($elements);
106  $iterations = 0;
107  foreach ($collection->getIterator() as $key => $item) {
108  $this->assertSame($elements[$key], $item, "Item $key not match");
109  $iterations++;
110  }
111  $this->assertCount($iterations, $elements, 'Number of iterations not match');
112  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...
string $key
Consumer key/client ID value.
Definition: System.php:193

◆ testRemovingAnNonExistingElementByKeyRaisesAnException()

ilBuddySystemRelationCollectionTest::testRemovingAnNonExistingElementByKeyRaisesAnException ( )

Definition at line 121 of file ilBuddySystemRelationCollectionTest.php.

121  : void
122  {
123  $this->expectException(InvalidArgumentException::class);
124  $collection = new ilBuddySystemRelationCollection();
125  $collection->remove('phpunit');
126  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testRemovingAnNonExistingElementRaisesAnException()

ilBuddySystemRelationCollectionTest::testRemovingAnNonExistingElementRaisesAnException ( )

Definition at line 114 of file ilBuddySystemRelationCollectionTest.php.

114  : void
115  {
116  $this->expectException(InvalidArgumentException::class);
117  $collection = new ilBuddySystemRelationCollection();
118  $collection->removeElement(5);
119  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

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