Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pterodactyl
GitHub Repository: pterodactyl/panel
Path: blob/1.0-develop/tests/Unit/Helpers/EnvironmentWriterTraitTest.php
7461 views
1
<?php
2
3
namespace Pterodactyl\Tests\Unit\Helpers;
4
5
use Pterodactyl\Tests\TestCase;
6
use Pterodactyl\Traits\Commands\EnvironmentWriterTrait;
7
8
class EnvironmentWriterTraitTest extends TestCase
9
{
10
#[\PHPUnit\Framework\Attributes\DataProvider('variableDataProvider')]
11
public function testVariableIsEscapedProperly($input, $expected)
12
{
13
$output = (new FooClass())->escapeEnvironmentValue($input);
14
15
$this->assertSame($expected, $output);
16
}
17
18
public static function variableDataProvider(): array
19
{
20
return [
21
['foo', 'foo'],
22
['abc123', 'abc123'],
23
['val"ue', '"val\"ue"'],
24
['my test value', '"my test value"'],
25
['mysql_p@assword', '"mysql_p@assword"'],
26
['mysql_p#assword', '"mysql_p#assword"'],
27
['mysql p@$$word', '"mysql p@$$word"'],
28
['mysql p%word', '"mysql p%word"'],
29
['mysql p#word', '"mysql p#word"'],
30
['abc_@#test', '"abc_@#test"'],
31
['test 123 $$$', '"test 123 $$$"'],
32
['#password%', '"#password%"'],
33
['$pass ', '"$pass "'],
34
];
35
}
36
}
37
38
class FooClass
39
{
40
use EnvironmentWriterTrait;
41
}
42
43