Failed Conditions
Pull Request — master (#12)
by thomas
03:00
created

HumanButtonAck::acknowledge()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 0
Metric Value
dl 0
loc 8
ccs 0
cts 7
cp 0
rs 9.4285
c 0
b 0
f 0
cc 2
eloc 4
nc 2
nop 3
crap 6
1
<?php
2
3
declare(strict_types=1);
4
5
namespace BitWasp\Trezor\Device\Button;
6
7
use BitWasp\Trezor\Bridge\Session;
8
use BitWasp\Trezor\Device\Message;
9
use BitWasp\TrezorProto\ButtonRequest;
10
use BitWasp\TrezorProto\ButtonRequestType;
11
12
class HumanButtonAck extends ButtonAck
13
{
14
    public function acknowledge(Session $session, ButtonRequest $request, ButtonRequestType $expectedType)
15
    {
16
        $theirType = $request->getCode();
17
        if ($theirType->value() !== $expectedType->value()) {
18
            throw new \RuntimeException("Unexpected button request (expected: {$expectedType->name()}, got {$theirType->name()})");
19
        }
20
21
        return $session->sendMessage(Message::buttonAck(new \BitWasp\TrezorProto\ButtonAck()));
22
    }
23
}
24