Completed
Pull Request — master (#12)
by thomas
29:47 queued 14:48
created

HumanButtonAck   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 10
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
dl 0
loc 10
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A acknowledge() 0 8 2
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