PgUpgrade: nicht während eines Upgrades commiten
[kivitendo-erp.git] / t / form / round_amount.t
1 use strict;
2 use Test::More;
3
4 use lib 't';
5 use Support::TestSetup;
6
7 Support::TestSetup::login();
8
9 my $config = {};
10
11 $config->{numberformat} = '1.000,00';
12
13 # Positive values
14 is($::form->round_amount(1.05, 2), '1.05', '1.05 @ 2');
15 is($::form->round_amount(1.05, 1), '1.1',  '1.05 @ 1');
16 is($::form->round_amount(1.05, 0), '1',    '1.05 @ 0');
17
18 is($::form->round_amount(1.045, 2), '1.05', '1.045 @ 2');
19 is($::form->round_amount(1.045, 1), '1',    '1.045 @ 1');
20 is($::form->round_amount(1.045, 0), '1',    '1.045 @ 0');
21
22 is($::form->round_amount(33.675, 2), '33.68', '33.675 @ 2');
23 is($::form->round_amount(33.675, 1), '33.7',  '33.675 @ 1');
24 is($::form->round_amount(33.675, 0), '34',    '33.675 @ 0');
25
26 is($::form->round_amount(44.9 * 0.75, 2), '33.68', '44.9 * 0.75 @ 2');
27 is($::form->round_amount(44.9 * 0.75, 1), '33.7',  '44.9 * 0.75 @ 1');
28 is($::form->round_amount(44.9 * 0.75, 0), '34',    '44.9 * 0.75 @ 0');
29
30 is($::form->round_amount(149.175, 2), '149.18', '149.175 @ 2');
31 is($::form->round_amount(149.175, 1), '149.2',  '149.175 @ 1');
32 is($::form->round_amount(149.175, 0), '149',    '149.175 @ 0');
33
34 is($::form->round_amount(198.90 * 0.75, 2), '149.18', '198.90 * 0.75 @ 2');
35 is($::form->round_amount(198.90 * 0.75, 1), '149.2',  '198.90 * 0.75 @ 1');
36 is($::form->round_amount(198.90 * 0.75, 0), '149',    '198.90 * 0.75 @ 0');
37
38 # Negative values
39 is($::form->round_amount(-1.05, 2), '-1.05', '-1.05 @ 2');
40 is($::form->round_amount(-1.05, 1), '-1.1',  '-1.05 @ 1');
41 is($::form->round_amount(-1.05, 0), '-1',    '-1.05 @ 0');
42
43 is($::form->round_amount(-1.045, 2), '-1.05', '-1.045 @ 2');
44 is($::form->round_amount(-1.045, 1), '-1',    '-1.045 @ 1');
45 is($::form->round_amount(-1.045, 0), '-1',    '-1.045 @ 0');
46
47 is($::form->round_amount(-33.675, 2), '-33.68', '33.675 @ 2');
48 is($::form->round_amount(-33.675, 1), '-33.7',  '33.675 @ 1');
49 is($::form->round_amount(-33.675, 0), '-34',    '33.675 @ 0');
50
51 is($::form->round_amount(-44.9 * 0.75, 2), '-33.68', '-44.9 * 0.75 @ 2');
52 is($::form->round_amount(-44.9 * 0.75, 1), '-33.7',  '-44.9 * 0.75 @ 1');
53 is($::form->round_amount(-44.9 * 0.75, 0), '-34',    '-44.9 * 0.75 @ 0');
54
55 is($::form->round_amount(-149.175, 2), '-149.18', '-149.175 @ 2');
56 is($::form->round_amount(-149.175, 1), '-149.2',  '-149.175 @ 1');
57 is($::form->round_amount(-149.175, 0), '-149',    '-149.175 @ 0');
58
59 is($::form->round_amount(-198.90 * 0.75, 2), '-149.18', '-198.90 * 0.75 @ 2');
60 is($::form->round_amount(-198.90 * 0.75, 1), '-149.2',  '-198.90 * 0.75 @ 1');
61 is($::form->round_amount(-198.90 * 0.75, 0), '-149',    '-198.90 * 0.75 @ 0');
62
63 done_testing;
64
65 1;