sankhya 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
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