File: id_spec.rb

package info (click to toggle)
ruby-humanize 2.5.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 1,108 kB
  • sloc: ruby: 1,779; makefile: 7; sh: 1
file content (41 lines) | stat: -rw-r--r-- 953 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
require 'spec_helper'

RSpec.describe Humanize, "id locale" do
  before do
    Humanize.configure do |config|
      config.default_locale = :id
    end
  end

  tests = [
    [8.15, 'delapan koma satu lima'],
    [1002, 'seribu dua'],
    [2001, 'dua ribu satu'],
    [10_000, 'sepuluh ribu']
  ]

  tests.each do |num, output|
    it "#{num} equals #{output}" do
      expect(num.humanize).to eql(output)
    end
  end

  context 'decimals: number' do
    it 'returns the decimals as whole numbers' do
      num = 8.15
      expect(num.humanize(decimals_as: :number)).to eq('delapan koma lima belas')
    end
  end

  describe 'when called on conceptual number' do
    it 'reads correctly' do
      inf = Float::INFINITY
      neg_inf = -inf
      nan = inf + neg_inf

      expect(inf.humanize).to eql('tak terhingga')
      expect(neg_inf.humanize).to eql('minus tak terhingga')
      expect(nan.humanize).to eql('tak terdefinisi')
    end
  end
end