sankhya 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 743e3626fe08a0c17cafe5ab0dfe3a6f5b90e544
4
- data.tar.gz: 6a1c3a8285e8c7d482ce1b5f1870a7686d3b2f42
2
+ SHA256:
3
+ metadata.gz: 518f19f18de2ca350ebfa1220dbf0617702075d5db09016194a314f09b83b29d
4
+ data.tar.gz: 555eb06c306702c87eab7ecbc5f78ad2f9a47c90d647994070feee0cd4a3618e
5
5
  SHA512:
6
- metadata.gz: 1e8a82da28c69283ee1f7c99154151025ee0218d812321f9c0a6ff51ca0ae0a2a248c0dc5fdda584d46dc1468d60bf657e25a7877b9061b5c8aa1291d508429e
7
- data.tar.gz: 4df666b5cea19ab21d8510dc9c37ba5fa498fae264227b7a286cb70688b607891552ef52e604952bae4c38a14dac5f1c21389b58aa89cf8ad26f1291f67b664c
6
+ metadata.gz: 358cc9de972fa67b0ee9019232c6c28b7b53465cd6393356b72424120fe1c7372c19ebaea68a64663fca344a2a616a25e4e9c404ab3255f44cfc885c3c05b792
7
+ data.tar.gz: 8e9beaedd448b1170c00e2a7af2c4db01a27c3dad7f6912d3095edcc9e6d33e043134da71cb996041aa8595ea504f88722c3f377c03640531a104942fe4104f0
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  .bundle/*
2
2
  pkg/*
3
+ *.gem
data/.rubocop.yml CHANGED
@@ -12,3 +12,9 @@ MethodLength:
12
12
 
13
13
  CyclomaticComplexity:
14
14
  Enabled: false
15
+
16
+ RedundantParentheses:
17
+ Enabled: false
18
+
19
+ MultilineHashBraceLayout:
20
+ Enabled: false
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in sankhya.gemspec
data/Gemfile.lock CHANGED
@@ -6,27 +6,30 @@ PATH
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- diff-lcs (1.2.5)
10
- rake (10.4.2)
11
- rspec (3.3.0)
12
- rspec-core (~> 3.3.0)
13
- rspec-expectations (~> 3.3.0)
14
- rspec-mocks (~> 3.3.0)
15
- rspec-core (3.3.1)
16
- rspec-support (~> 3.3.0)
17
- rspec-expectations (3.3.0)
9
+ diff-lcs (1.3)
10
+ rake (13.0.1)
11
+ rspec (3.9.0)
12
+ rspec-core (~> 3.9.0)
13
+ rspec-expectations (~> 3.9.0)
14
+ rspec-mocks (~> 3.9.0)
15
+ rspec-core (3.9.2)
16
+ rspec-support (~> 3.9.3)
17
+ rspec-expectations (3.9.2)
18
18
  diff-lcs (>= 1.2.0, < 2.0)
19
- rspec-support (~> 3.3.0)
20
- rspec-mocks (3.3.1)
19
+ rspec-support (~> 3.9.0)
20
+ rspec-mocks (3.9.1)
21
21
  diff-lcs (>= 1.2.0, < 2.0)
22
- rspec-support (~> 3.3.0)
23
- rspec-support (3.3.0)
22
+ rspec-support (~> 3.9.0)
23
+ rspec-support (3.9.3)
24
24
 
25
25
  PLATFORMS
26
26
  ruby
27
27
 
28
28
  DEPENDENCIES
29
- bundler (~> 1.5)
29
+ bundler (~> 2.1)
30
30
  rake
31
31
  rspec
32
32
  sankhya!
33
+
34
+ BUNDLED WITH
35
+ 2.1.4
data/Rakefile CHANGED
@@ -1 +1,3 @@
1
- require "bundler/gem_tasks"
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
data/lib/sankhya.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'sankhya/version'
2
4
  require 'sankhya/words'
3
5
  require 'sankhya/numbers'
@@ -12,5 +14,5 @@ module Sankhya
12
14
  end
13
15
  end
14
16
 
15
- Integer.send :include, Sankhya
16
- Float.send :include, Sankhya
17
+ Integer.include Sankhya
18
+ Float.include Sankhya
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Sankhya
2
4
  class Numbers
3
5
  extend Words
@@ -55,12 +57,12 @@ module Sankhya
55
57
  number, segment = number.divmod(units[i][:divisor])
56
58
  parts = segment < 20 ? segment.divmod(100) : segment.divmod(10)
57
59
 
58
- words << units[i][:suffix] if units[i][:suffix] && segment > 0
59
- words << to_english(parts.last) if parts.last > 0
60
- words << to_english(10 * parts.first) if parts.first > 0
61
- words << units[i][:prefix] if units[i][:prefix] && segment > 0 && number > 0
60
+ words << units[i][:suffix] if units[i][:suffix] && segment.positive?
61
+ words << to_english(parts.last) if parts.last.positive?
62
+ words << to_english(10 * parts.first) if parts.first.positive?
63
+ words << units[i][:prefix] if units[i][:prefix] && segment.positive? && number.positive?
62
64
 
63
- if i == units.length - 1 && number > 0
65
+ if i == units.length - 1 && number.positive?
64
66
  # suffix crore and start over
65
67
  words << 'crore,'
66
68
  i = 0
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Sankhya
2
- VERSION = '0.4.0'
4
+ VERSION = '0.5.0'
3
5
  end
data/lib/sankhya/words.rb CHANGED
@@ -1,16 +1,18 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Sankhya
2
4
  module Words
3
5
  def to_english(number)
4
- { 0 => 'zero',
5
- 1 => 'one',
6
- 2 => 'two',
7
- 3 => 'three',
8
- 4 => 'four',
9
- 5 => 'five',
10
- 6 => 'six',
11
- 7 => 'seven',
12
- 8 => 'eight',
13
- 9 => 'nine',
6
+ { 0 => 'zero',
7
+ 1 => 'one',
8
+ 2 => 'two',
9
+ 3 => 'three',
10
+ 4 => 'four',
11
+ 5 => 'five',
12
+ 6 => 'six',
13
+ 7 => 'seven',
14
+ 8 => 'eight',
15
+ 9 => 'nine',
14
16
  10 => 'ten',
15
17
  11 => 'eleven',
16
18
  12 => 'twelve',
@@ -21,18 +23,18 @@ module Sankhya
21
23
  17 => 'seventeen',
22
24
  18 => 'eighteen',
23
25
  19 => 'nineteen',
24
- 20 => 'twenty',
25
- 30 => 'thirty',
26
- 40 => 'forty',
27
- 50 => 'fifty',
28
- 60 => 'sixty',
29
- 70 => 'seventy',
30
- 80 => 'eighty',
31
- 90 => 'ninety',
32
- 100 => 'hundred',
33
- 1_000 => 'thousand',
34
- 100_000 => 'lakh',
35
- 10_000_000 => 'crore'
26
+ 20 => 'twenty',
27
+ 30 => 'thirty',
28
+ 40 => 'forty',
29
+ 50 => 'fifty',
30
+ 60 => 'sixty',
31
+ 70 => 'seventy',
32
+ 80 => 'eighty',
33
+ 90 => 'ninety',
34
+ 100 => 'hundred',
35
+ 1_000 => 'thousand',
36
+ 100_000 => 'lakh',
37
+ 10_000_000 => 'crore'
36
38
  }[number]
37
39
  end
38
40
  end
data/sankhya.gemspec CHANGED
@@ -1,24 +1,25 @@
1
- # coding: utf-8
1
+ # frozen_string_literal: true
2
+
2
3
  lib = File.expand_path('../lib', __FILE__)
3
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
5
  require 'sankhya/version'
5
6
 
6
7
  Gem::Specification.new do |spec|
7
- spec.name = "sankhya"
8
+ spec.name = 'sankhya'
8
9
  spec.version = Sankhya::VERSION
9
- spec.authors = ["Geordee Naliyath"]
10
- spec.email = ["geordee@gmail.com"]
11
- spec.summary = %q{A little gem to convert number to words in Indian English}
12
- spec.description = %q{Sankhya means numbers in Sanskrit and other Indian languages. This is a small gem to convert numbers to words in Indian English.}
13
- spec.homepage = "https://github.com/samyukti/sankhya"
14
- spec.license = "MIT"
10
+ spec.authors = ['Geordee Naliyath']
11
+ spec.email = ['geordee@gmail.com']
12
+ spec.summary = 'A little gem to convert number to words in Indian English'
13
+ spec.description = 'Sankhya means numbers in Sanskrit and other Indian languages. This is a small gem to convert numbers to words in Indian English.'
14
+ spec.homepage = 'https://github.com/samyukti/sankhya'
15
+ spec.license = 'MIT'
15
16
 
16
17
  spec.files = `git ls-files`.split($/)
17
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ["lib"]
20
+ spec.require_paths = ['lib']
20
21
 
21
- spec.add_development_dependency "bundler", "~> 1.5"
22
- spec.add_development_dependency "rake"
23
- spec.add_development_dependency "rspec"
22
+ spec.add_development_dependency 'bundler', '~> 2.1'
23
+ spec.add_development_dependency 'rake'
24
+ spec.add_development_dependency 'rspec'
24
25
  end
data/spec/sankhya_spec.rb CHANGED
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe Sankhya do
4
-
5
6
  it 'converts 0 to words' do
6
7
  0.to_words.should eql('zero')
7
8
  end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/setup'
2
4
  Bundler.setup
3
5
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sankhya
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Geordee Naliyath
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-13 00:00:00.000000000 Z
11
+ date: 2020-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.5'
19
+ version: '2.1'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.5'
26
+ version: '2.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -93,8 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
93
93
  - !ruby/object:Gem::Version
94
94
  version: '0'
95
95
  requirements: []
96
- rubyforge_project:
97
- rubygems_version: 2.4.6
96
+ rubygems_version: 3.1.2
98
97
  signing_key:
99
98
  specification_version: 4
100
99
  summary: A little gem to convert number to words in Indian English