assertEquals($plaintext, $instance->decode($instance->encode($plaintext))); } /** * Test Encrypt class initialization * * @return void * @throws KO7_Exception */ public function test_initialization() { $this->assertCount(0, Encrypt::$instances); Encrypt::instance(); Encrypt::instance(Encrypt::$default); $this->assertCount(1, Encrypt::$instances); $this->assertArrayHasKey('default', Encrypt::$instances); $this->set_config(KO7::$config->load('encrypt')->default, 'secondary'); Encrypt::instance('secondary'); $this->assertCount(2, Encrypt::$instances); $this->assertArrayHasKey('secondary', Encrypt::$instances); } /** * Overwrites Configuration Values * * @param array $config * @param string|null $name * * @return void * @throws KO7_Exception */ public function set_config(array $config, string $name = NULL) { if ($name === NULL) { $name = Encrypt::$default; } KO7::$config->load('encrypt')->set($name, $config); } /** * Data source for encode_and_decode test * * @return array */ public function provider_encode_and_decode(): array { return [ [ 'abcdefghijklm', ], [ '777888000', ], [ 'verylongTEXTwithSTUFFandnumbers0123456789', ], ]; } }