View source
<?php
namespace Drupal\Tests\tamper\Unit\Plugin\Tamper;
use Drupal\tamper\Exception\TamperException;
use Drupal\tamper\Plugin\Tamper\Encode;
class EncodeTest extends TamperPluginTestBase {
protected function instantiatePlugin() {
return new Encode([], 'encode', [], $this
->getMockSourceDefinition());
}
public function testSerializeArray() {
$config = [
Encode::SETTING_MODE => 'serialize',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals('a:0:{}', $plugin
->tamper([]));
}
public function testUnserializeArray() {
$config = [
Encode::SETTING_MODE => 'unserialize',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals([], $plugin
->tamper('a:0:{}'));
}
public function testSerializeCrazyString() {
$config = [
Encode::SETTING_MODE => 'serialize',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals('s:28:"abcdef 123 @#`|\\"$%&/()=?\'^*";', $plugin
->tamper('abcdef 123 @#`|\\"$%&/()=?\'^*'));
}
public function testUnserializeCrazyString() {
$config = [
Encode::SETTING_MODE => 'unserialize',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals('abcdef 123 @#`|\\"$%&/()=?\'^*', $plugin
->tamper('s:28:"abcdef 123 @#`|\\"$%&/()=?\'^*";'));
}
public function testBase64Encode() {
$config = [
Encode::SETTING_MODE => 'base64_encode',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals('YWJjZGVmIDEyMyBAI2B8XCIkJSYvKCk9PydeKg==', $plugin
->tamper('abcdef 123 @#`|\\"$%&/()=?\'^*'));
}
public function testBase64Decode() {
$config = [
Encode::SETTING_MODE => 'base64_decode',
];
$plugin = new Encode($config, 'encode', [], $this
->getMockSourceDefinition());
$this
->assertEquals('abcdef 123 @#`|\\"$%&/()=?\'^*', $plugin
->tamper('YWJjZGVmIDEyMyBAI2B8XCIkJSYvKCk9PydeKg=='));
}
}