19 declare(strict_types=1);
33 if (empty(self::$box_entries)) {
34 self::initializeBoxEntries();
36 if (empty(self::$box_entries_shuffled)) {
37 self::initializeBoxEntriesShuffled();
39 if (empty(self::$box_entries_shuffled_equal_day)) {
40 self::initializeBoxEntriesShuffledEqualDay();
46 self::$box_entries = [
47 new Term(1, 11, 111, 1,
"2024-01-01 01:00:00"),
48 new Term(2, 11, 111, 1,
"2024-01-02 01:00:00"),
49 new Term(3, 11, 111, 1,
"2024-01-02 02:00:00"),
50 new Term(4, 11, 111, 1,
"2024-01-02 03:00:00"),
51 new Term(5, 11, 111, 1,
"2024-01-02 04:00:00"),
52 new Term(6, 11, 111, 1,
"2024-01-03 01:00:00"),
53 new Term(7, 11, 111, 1,
"2024-01-04 02:00:00"),
54 new Term(8, 11, 111, 1,
"2024-01-05 01:00:00"),
55 new Term(9, 11, 111, 1,
"2024-02-01 01:00:00"),
56 new Term(10, 11, 111, 1,
"2024-02-02 01:00:00"),
57 new Term(11, 11, 111, 1,
"2024-02-03 01:00:00"),
58 new Term(12, 11, 111, 1,
"2024-02-03 01:01:00"),
59 new Term(13, 11, 111, 1,
"2024-02-03 02:00:00"),
60 new Term(14, 11, 111, 1,
"2024-03-01 01:00:00")
66 self::$box_entries_shuffled = [
67 new Term(14, 11, 111, 1,
"2024-03-01 01:00:00"),
68 new Term(13, 11, 111, 1,
"2024-02-03 02:00:00"),
69 new Term(12, 11, 111, 1,
"2024-02-03 01:01:00"),
70 new Term(11, 11, 111, 1,
"2024-02-03 01:00:00"),
71 new Term(10, 11, 111, 1,
"2024-02-02 01:00:00"),
72 new Term(9, 11, 111, 1,
"2024-02-01 01:00:00"),
73 new Term(8, 11, 111, 1,
"2024-01-05 01:00:00"),
74 new Term(7, 11, 111, 1,
"2024-01-04 02:00:00"),
75 new Term(6, 11, 111, 1,
"2024-01-03 01:00:00"),
76 new Term(5, 11, 111, 1,
"2024-01-02 04:00:00"),
77 new Term(4, 11, 111, 1,
"2024-01-02 03:00:00"),
78 new Term(3, 11, 111, 1,
"2024-01-02 02:00:00"),
79 new Term(2, 11, 111, 1,
"2024-01-02 01:00:00"),
80 new Term(1, 11, 111, 1,
"2024-01-01 01:00:00"),
86 self::$box_entries_shuffled_equal_day = [
87 new Term(1, 11, 111, 1,
"2024-01-01 01:00:00"),
88 new Term(5, 11, 111, 1,
"2024-01-02 04:00:00"),
89 new Term(4, 11, 111, 1,
"2024-01-02 03:00:00"),
90 new Term(3, 11, 111, 1,
"2024-01-02 02:00:00"),
91 new Term(2, 11, 111, 1,
"2024-01-02 01:00:00"),
92 new Term(6, 11, 111, 1,
"2024-01-03 01:00:00"),
93 new Term(7, 11, 111, 1,
"2024-01-04 02:00:00"),
94 new Term(8, 11, 111, 1,
"2024-01-05 01:00:00"),
95 new Term(9, 11, 111, 1,
"2024-02-01 01:00:00"),
96 new Term(10, 11, 111, 1,
"2024-02-02 01:00:00"),
97 new Term(13, 11, 111, 1,
"2024-02-03 02:00:00"),
98 new Term(12, 11, 111, 1,
"2024-02-03 01:01:00"),
99 new Term(11, 11, 111, 1,
"2024-02-03 01:00:00"),
100 new Term(14, 11, 111, 1,
"2024-03-01 01:00:00")
111 protected function shuffle(array $entries): array
113 usort($entries, fn(
$a,
$b) => strcmp(
$b->getLastAccess(),
$a->getLastAccess()));
124 $entries = $manager->shuffleEntries(self::$box_entries);
126 $this->assertEquals(self::$box_entries_shuffled, $entries);
133 $entries = $manager->shuffleEntriesWithEqualDay(self::$box_entries);
135 $this->assertEquals(self::$box_entries_shuffled_equal_day, $entries);
static setUpBeforeClass()
testShuffleEntriesWithEqualDay()
static array $box_entries
static initializeBoxEntriesShuffledEqualDay()
static array $box_entries_shuffled
__construct()
Constructor setup ILIAS global object public.
static initializeBoxEntries()
static initializeBoxEntriesShuffled()
static array $box_entries_shuffled_equal_day
$a
thx to https://mlocati.github.io/php-cs-fixer-configurator for the examples