InvoiceReferenceGenerator::generateRandomCode()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 0
dl 0
loc 4
ccs 3
cts 3
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace NeptuneSoftware\Invoice;
4
5
use Carbon\Carbon;
6
7
class InvoiceReferenceGenerator
8
{
9 50
    public static function generate()
10
    {
11 50
        $date = Carbon::now();
12 50
        return $date->format('Y-m-d') . '-' . self::generateRandomCode();
13
    }
14
15 50
    protected static function generateRandomCode()
16
    {
17 50
        $pool = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789';
18 50
        return substr(str_shuffle(str_repeat($pool, 6)), 0, 6);
19
    }
20
}
21