number_read_out 0.0.4 → 0.0.5

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: 6b9241e37d6484560a7988220a8d6e0f7afd0375
4
- data.tar.gz: 94a4adbc9d85853e27b16ca08860bbf7a6efaed8
2
+ SHA256:
3
+ metadata.gz: b040fc2db53b1f7246e1ae2e1435767e05c74f86c4f44c888d8abc97d7fef37e
4
+ data.tar.gz: c00169d8093aaba2aba876fdc9bb60184256a814dbf407c1012b80154bf42935
5
5
  SHA512:
6
- metadata.gz: e3deaffc45d108738566ae3545a6c7f15cad96a5cdd6334e21348a50e0a621b7a942174158283454e07a44fb3d46df1ec47fbf7a39ef545d1c41495ce4d8fd43
7
- data.tar.gz: f538091ba9e8fcabf85eb4f26cc2df96ba1bb4d0c67f9dddcc17531a2360493ca8f7f73f4739758713b4d7fd126886d5f962072bd7f8c1a351a4b9b812178f21
6
+ metadata.gz: 893bee41f3796877d4381564a5d076d02afced621bde06f666c5976b79de21ecac9489157730a6e9932dcaec40526cab9f56cd8a3a31c843900c17589a9cb0a0
7
+ data.tar.gz: f6ff38502f04490c1b34bf03c73ba5dc90644694f7af3177df1f2cc7e0839608f0a676c271ad874790f6b8de582708010d7e87e98f5efd4a0a29339699cd8928
data/.gitignore CHANGED
@@ -9,3 +9,5 @@
9
9
  /tmp/
10
10
  /.idea
11
11
  *.gem
12
+ /.byebug_history
13
+ /.ruby-version
@@ -13,7 +13,8 @@ module NumberReadOut
13
13
  monads: ['', 'ONE', 'TWO', 'THREE', 'FOUR', 'FIVE', 'SIX', 'SEVEN', 'EIGHT', 'NINE'],
14
14
  },
15
15
  units_singular: [ 'THOUSAND', 'THOUSAND', 'MILLION', 'BILLION', 'TRILLION', 'QUADRILLION'],
16
- units_plural: [ 'THOUSAND', 'THOUSAND', 'MILLION', 'BILLION', 'TRILLION', 'QUADRILLION']
16
+ units_plural: [ 'THOUSAND', 'THOUSAND', 'MILLION', 'BILLION', 'TRILLION', 'QUADRILLION'],
17
+ negative: 'MINUS'
17
18
  },
18
19
  gr: {male: {hundreds: ['ΕΚΑΤΟΝ', 'ΕΚΑΤΟ', 'ΔΙΑΚΟΣΙA', 'ΤΡΙΑΚΟΣΙΑ', 'ΤΕΤΡΑΚΟΣΙΑ', 'ΠΕΝΤΑΚΟΣΙΑ', 'ΕΞΑΚΟΣΙΑ', 'ΕΠΤΑΚΟΣΙΑ', 'ΟΚΤΑΚΟΣΙΑ', 'ΕΝΝΙΑΚΟΣΙΑ'],
19
20
  dozens: ['', 'ΔΕΚΑ', 'ΕΙΚΟΣΙ', 'ΤΡΙΑΝΤΑ', 'ΣΑΡΑΝΤΑ', 'ΠΕΝΗΝΤΑ', 'ΕΞΗΝΤΑ', 'ΕΒΔΟΜΗΝΤΑ', 'ΟΓΔΟΝΤΑ', 'ΕΝΕΝΗΝΤΑ','ΔΕΚΑ', 'ΕΝΤΕΚΑ', 'ΔΩΔΕΚΑ', 'ΔΕΚΑΤΡΙΑ', 'ΔΕΚΑΤΕΣΣΕΡΑ', 'ΔΕΚΑΠΕΝΤΕ', 'ΔΕΚΑΕΞΙ', 'ΔΕΚΑΕΠΤΑ', 'ΔΕΚΑΟΚΤΩ', 'ΔΕΚΑΕΝΝΕΑ'],
@@ -24,7 +25,8 @@ module NumberReadOut
24
25
  monads: ['', 'ΜΙΑ', 'ΔΥΟ', 'ΤΡΕΙΣ', 'ΤΕΣΣΕΡΙΣ', 'ΠΕΝΤΕ', 'ΕΞΙ', 'ΕΠΤΑ', 'ΟΚΤΩ', 'ΕΝΝΕΑ'],
25
26
  },
26
27
  units_singular: ['ΧΙΛΙΕΣ', 'ΧΙΛΙΑ', 'ΕΚΑΤΟΜΥΡΙΟ', 'ΔΙΣΕΚΑΤΟΜΥΡΙΟ', 'ΤΡΙΣΕΚΑΤΟΜΥΡΙΟ', 'ΤΕΤΡΑΚΙΣΕΚΑΤΟΜΥΡΙΟ'],
27
- units_plural: [ 'ΧΙΛΙΑΔΕΣ', 'ΧΙΛΙΑΔΕΣ', 'ΕΚΑΤΟΜΥΡΙΑ', 'ΔΙΣΕΚΑΤΟΜΥΡΙΑ', 'ΤΡΙΣΕΚΑΤΟΜΥΡΙΑ', 'ΤΕΤΡΑΚΙΣΕΚΑΤΟΜΥΡΙΑ']
28
+ units_plural: [ 'ΧΙΛΙΑΔΕΣ', 'ΧΙΛΙΑΔΕΣ', 'ΕΚΑΤΟΜΥΡΙΑ', 'ΔΙΣΕΚΑΤΟΜΥΡΙΑ', 'ΤΡΙΣΕΚΑΤΟΜΥΡΙΑ', 'ΤΕΤΡΑΚΙΣΕΚΑΤΟΜΥΡΙΑ'],
29
+ negative: 'ΜΕΙΟΝ'
28
30
  }
29
31
  }
30
32
 
@@ -106,11 +108,15 @@ module NumberReadOut
106
108
  end
107
109
  private_class_method :triplet_to_text
108
110
 
111
+ def self.sing_part
109
112
 
113
+ end
110
114
  def self.full_currency_text(amount_str, currency= :euro,lang= :gr)
111
115
 
112
116
  raise ArgumentError.new("Parameter amount: expecting string") unless amount_str.is_a?(String)
113
-
117
+ amount_str = amount_str.tr(' ','')
118
+ negative = (amount_str.to_f < 0)
119
+ amount_str = amount_str.tr('-','')
114
120
  dots = amount_str.count('.')
115
121
  commas = amount_str.count(',')
116
122
  raise ArgumentError.new("Parameter amount: too many dots or commas") if dots >1 or commas >1
@@ -134,7 +140,7 @@ module NumberReadOut
134
140
  end
135
141
  raise ArgumentError.new("Number too long to parse...") if integer_part_of_number >0
136
142
 
137
- integer_part_text + ((integer_part_text !='' and decimal_part_text !='')? ' ' + SpokenCurrencies[lang][currency][3] + ' ' : '') +decimal_part_text
143
+ (negative ? SpokenNumbers[lang][:negative] + ' ' : '') + integer_part_text + ((integer_part_text !='' and decimal_part_text !='')? ' ' + SpokenCurrencies[lang][currency][3] + ' ' : '') +decimal_part_text
138
144
 
139
145
  end
140
146
 
@@ -1,6 +1,6 @@
1
1
  # gem build number_read_out.gemspec
2
- # gem inabox ./number_read_out-0.0.4.gem -g http://michail:$GEM_SERVER_KEY@ru-blade2.aegean.gr:9292
3
- # gem push number_read_out-0.0.4.gem
2
+ # gem inabox ./number_read_out-0.0.5.gem -g http://michail:$GEM_SERVER_KEY@ru-blade2.aegean.gr:9292
3
+ # gem push number_read_out-0.0.5.gem
4
4
  module NumberReadOut
5
- VERSION = "0.0.4"
5
+ VERSION = "0.0.5"
6
6
  end
@@ -31,6 +31,6 @@ Gem::Specification.new do |spec|
31
31
  spec.add_development_dependency "rake", "~> 10.0"
32
32
  spec.add_development_dependency "minitest", "~> 5.0"
33
33
  spec.add_development_dependency "tiny_tds", "~> 1.0"
34
- spec.add_development_dependency "simplecov"
34
+ spec.add_development_dependency "simplecov","~> 0.16"
35
35
  spec.add_development_dependency "byebug"
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: number_read_out
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michail Pantelelis
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-01-16 00:00:00.000000000 Z
11
+ date: 2018-04-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -70,16 +70,16 @@ dependencies:
70
70
  name: simplecov
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: '0.16'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '0.16'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: byebug
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -134,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
134
  version: '0'
135
135
  requirements: []
136
136
  rubyforge_project:
137
- rubygems_version: 2.5.2
137
+ rubygems_version: 2.7.6
138
138
  signing_key:
139
139
  specification_version: 4
140
140
  summary: Utility gem to convert numbers/currencies to text in Greek and English.