ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
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 ()
 

Protected Attributes

 $backupGlobals = false
 

Additional Inherited Members

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

Detailed Description

Member Function Documentation

◆ provideElements()

ilBuddySystemRelationCollectionTest::provideElements ( )
Returns
array

Definition at line 158 of file ilBuddySystemRelationCollectionTest.php.

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

◆ testElementsCanBeAddedAndRemoved()

ilBuddySystemRelationCollectionTest::testElementsCanBeAddedAndRemoved ( array  $elements)

provideElements

Parameters
$elementsarray

Definition at line 42 of file ilBuddySystemRelationCollectionTest.php.

References $data.

42  : void
43  {
44  $collection = new ilBuddySystemRelationCollection();
45  $this->assertTrue($collection->isEmpty());
46 
47  foreach ($elements as $elm) {
48  $collection->add($elm);
49  $this->assertTrue($collection->contains($elm));
50  }
51 
52  foreach ($elements as $elm) {
53  $collection->removeElement($elm);
54  $this->assertFalse($collection->contains($elm));
55  }
56 
57  $this->assertTrue($collection->isEmpty());
58 
59  foreach ($elements as $elm) {
60  $collection->add($elm);
61  $this->assertTrue($collection->contains($elm));
62  }
63 
64  foreach ($elements as $elm) {
65  $key = $collection->getKey($elm);
66  $collection->remove($key);
67  $this->assertFalse($collection->contains($elm));
68  }
69 
70  $this->assertTrue($collection->isEmpty());
71 
72  foreach ($elements as $key => $elm) {
73  $collection[$key] = $elm;
74  $this->assertTrue($collection->contains($elm));
75  }
76 
77  foreach ($elements as $key => $elm) {
78  unset($collection[$key]);
79  $this->assertFalse($collection->contains($elm));
80  }
81 
82  $this->assertTrue($collection->isEmpty());
83 
84  $collection[] = 5;
85 
86  $data = $collection->toArray();
87  $this->assertSame(5, reset($data));
88  }
$data
Definition: storeScorm.php:23
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testElementsCanBeFiltered()

ilBuddySystemRelationCollectionTest::testElementsCanBeFiltered ( )

Definition at line 144 of file ilBuddySystemRelationCollectionTest.php.

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

◆ testElementsCanBeInitiallyAdded()

ilBuddySystemRelationCollectionTest::testElementsCanBeInitiallyAdded ( array  $elements)

provideElements

Parameters
$elementsarray

Definition at line 22 of file ilBuddySystemRelationCollectionTest.php.

22  : void
23  {
24  $collection = new ilBuddySystemRelationCollection($elements);
25 
26  $this->assertFalse($collection->isEmpty());
27  $this->assertSame($elements, $collection->toArray());
28  $this->assertSame(array_values($elements), $collection->getValues());
29  $this->assertSame(array_keys($elements), $collection->getKeys());
30 
31  foreach ($elements as $key => $elm) {
32  $this->assertArrayHasKey($collection->getKey($elm), $elements);
33  $this->assertTrue(isset($collection[$key]));
34  $this->assertEquals($collection[$key], $elm);
35  }
36  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testElementsCanBeSliced()

ilBuddySystemRelationCollectionTest::testElementsCanBeSliced ( )

Definition at line 128 of file ilBuddySystemRelationCollectionTest.php.

References ILIAS\UI\Implementation\Component\toArray().

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...
toArray($value)
Wrap the given value in an array if it is no array.
+ Here is the call graph for this function:

◆ testIterator()

ilBuddySystemRelationCollectionTest::testIterator ( array  $elements)

provideElements

Parameters
$elementsarray

Definition at line 94 of file ilBuddySystemRelationCollectionTest.php.

94  : void
95  {
96  $collection = new ilBuddySystemRelationCollection($elements);
97  $iterations = 0;
98  foreach ($collection->getIterator() as $key => $item) {
99  $this->assertSame($elements[$key], $item, "Item {$key} not match");
100  $iterations++;
101  }
102  $this->assertCount($iterations, $elements, 'Number of iterations not match');
103  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testRemovingAnNonExistingElementByKeyRaisesAnException()

ilBuddySystemRelationCollectionTest::testRemovingAnNonExistingElementByKeyRaisesAnException ( )

Definition at line 118 of file ilBuddySystemRelationCollectionTest.php.

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

◆ testRemovingAnNonExistingElementRaisesAnException()

ilBuddySystemRelationCollectionTest::testRemovingAnNonExistingElementRaisesAnException ( )

Definition at line 108 of file ilBuddySystemRelationCollectionTest.php.

108  : void
109  {
110  $this->expectException(InvalidArgumentException::class);
111  $collection = new ilBuddySystemRelationCollection();
112  $collection->removeElement(5);
113  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

Field Documentation

◆ $backupGlobals

ilBuddySystemRelationCollectionTest::$backupGlobals = false
protected

Definition at line 16 of file ilBuddySystemRelationCollectionTest.php.


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