ILIAS  trunk Revision v11.0_alpha-2645-g16283d3b3f8
ILIAS\MetaData\Services\Search\SearcherTest Class Reference
+ Inheritance diagram for ILIAS\MetaData\Services\Search\SearcherTest:
+ Collaboration diagram for ILIAS\MetaData\Services\Search\SearcherTest:

Public Member Functions

 getSearcher ()
 
 testGetFilter ()
 
 testGetFilterWithSubIDZero ()
 
 testGetFilterWithObjIDPlaceholder ()
 
 testGetFilterWithSubIDPlaceholder ()
 
 testGetFilterWithTypePlaceholder ()
 
 testExecute ()
 
 testExecuteWithLimit ()
 
 testExecuteWithLimitAndOffset ()
 
 testExecuteWithFilters ()
 

Detailed Description

Definition at line 33 of file SearcherTest.php.

Member Function Documentation

◆ getSearcher()

ILIAS\MetaData\Services\Search\SearcherTest::getSearcher ( )

Definition at line 35 of file SearcherTest.php.

References $data, ILIAS\__construct(), and ILIAS\File\Capabilities\ANY.

Referenced by ILIAS\MetaData\Services\Search\SearcherTest\testExecute(), ILIAS\MetaData\Services\Search\SearcherTest\testExecuteWithFilters(), ILIAS\MetaData\Services\Search\SearcherTest\testExecuteWithLimit(), ILIAS\MetaData\Services\Search\SearcherTest\testExecuteWithLimitAndOffset(), ILIAS\MetaData\Services\Search\SearcherTest\testGetFilter(), ILIAS\MetaData\Services\Search\SearcherTest\testGetFilterWithObjIDPlaceholder(), ILIAS\MetaData\Services\Search\SearcherTest\testGetFilterWithSubIDPlaceholder(), ILIAS\MetaData\Services\Search\SearcherTest\testGetFilterWithSubIDZero(), and ILIAS\MetaData\Services\Search\SearcherTest\testGetFilterWithTypePlaceholder().

35  : SearcherInterface
36  {
37  $clause_factory = new NullClauseFactory();
38  $filter_factory = new class () extends NullFilterFactory {
39  public function get(
40  int|Placeholder $obj_id = Placeholder::ANY,
41  int|Placeholder $sub_id = Placeholder::ANY,
42  string|Placeholder $type = Placeholder::ANY
43  ): FilterInterface {
44  return new class ($obj_id, $sub_id, $type) extends NullFilter {
45  public array $data = [];
46 
47  public function __construct(
48  int|Placeholder $obj_id,
49  int|Placeholder $sub_id,
50  string|Placeholder $type
51  ) {
52  $this->data = [
53  'obj_id' => $obj_id,
54  'sub_id' => $sub_id,
55  'type' => $type
56  ];
57  }
58  };
59  }
60  };
61  $repository = new class () extends NullRepository {
62  public function searchMD(
63  ClauseInterface $clause,
64  ?int $limit,
65  ?int $offset,
66  FilterInterface ...$filters
67  ): \Generator {
68  yield 'clause' => $clause;
69  yield 'limit' => $limit;
70  yield 'offset' => $offset;
71  yield 'filters' => $filters;
72  }
73  };
74 
75  return new Searcher($clause_factory, $filter_factory, $repository);
76  }
__construct()
Constructor setup ILIAS global object public.
Definition: class.ilias.php:76
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ testExecute()

ILIAS\MetaData\Services\Search\SearcherTest::testExecute ( )

Definition at line 133 of file SearcherTest.php.

References $results, ILIAS\MetaData\Services\Search\SearcherTest\getSearcher(), and null.

133  : void
134  {
135  $searcher = $this->getSearcher();
136  $clause = new NullClause();
137 
138  $results = iterator_to_array($searcher->execute($clause, null, null));
139  $this->assertSame(
140  ['clause' => $clause, 'limit' => null, 'offset' => null, 'filters' => []],
141  $results
142  );
143  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
$results
+ Here is the call graph for this function:

◆ testExecuteWithFilters()

ILIAS\MetaData\Services\Search\SearcherTest::testExecuteWithFilters ( )

Definition at line 169 of file SearcherTest.php.

References $results, and ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

169  : void
170  {
171  $searcher = $this->getSearcher();
172  $clause = new NullClause();
173  $filter_1 = new NullFilter();
174  $filter_2 = new NullFilter();
175  $filter_3 = new NullFilter();
176 
177  $results = iterator_to_array($searcher->execute($clause, 999, 333, $filter_1, $filter_2, $filter_3));
178  $this->assertSame(
179  ['clause' => $clause, 'limit' => 999, 'offset' => 333, 'filters' => [$filter_1, $filter_2, $filter_3]],
180  $results
181  );
182  }
$results
+ Here is the call graph for this function:

◆ testExecuteWithLimit()

ILIAS\MetaData\Services\Search\SearcherTest::testExecuteWithLimit ( )

Definition at line 145 of file SearcherTest.php.

References $results, ILIAS\MetaData\Services\Search\SearcherTest\getSearcher(), and null.

145  : void
146  {
147  $searcher = $this->getSearcher();
148  $clause = new NullClause();
149 
150  $results = iterator_to_array($searcher->execute($clause, 999, null));
151  $this->assertSame(
152  ['clause' => $clause, 'limit' => 999, 'offset' => null, 'filters' => []],
153  $results
154  );
155  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
$results
+ Here is the call graph for this function:

◆ testExecuteWithLimitAndOffset()

ILIAS\MetaData\Services\Search\SearcherTest::testExecuteWithLimitAndOffset ( )

Definition at line 157 of file SearcherTest.php.

References $results, and ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

157  : void
158  {
159  $searcher = $this->getSearcher();
160  $clause = new NullClause();
161 
162  $results = iterator_to_array($searcher->execute($clause, 999, 333));
163  $this->assertSame(
164  ['clause' => $clause, 'limit' => 999, 'offset' => 333, 'filters' => []],
165  $results
166  );
167  }
$results
+ Here is the call graph for this function:

◆ testGetFilter()

ILIAS\MetaData\Services\Search\SearcherTest::testGetFilter ( )

Definition at line 78 of file SearcherTest.php.

References ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

78  : void
79  {
80  $searcher = $this->getSearcher();
81 
82  $filter = $searcher->getFilter(56, 98, 'type');
83  $this->assertSame(
84  ['obj_id' => 56, 'sub_id' => 98, 'type' => 'type'],
85  $filter->data
86  );
87  }
+ Here is the call graph for this function:

◆ testGetFilterWithObjIDPlaceholder()

ILIAS\MetaData\Services\Search\SearcherTest::testGetFilterWithObjIDPlaceholder ( )

Definition at line 100 of file SearcherTest.php.

References ILIAS\File\Capabilities\ANY, and ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

100  : void
101  {
102  $searcher = $this->getSearcher();
103 
104  $filter = $searcher->getFilter(Placeholder::ANY, 98, 'type');
105  $this->assertSame(
106  ['obj_id' => Placeholder::ANY, 'sub_id' => 98, 'type' => 'type'],
107  $filter->data
108  );
109  }
+ Here is the call graph for this function:

◆ testGetFilterWithSubIDPlaceholder()

ILIAS\MetaData\Services\Search\SearcherTest::testGetFilterWithSubIDPlaceholder ( )

Definition at line 111 of file SearcherTest.php.

References ILIAS\File\Capabilities\ANY, and ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

111  : void
112  {
113  $searcher = $this->getSearcher();
114 
115  $filter = $searcher->getFilter(56, Placeholder::ANY, 'type');
116  $this->assertSame(
117  ['obj_id' => 56, 'sub_id' => Placeholder::ANY, 'type' => 'type'],
118  $filter->data
119  );
120  }
+ Here is the call graph for this function:

◆ testGetFilterWithSubIDZero()

ILIAS\MetaData\Services\Search\SearcherTest::testGetFilterWithSubIDZero ( )

Definition at line 89 of file SearcherTest.php.

References ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

89  : void
90  {
91  $searcher = $this->getSearcher();
92 
93  $filter = $searcher->getFilter(56, 0, 'type');
94  $this->assertSame(
95  ['obj_id' => 56, 'sub_id' => Placeholder::OBJ_ID, 'type' => 'type'],
96  $filter->data
97  );
98  }
+ Here is the call graph for this function:

◆ testGetFilterWithTypePlaceholder()

ILIAS\MetaData\Services\Search\SearcherTest::testGetFilterWithTypePlaceholder ( )

Definition at line 122 of file SearcherTest.php.

References ILIAS\File\Capabilities\ANY, and ILIAS\MetaData\Services\Search\SearcherTest\getSearcher().

122  : void
123  {
124  $searcher = $this->getSearcher();
125 
126  $filter = $searcher->getFilter(56, 98, Placeholder::ANY);
127  $this->assertSame(
128  ['obj_id' => 56, 'sub_id' => 98, 'type' => Placeholder::ANY],
129  $filter->data
130  );
131  }
+ Here is the call graph for this function:

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