aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/Wallabag/CoreBundle/Helper/CryptoProxyTest.php
blob: 782c29c3b4461553b0fbb72dd00c6f990c79b38a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php

namespace Tests\Wallabag\CoreBundle\Helper;

use Monolog\Handler\TestHandler;
use Monolog\Logger;
use Psr\Log\NullLogger;
use Wallabag\CoreBundle\Helper\CryptoProxy;

class CryptoProxyTest extends \PHPUnit_Framework_TestCase
{
    public function testCrypto()
    {
        $logHandler = new TestHandler();
        $logger = new Logger('test', [$logHandler]);

        $crypto = new CryptoProxy(sys_get_temp_dir() . '/' . uniqid('', true) . '.txt', $logger);
        $crypted = $crypto->crypt('test');
        $decrypted = $crypto->decrypt($crypted);

        $this->assertSame('test', $decrypted);

        $records = $logHandler->getRecords();
        $this->assertCount(2, $records);
        $this->assertContains('Crypto: crypting value', $records[0]['message']);
        $this->assertContains('Crypto: decrypting value', $records[1]['message']);
    }

    /**
     * @expectedException \RuntimeException
     * @expectedExceptionMessage Decrypt fail
     *
     * @return [type] [description]
     */
    public function testDecryptBadValue()
    {
        $crypto = new CryptoProxy(sys_get_temp_dir() . '/' . uniqid('', true) . '.txt', new NullLogger());
        $crypto->decrypt('badvalue');
    }
}