OutputTest::testOutput()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 31

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 31
rs 9.424
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Bip70\Test\Protobuf\Proto;
6
7
use Bip70\Protobuf\Proto\Output;
8
use PHPUnit\Framework\TestCase;
9
10
class OutputTest extends TestCase
11
{
12
    public function testOutput()
13
    {
14
        $amount = 1;
15
        $script = "ascii";
16
17
        $output = new Output();
18
        $this->assertTrue($output->hasAmount());
19
        $this->assertEquals(0, $output->getAmount());
20
        $output->setAmount($amount);
21
        $this->assertTrue($output->hasAmount());
22
        $this->assertEquals($amount, $output->getAmount());
23
24
        $this->assertFalse($output->hasScript());
25
        $output->setScript($script);
26
        $this->assertTrue($output->hasScript());
27
        $this->assertEquals($script, $output->getScript());
28
29
        $serialized = $output->serialize();
30
        $parsed = new Output();
31
        $parsed->parse($serialized);
32
        $this->assertEquals($parsed->getAmount(), $output->getAmount());
33
        $this->assertEquals($parsed->getScript(), $output->getScript());
34
35
        $output->clearScript();
36
        $this->assertFalse($output->hasScript());
37
        $this->assertNull($output->getScript());
38
39
        $output->clearAmount();
40
        $this->assertFalse($output->hasAmount());
41
        $this->assertNull($output->getAmount());
42
    }
43
}
44