File: JsonRestAwsErrorFactoryTest.php

package info (click to toggle)
php-async-aws-core 1.27.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 988 kB
  • sloc: php: 6,837; makefile: 32
file content (33 lines) | stat: -rw-r--r-- 1,109 bytes parent folder | download | duplicates (3)
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
<?php

declare(strict_types=1);

namespace AsyncAws\Core\Tests\Unit\AwsError;

use AsyncAws\Core\AwsError\JsonRestAwsErrorFactory;
use PHPUnit\Framework\TestCase;

class JsonRestAwsErrorFactoryTest extends TestCase
{
    public function testRestJsonError()
    {
        $content = '{"message":"Missing final \'@domain\'"}';

        $factory = new JsonRestAwsErrorFactory();
        $awsError = $factory->createFromContent($content, ['x-amzn-errortype' => ['foo']]);

        self::assertEquals('Missing final \'@domain\'', $awsError->getMessage());
        self::assertEquals('foo', $awsError->getCode());
    }

    public function testLambdaJsonError()
    {
        $content = '{"Type":"User","message":"Invalid Layer name: arn:aws:lambda:eu-central-2:12345:layer:foobar"}';

        $factory = new JsonRestAwsErrorFactory();
        $awsError = $factory->createFromContent($content, ['x-amzn-errortype' => ['foo']]);

        self::assertSame('user', $awsError->getType());
        self::assertSame('Invalid Layer name: arn:aws:lambda:eu-central-2:12345:layer:foobar', $awsError->getMessage());
    }
}