Completed
Push — master ( 5d18c7...cabcf3 )
by Hannes
16s queued 13s
created

PrettyprintingFormatter   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 23
rs 10
c 0
b 0
f 0
ccs 14
cts 14
cp 1
wmc 3
lcom 0
cbo 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A format() 0 20 3
1
<?php
2
3
namespace byrokrat\banking\Formatter;
4
5
use byrokrat\banking\AccountNumber;
6
7
class PrettyprintingFormatter implements FormatterInterface
8
{
9 3
    public function format(AccountNumber $number): string
10
    {
11 3
        if ($number->getClearingNumber() == '3300') {
12 1
            return sprintf(
13 1
                '%s,%s-%s%s',
14 1
                $number->getClearingNumber(),
15 1
                substr($number->getSerialNumber(), 0, -3),
16 1
                substr($number->getSerialNumber(), -3),
17 1
                $number->getCheckDigit()
18
            );
19
        }
20
21 2
        return sprintf(
22 2
            '%s%s,%s-%s',
23 2
            $number->getClearingNumber(),
24 2
            $number->getClearingCheckDigit() !== '' ? '-' . $number->getClearingCheckDigit() : '',
25 2
            trim(chunk_split($number->getSerialNumber(), 3, ' ')),
26 2
            $number->getCheckDigit()
27
        );
28
    }
29
}
30