ConnectionFactoryFactoryTest::testCreateFactory()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 9
rs 9.6666
cc 1
eloc 5
nc 1
nop 0
1
<?php
2
3
namespace AMQPAL\Adapter\PhpAmqpLib\Factory;
4
5
use AMQPAL\Adapter\Exception;
6
7
class ConnectionFactoryFactoryTest extends \PHPUnit_Framework_TestCase
8
{
9
10
    public function testCreateFactory()
11
    {
12
        $factoryFactory = new ConnectionFactoryFactory();
13
        $factoryFactory->setFactoryMap([
14
            'stub' => ConnectionFactoryStub::class
15
        ]);
16
        
17
        static::assertInstanceOf(ConnectionFactoryStub::class, $factoryFactory->createFactory('stub'));
18
    }
19
20
    /**
21
     * @expectedException \AMQPAL\Adapter\Exception\InvalidArgumentException
22
     */
23
    public function testCreateFactoryNotExistingKey()
24
    {
25
        $factoryFactory = new ConnectionFactoryFactory();
26
        $factoryFactory->setFactoryMap([]);
27
28
        $factoryFactory->createFactory('stub');
29
    }
30
31
    /**
32
     * @expectedException \AMQPAL\Adapter\Exception\RuntimeException
33
     */
34
    public function testCreateFactoryWithInvalidFactory()
35
    {
36
        $factoryFactory = new ConnectionFactoryFactory();
37
        $factoryFactory->setFactoryMap(['foo' => 'ArrayObject']);
38
39
        $factoryFactory->createFactory('foo');
40
    }
41
}
42