ILIAS  trunk Revision v11.0_alpha-1744-gb0451eebef4
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilBuddySystemRelationCollectionTestCase Class Reference

Class ilBuddySystemRelationCollectionTest. More...

+ Inheritance diagram for ilBuddySystemRelationCollectionTestCase:
+ Collaboration diagram for ilBuddySystemRelationCollectionTestCase:

Public Member Functions

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

Static Public Member Functions

static provideElements ()
 

Additional Inherited Members

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

Detailed Description

Class ilBuddySystemRelationCollectionTest.

Author
Michael Jansen mjans.nosp@m.en@d.nosp@m.ataba.nosp@m.y.de

Definition at line 25 of file ilBuddySystemRelationCollectionTestCase.php.

Member Function Documentation

◆ provideElements()

static ilBuddySystemRelationCollectionTestCase::provideElements ( )
static
Returns
array{indexed: int[][], associative: array<int, array{A: string, B: string, C: string}>, mixed: array<int, array<int|string, int|string>>, relations: &[][]}

Definition at line 150 of file ilBuddySystemRelationCollectionTestCase.php.

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

◆ testElementsCanBeAddedAndRemoved()

ilBuddySystemRelationCollectionTestCase::testElementsCanBeAddedAndRemoved ( array  $elements)

provideElements

Definition at line 49 of file ilBuddySystemRelationCollectionTestCase.php.

References $data.

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

◆ testElementsCanBeFiltered()

ilBuddySystemRelationCollectionTestCase::testElementsCanBeFiltered ( )

Definition at line 136 of file ilBuddySystemRelationCollectionTestCase.php.

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

◆ testElementsCanBeInitiallyAdded()

ilBuddySystemRelationCollectionTestCase::testElementsCanBeInitiallyAdded ( array  $elements)

provideElements

Definition at line 30 of file ilBuddySystemRelationCollectionTestCase.php.

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

◆ testElementsCanBeSliced()

ilBuddySystemRelationCollectionTestCase::testElementsCanBeSliced ( )

Definition at line 125 of file ilBuddySystemRelationCollectionTestCase.php.

125  : void
126  {
127  $collection = new ilBuddySystemRelationCollection();
128  $collection->add(1);
129  $collection->add(2);
130  $collection->add(3);
131  $collection->add(4);
132 
133  $this->assertCount(2, $collection->filter(fn(int $elm): bool => $elm % 2 === 0)->toArray());
134  }
Class ilBuddySystemRelationCollection A collection which contains all entries of a buddy list...

◆ testIterator()

ilBuddySystemRelationCollectionTestCase::testIterator ( array  $elements)

provideElements

Definition at line 100 of file ilBuddySystemRelationCollectionTestCase.php.

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

◆ testRemovingAnNonExistingElementByKeyRaisesAnException()

ilBuddySystemRelationCollectionTestCase::testRemovingAnNonExistingElementByKeyRaisesAnException ( )

Definition at line 118 of file ilBuddySystemRelationCollectionTestCase.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()

ilBuddySystemRelationCollectionTestCase::testRemovingAnNonExistingElementRaisesAnException ( )

Definition at line 111 of file ilBuddySystemRelationCollectionTestCase.php.

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

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