5 use Support::TestSetup;
 
   7 Support::TestSetup::login();
 
  11 $config->{numberformat} = '1.000,00';
 
  13 is($::form->format_amount($config, '1e1', 2), '10,00', 'format 1e1 (numberformat: 1.000,00)');
 
  14 is($::form->format_amount($config, 1000, 2), '1.000,00', 'format 1000 (numberformat: 1.000,00)');
 
  15 is($::form->format_amount($config, 1000.1234, 2), '1.000,12', 'format 1000.1234 (numberformat: 1.000,00)');
 
  16 is($::form->format_amount($config, 1000000000.1234, 2), '1.000.000.000,12', 'format 1000000000.1234 (numberformat: 1.000,00)');
 
  17 is($::form->format_amount($config, -1000000000.1234, 2), '-1.000.000.000,12', 'format -1000000000.1234 (numberformat: 1.000,00)');
 
  20 $config->{numberformat} = '1,000.00';
 
  22 is($::form->format_amount($config, '1e1', 2), '10.00', 'format 1e1 (numberformat: 1,000.00)');
 
  23 is($::form->format_amount($config, 1000, 2), '1,000.00', 'format 1000 (numberformat: 1,000.00)');
 
  24 is($::form->format_amount($config, 1000.1234, 2), '1,000.12', 'format 1000.1234 (numberformat: 1,000.00)');
 
  25 is($::form->format_amount($config, 1000000000.1234, 2), '1,000,000,000.12', 'format 1000000000.1234 (numberformat: 1,000.00)');
 
  26 is($::form->format_amount($config, -1000000000.1234, 2), '-1,000,000,000.12', 'format -1000000000.1234 (numberformat: 1,000.00)');
 
  30 is($::form->format_amount($config, 1.00045, -2), '1.00045', 'negative places');
 
  31 is($::form->format_amount($config, 1.00045, -5), '1.00045', 'negative places 2');
 
  32 is($::form->format_amount($config, 1, -2), '1.00', 'negative places 3');
 
  36 is($::form->format_amount({ numberformat => '1.000,00' }, 0.00005), '0,00005', 'messing with small numbers and no precision');
 
  37 is($::form->format_amount({ numberformat => '1.000,00' }, undef), '0', 'undef');
 
  38 is($::form->format_amount({ numberformat => '1.000,00' }, ''), '0', 'empty string');
 
  39 is($::form->format_amount({ numberformat => '1.000,00' }, undef, 2), '0,00', 'undef with precision');
 
  40 is($::form->format_amount({ numberformat => '1.000,00' }, '', 2), '0,00', 'empty string with prcesion');
 
  42 is($::form->format_amount($config, 0.545, 0), '1', 'rounding up with precision 0');
 
  43 is($::form->format_amount($config, -0.545, 0), '-1', 'neg rounding up with precision 0');
 
  45 is($::form->format_amount($config, 1.00), '1', 'autotrim to 0 places');
 
  50 $config->{numberformat} = '1.000,00';
 
  52 is($::form->format_amount($config, -350, 2, '-'), '(350,00)', 'dash -');