@@ 10-52 (lines=43) @@ | ||
7 | use Bunq\Certificate\Storage\FileCertificateStorage; |
|
8 | use PHPUnit\Framework\TestCase; |
|
9 | ||
10 | final class FileCertificateStorageTest extends TestCase |
|
11 | { |
|
12 | /** |
|
13 | * @var FileCertificateStorage |
|
14 | */ |
|
15 | private $storage; |
|
16 | ||
17 | public function setUp() |
|
18 | { |
|
19 | $this->storage = new FileCertificateStorage('/tmp'); |
|
20 | } |
|
21 | ||
22 | /** |
|
23 | * @test |
|
24 | */ |
|
25 | public function itFindsACertificatedBasedOnAType() |
|
26 | { |
|
27 | $certificate = DefaultCertificate::fromString('savedCertificate'); |
|
28 | $publicKey = CertificateType::PRIVATE_KEY(); |
|
29 | ||
30 | @mkdir('/tmp/certificates'); |
|
31 | file_put_contents('/tmp/certificates/' . $publicKey, $certificate->toString()); |
|
32 | ||
33 | $loadedCertificate = $this->storage->load($publicKey); |
|
34 | ||
35 | $this->assertSame($certificate->toString(), $loadedCertificate->toString()); |
|
36 | } |
|
37 | ||
38 | /** |
|
39 | * @test |
|
40 | */ |
|
41 | public function itSavesACertificatesBasedOnAType() |
|
42 | { |
|
43 | $certificate = DefaultCertificate::fromString('test'); |
|
44 | $publicKey = CertificateType::PUBLIC_KEY(); |
|
45 | ||
46 | $this->storage->save($certificate, $publicKey); |
|
47 | ||
48 | $result = @file_get_contents('/tmp/certificates/' . $publicKey); |
|
49 | ||
50 | $this->assertSame($certificate->toString(), $result); |
|
51 | } |
|
52 | } |
|
53 |
@@ 10-63 (lines=54) @@ | ||
7 | use Bunq\Token\TokenType; |
|
8 | use PHPUnit\Framework\TestCase; |
|
9 | ||
10 | final class FileTokenStorageTest extends TestCase |
|
11 | { |
|
12 | /** |
|
13 | * @var FileTokenStorage |
|
14 | */ |
|
15 | private $storage; |
|
16 | ||
17 | public function setUp() |
|
18 | { |
|
19 | $this->storage = new FileTokenStorage('/tmp'); |
|
20 | } |
|
21 | ||
22 | /** |
|
23 | * @test |
|
24 | */ |
|
25 | public function itFindsATokenBasedOnAType() |
|
26 | { |
|
27 | $tokenType = TokenType::INSTALLATION_TOKEN(); |
|
28 | ||
29 | @mkdir('/tmp/tokens'); |
|
30 | file_put_contents('/tmp/tokens/' . $tokenType->toString(), 'tokenstring'); |
|
31 | ||
32 | $result = $this->storage->load($tokenType); |
|
33 | ||
34 | $this->assertEquals('tokenstring', $result->toString()); |
|
35 | } |
|
36 | ||
37 | /** |
|
38 | * @test |
|
39 | * @expectedException \Bunq\Token\Storage\TokenNotFoundException |
|
40 | * @expectedExceptionMessage Could not find token "session.token" in path: /tmp/tokens |
|
41 | */ |
|
42 | public function itThrowsAnExceptionWhenLoadingANonExistingToken() |
|
43 | { |
|
44 | $tokenType = TokenType::SESSION_TOKEN(); |
|
45 | ||
46 | $this->storage->load($tokenType); |
|
47 | } |
|
48 | ||
49 | /** |
|
50 | * @test |
|
51 | */ |
|
52 | public function itSavesATokenBasedOnAType() |
|
53 | { |
|
54 | $tokenType = TokenType::INSTALLATION_TOKEN(); |
|
55 | $token = DefaultToken::fromString('newTokenData'); |
|
56 | ||
57 | $this->storage->save($token, $tokenType); |
|
58 | ||
59 | $result = @file_get_contents('/tmp/tokens/' . $tokenType->toString()); |
|
60 | ||
61 | $this->assertSame($token->toString(), $result); |
|
62 | } |
|
63 | } |
|
64 | ||
65 |