ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ILIAS\ResourceStorage\Resource\CollectionTest Class Reference

Class CollectionTest. More...

+ Inheritance diagram for ILIAS\ResourceStorage\Resource\CollectionTest:
+ Collaboration diagram for ILIAS\ResourceStorage\Resource\CollectionTest:

Public Member Functions

 testCreateCollection ()
 
 testGetCollectionOfUser ()
 
 testGetCollectionOfWrongUser ()
 
 testIsIn ()
 
 testAddAndRemove ()
 
- Public Member Functions inherited from ILIAS\ResourceStorage\AbstractBaseTest
 getDummyStream ()
 

Data Fields

 $collection_builder
 
 $preloader
 
 $collections
 
const DUMMY_RCID = 'dummy-rcid'
 

Protected Member Functions

 setUp ()
 
 arrayAsGenerator (array $array)
 
- Protected Member Functions inherited from ILIAS\ResourceStorage\AbstractBaseResourceBuilderTest
 setUp ()
 
 mockResourceAndRevision (string $expected_file_name, string $expected_mime_type, int $expected_size, int $expected_version_number, int $expected_owner_id)
 
- Protected Member Functions inherited from ILIAS\ResourceStorage\AbstractBaseTest
 setUp ()
 
 getDummyUploadResult (string $file_name, string $mime_type, int $size)
 
 getDummyFileRevision (ResourceIdentification $id)
 

Protected Attributes

CollectionIdentificationGenerator $rcid_generator
 
- Protected Attributes inherited from ILIAS\ResourceStorage\AbstractBaseResourceBuilderTest
 $revision
 
 $information
 
 $upload_result
 
 $information_repository
 
 $resource_repository
 
 $collection_repository
 
 $revision_repository
 
 $storage_handler
 
ILIAS ResourceStorage Resource ResourceBuilder $resource_builder
 
 $stakeholder_repository
 
 $locking
 
 $storage_handler_factory
 
 $stream_access
 
Repositories $repositories
 
- Protected Attributes inherited from ILIAS\ResourceStorage\AbstractBaseTest
ILIAS ResourceStorage DummyIDGenerator $id_generator
 
 $db_mock
 

Detailed Description

Class CollectionTest.

Author
Fabian Schmid fabia.nosp@m.n@sr.nosp@m..solu.nosp@m.tion.nosp@m.s

Definition at line 36 of file CollectionTest.php.

Member Function Documentation

◆ arrayAsGenerator()

ILIAS\ResourceStorage\Resource\CollectionTest::arrayAsGenerator ( array  $array)
protected

Definition at line 219 of file CollectionTest.php.

Referenced by ILIAS\ResourceStorage\Resource\CollectionTest\testGetCollectionOfUser(), and ILIAS\ResourceStorage\Resource\CollectionTest\testGetCollectionOfWrongUser().

219  : \Generator
220  {
221  foreach ($array as $item) {
222  yield $item;
223  }
224  }
+ Here is the caller graph for this function:

◆ setUp()

ILIAS\ResourceStorage\Resource\CollectionTest::setUp ( )
protected

Definition at line 54 of file CollectionTest.php.

54  : void
55  {
56  parent::setUp();
57  $this->rcid_generator = new DummyIDGenerator(self::DUMMY_RCID);
58 
59  $this->collection_builder = new CollectionBuilder(
60  $this->collection_repository,
61  $this->rcid_generator
62  );
63 
64  $this->preloader = $this->getMockBuilder(RepositoryPreloader::class)
65  ->disableOriginalConstructor()
66  ->getMock();
67 
68  $this->resource_builder = new ResourceBuilder(
69  $this->storage_handler_factory,
70  $this->repositories,
71  $this->locking,
72  $this->stream_access
73  );
74 
75  $this->collections = new Collections(
76  $this->resource_builder,
77  $this->collection_builder,
78  $this->preloader
79  );
80  }

◆ testAddAndRemove()

ILIAS\ResourceStorage\Resource\CollectionTest::testAddAndRemove ( )

Definition at line 175 of file CollectionTest.php.

References ILIAS\ResourceStorage\Collection\ResourceCollection\NO_SPECIFIC_OWNER.

175  : void
176  {
177  $collection = new ResourceCollection(
178  new ResourceCollectionIdentification(self::DUMMY_RCID),
180  ''
181  );
182 
183  $this->assertEquals(self::DUMMY_RCID, $collection->getIdentification()->serialize());
184  $this->assertEquals(ResourceCollection::NO_SPECIFIC_OWNER, $collection->getOwner());
185  $this->assertFalse($collection->hasSpecificOwner());
186  $this->assertEquals('default', $collection->getTitle());
187 
188  $rid_one = new ResourceIdentification('rid_one');
189  $rid_two = new ResourceIdentification('rid_two');
190 
191  $this->assertEquals(0, $collection->count());
192 
193  $collection->add($rid_one);
194  $this->assertTrue($collection->isIn($rid_one));
195  $this->assertEquals(1, $collection->count());
196 
197  $collection->add($rid_two);
198  $this->assertTrue($collection->isIn($rid_one));
199  $this->assertTrue($collection->isIn($rid_two));
200  $this->assertEquals(2, $collection->count());
201 
202  $collection->remove($rid_one);
203  $this->assertFalse($collection->isIn($rid_one));
204  $this->assertTrue($collection->isIn($rid_two));
205  $this->assertEquals(1, $collection->count());
206 
207  $collection->remove($rid_two);
208  $this->assertFalse($collection->isIn($rid_one));
209  $this->assertFalse($collection->isIn($rid_two));
210  $this->assertEquals(0, $collection->count());
211 
212  $collection->clear();
213  $this->assertFalse($collection->isIn($rid_one));
214  $this->assertFalse($collection->isIn($rid_two));
215  $this->assertEquals(0, $collection->count());
216  }

◆ testCreateCollection()

ILIAS\ResourceStorage\Resource\CollectionTest::testCreateCollection ( )

Definition at line 83 of file CollectionTest.php.

References $id.

83  : void
84  {
85  $identifiation = $this->rcid_generator->getUniqueResourceCollectionIdentification();
86  $this->collection_repository->method('blank')->with($identifiation)->willReturn(
87  new ResourceCollection($identifiation, -1, '')
88  );
89 
90  $id = $this->collections->id();
91 
92  $this->assertInstanceOf(ResourceCollectionIdentification::class, $id);
93  $this->assertNotInstanceOf(MockObject::class, $id);
94  $this->assertEquals(self::DUMMY_RCID, $id->serialize());
95  }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23

◆ testGetCollectionOfUser()

ILIAS\ResourceStorage\Resource\CollectionTest::testGetCollectionOfUser ( )

Definition at line 97 of file CollectionTest.php.

References $id, and ILIAS\ResourceStorage\Resource\CollectionTest\arrayAsGenerator().

97  : void
98  {
99  $identifiation = $this->rcid_generator->getUniqueResourceCollectionIdentification();
100  $this->collection_repository->method('blank')->with($identifiation)->willReturn(
101  new ResourceCollection($identifiation, 42, '')
102  );
103 
104  $id = $this->collections->id($identifiation->serialize());
105 
106  $this->collection_repository->method('getResourceIdStrings')->with($identifiation)->willReturn(
107  $this->arrayAsGenerator([])
108  );
109 
110  $collection = $this->collections->get($id, 42);
111 
112  $this->assertInstanceOf(ResourceCollection::class, $collection);
113  $this->assertNotInstanceOf(MockObject::class, $collection);
114  $this->assertEquals(self::DUMMY_RCID, $collection->getIdentification()->serialize());
115  $this->assertEquals([], $collection->getResourceIdentifications());
116  }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
+ Here is the call graph for this function:

◆ testGetCollectionOfWrongUser()

ILIAS\ResourceStorage\Resource\CollectionTest::testGetCollectionOfWrongUser ( )

Definition at line 118 of file CollectionTest.php.

References ILIAS\ResourceStorage\Resource\CollectionTest\arrayAsGenerator().

118  : void
119  {
120  $identifiation = new ResourceCollectionIdentification(self::DUMMY_RCID);
121 
122  $this->collection_repository->method('existing')->with($identifiation)->willReturn(
123  new ResourceCollection($identifiation, 42, '')
124  );
125 
126  $this->collection_repository->method('getResourceIdStrings')->with($identifiation)->willReturn(
127  $this->arrayAsGenerator([])
128  );
129 
130  $this->expectException(\LogicException::class);
131  $this->expectExceptionMessage('Invalid owner of collection');
132  $collection = $this->collections->get($identifiation, 84);
133  }
+ Here is the call graph for this function:

◆ testIsIn()

ILIAS\ResourceStorage\Resource\CollectionTest::testIsIn ( )

Definition at line 135 of file CollectionTest.php.

135  : void
136  {
137  $collection = new ResourceCollection(new ResourceCollectionIdentification(self::DUMMY_RCID), 42, '');
138 
139  $this->assertEquals(self::DUMMY_RCID, $collection->getIdentification()->serialize());
140  $this->assertEquals(42, $collection->getOwner());
141  $this->assertTrue($collection->hasSpecificOwner());
142  $this->assertEquals('default', $collection->getTitle());
143 
144  $rid_one = new ResourceIdentification('rid_one');
145  $rid_two = new ResourceIdentification('rid_two');
146  $rid_three = new ResourceIdentification('rid_three');
147 
148  $this->assertEquals(0, $collection->count());
149 
150  $collection->add($rid_one);
151  $this->assertTrue($collection->isIn($rid_one));
152  $this->assertFalse($collection->isIn($rid_two));
153  $this->assertFalse($collection->isIn($rid_three));
154  $this->assertEquals(1, $collection->count());
155 
156  $collection->add($rid_two);
157  $this->assertTrue($collection->isIn($rid_one));
158  $this->assertTrue($collection->isIn($rid_two));
159  $this->assertFalse($collection->isIn($rid_three));
160  $this->assertEquals(2, $collection->count());
161 
162  $collection->add($rid_three);
163  $this->assertTrue($collection->isIn($rid_one));
164  $this->assertTrue($collection->isIn($rid_two));
165  $this->assertTrue($collection->isIn($rid_three));
166  $this->assertEquals(3, $collection->count());
167 
168  $collection->clear();
169  $this->assertFalse($collection->isIn($rid_one));
170  $this->assertFalse($collection->isIn($rid_two));
171  $this->assertFalse($collection->isIn($rid_three));
172  $this->assertEquals(0, $collection->count());
173  }

Field Documentation

◆ $collection_builder

ILIAS\ResourceStorage\Resource\CollectionTest::$collection_builder

Definition at line 41 of file CollectionTest.php.

◆ $collections

ILIAS\ResourceStorage\Resource\CollectionTest::$collections

Definition at line 49 of file CollectionTest.php.

◆ $preloader

ILIAS\ResourceStorage\Resource\CollectionTest::$preloader

Definition at line 45 of file CollectionTest.php.

◆ $rcid_generator

CollectionIdentificationGenerator ILIAS\ResourceStorage\Resource\CollectionTest::$rcid_generator
protected

Definition at line 52 of file CollectionTest.php.

◆ DUMMY_RCID

const ILIAS\ResourceStorage\Resource\CollectionTest::DUMMY_RCID = 'dummy-rcid'

Definition at line 50 of file CollectionTest.php.


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