quantify 1.1.0 → 1.2.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.
data/spec/unit_spec.rb CHANGED
@@ -3,20 +3,38 @@ include Quantify
3
3
 
4
4
  describe Unit do
5
5
 
6
- it "unload" do
7
- Unit.unload(:rad)
6
+ describe "superscript configuration" do
7
+
8
+ after :all do
9
+ Unit.use_superscript_characters!
10
+ end
11
+
12
+ it "should initialize superscript format" do
13
+ Unit.use_superscript_characters?.should be_true
14
+ end
15
+
16
+ it "should set superscript usage to true" do
17
+ Unit.use_superscript_characters=true
18
+ Unit.use_superscript_characters?.should be_true
19
+ end
20
+
21
+ it "should set superscript usage to false" do
22
+ Unit.use_superscript_characters=false
23
+ Unit.use_superscript_characters?.should be_false
24
+ end
25
+
8
26
  end
9
-
27
+
10
28
  describe "unit identifiers" do
11
29
 
12
30
  describe "default configuration" do
13
31
 
14
32
  it "should know that superscripts are to be used" do
15
- Quantify.use_superscript_characters?.should be_true
33
+ Unit.use_superscript_characters?.should be_true
16
34
  end
17
35
 
18
- it "should use superscript characters for powers of 2 and 3 by default" do
19
- Quantify.use_superscript_characters?.should be_true
36
+ it "should use superspt characters for powers of 2 and 3 by default" do
37
+ Unit.use_superscript_characters?.should be_true
20
38
  Unit.cubic_metre.label.should eql 'm³'
21
39
  Unit.square_metre.label.should eql 'm²'
22
40
  (Unit.m**2).label.should eql 'm²'
@@ -42,10 +60,10 @@ describe Unit do
42
60
  Unit.parse("m^4 K^2/s^3").label.should eql 'm^4·K²/s³'
43
61
  Unit.parse("m^4 K^2 s^-3").label.should eql 'm^4·K²/s³'
44
62
 
45
- Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K² s^-3'
46
- Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K² s^-3'
47
- Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K² s^-3'
48
- Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K² s^-3'
63
+ Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K²/s³'
64
+ Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K²/s³'
65
+ Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K²/s³'
66
+ Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K²/s³'
49
67
 
50
68
  Unit.parse("m^4·K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
51
69
  Unit.parse("m^4 K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
@@ -58,15 +76,15 @@ describe Unit do
58
76
  describe "explicitly turning off superscript characters" do
59
77
 
60
78
  before :all do
61
- Quantify.use_superscript_characters=false
79
+ Unit.use_superscript_characters=false
62
80
  end
63
81
 
64
82
  after :all do
65
- Quantify.use_superscript_characters!
83
+ Unit.use_superscript_characters!
66
84
  end
67
85
 
68
86
  it "should know that superscripts are not to be used" do
69
- Quantify.use_superscript_characters?.should be_false
87
+ Unit.use_superscript_characters?.should be_false
70
88
  end
71
89
 
72
90
  it "should NOT use superscript characters for powers of 2 and 3" do
@@ -96,10 +114,10 @@ describe Unit do
96
114
  Unit.parse("m^4 K^2 s^-3").label.should eql "m^4·K^2/s^3"
97
115
 
98
116
 
99
- Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K^2 s^-3'
100
- Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K^2 s^-3'
101
- Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K^2 s^-3'
102
- Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K^2 s^-3'
117
+ Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K^2/s^3'
118
+ Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K^2/s^3'
119
+ Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K^2/s^3'
120
+ Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K^2/s^3'
103
121
 
104
122
  Unit.parse("m^4·K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
105
123
  Unit.parse("m^4 K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
@@ -112,12 +130,12 @@ describe Unit do
112
130
  describe "explicitly turning on superscript characters" do
113
131
 
114
132
  before :all do
115
- Quantify.use_superscript_characters=false
116
- Quantify.use_superscript_characters=true
133
+ Unit.use_superscript_characters=false
134
+ Unit.use_superscript_characters=true
117
135
  end
118
136
 
119
137
  it "should know that superscripts are to be used" do
120
- Quantify.use_superscript_characters?.should be_true
138
+ Unit.use_superscript_characters?.should be_true
121
139
  end
122
140
 
123
141
  it "should use superscript characters for powers of 2 and 3" do
@@ -146,10 +164,10 @@ describe Unit do
146
164
  Unit.parse("m^4 K^2/s^3").label.should eql 'm^4·K²/s³'
147
165
  Unit.parse("m^4 K^2 s^-3").label.should eql 'm^4·K²/s³'
148
166
 
149
- Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K² s^-3'
150
- Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K² s^-3'
151
- Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K² s^-3'
152
- Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K² s^-3'
167
+ Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K²/s³'
168
+ Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K²/s³'
169
+ Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K²/s³'
170
+ Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K²/s³'
153
171
 
154
172
  Unit.parse("m^4·K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
155
173
  Unit.parse("m^4 K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
@@ -162,12 +180,12 @@ describe Unit do
162
180
  describe "explicitly turning on superscript characters with bang! method" do
163
181
 
164
182
  before :all do
165
- Quantify.use_superscript_characters=false
166
- Quantify.use_superscript_characters!
183
+ Unit.use_superscript_characters=false
184
+ Unit.use_superscript_characters!
167
185
  end
168
186
 
169
187
  it "should know that superscripts are to be used" do
170
- Quantify.use_superscript_characters?.should be_true
188
+ Unit.use_superscript_characters?.should be_true
171
189
  end
172
190
 
173
191
  it "should use superscript characters for powers of 2 and 3" do
@@ -196,10 +214,10 @@ describe Unit do
196
214
  Unit.parse("m^4 K^2/s^3").label.should eql 'm^4·K²/s³'
197
215
  Unit.parse("m^4 K^2 s^-3").label.should eql 'm^4·K²/s³'
198
216
 
199
- Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K² s^-3'
200
- Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K² s^-3'
201
- Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K² s^-3'
202
- Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K² s^-3'
217
+ Unit.parse("m^4·K²/s³").symbol.should eql 'm^4 K²/s³'
218
+ Unit.parse("m^4 K²/s³").symbol.should eql 'm^4 K²/s³'
219
+ Unit.parse("m^4 K^2/s^3").symbol.should eql 'm^4 K²/s³'
220
+ Unit.parse("m^4 K^2 s^-3").symbol.should eql 'm^4 K²/s³'
203
221
 
204
222
  Unit.parse("m^4·K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
205
223
  Unit.parse("m^4 K²/s³").name.should eql 'metre to the 4th power square kelvin per cubic second'
@@ -357,35 +375,35 @@ describe Unit do
357
375
  end
358
376
 
359
377
  it "should recognise compound unit with single word name" do
360
- Unit.centimetre_per_hour.symbol.should eql "cm h^-1"
378
+ Unit.centimetre_per_hour.symbol.should eql "cm/h"
361
379
  end
362
380
 
363
381
  it "should recognise compound unit with multiple word name" do
364
- Unit.centimetre_of_mercury_per_hour.symbol.should eql "cmHg h^-1"
382
+ Unit.centimetre_of_mercury_per_hour.symbol.should eql "cmHg/h"
365
383
  end
366
384
 
367
385
  it "should recognise compound unit with single word pluralized name" do
368
- Unit.centimetres_per_hour.symbol.should eql "cm h^-1"
386
+ Unit.centimetres_per_hour.symbol.should eql "cm/h"
369
387
  end
370
388
 
371
389
  it "should recognise compound unit with multiple word pluralized name" do
372
- Unit.centimetres_of_mercury_per_hour.symbol.should eql "cmHg h^-1"
390
+ Unit.centimetres_of_mercury_per_hour.symbol.should eql "cmHg/h"
373
391
  end
374
392
 
375
393
  it "should recognise compound unit with single word name" do
376
- Unit.centimetre_per_hour_US_bushel.symbol.should eql "cm h^-1 bu (Imp)^-1"
394
+ Unit.centimetre_per_hour_US_bushel.symbol.should eql "cm/h bu (Imp)"
377
395
  end
378
396
 
379
397
  it "should recognise compound unit with multiple word name" do
380
- Unit.centimetre_of_mercury_per_hour_US_bushel.symbol.should eql "cmHg h^-1 bu (Imp)^-1"
398
+ Unit.centimetre_of_mercury_per_hour_US_bushel.symbol.should eql "cmHg/h bu (Imp)"
381
399
  end
382
400
 
383
401
  it "should recognise compound unit with single word pluralized name" do
384
- Unit.centimetres_per_hour_US_bushels.symbol.should eql "cm h^-1 bu (Imp)^-1"
402
+ Unit.centimetres_per_hour_US_bushels.symbol.should eql "cm/h bu (Imp)"
385
403
  end
386
404
 
387
405
  it "should recognise compound unit with multiple word pluralized name" do
388
- Unit.centimetres_of_mercury_per_hour_US_bushels.symbol.should eql "cmHg h^-1 bu (Imp)^-1"
406
+ Unit.centimetres_of_mercury_per_hour_US_bushels.symbol.should eql "cmHg/h bu (Imp)"
389
407
  end
390
408
 
391
409
  describe "parsing unit string" do
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quantify
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 31
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
- - 1
8
+ - 2
9
9
  - 0
10
- version: 1.1.0
10
+ version: 1.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Andrew Berkeley
@@ -15,12 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-07-06 00:00:00 +01:00
18
+ date: 2011-08-04 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: activesupport
23
- prerelease: false
22
+ type: :runtime
24
23
  requirement: &id001 !ruby/object:Gem::Requirement
25
24
  none: false
26
25
  requirements:
@@ -30,49 +29,148 @@ dependencies:
30
29
  segments:
31
30
  - 0
32
31
  version: "0"
33
- type: :runtime
34
32
  version_requirements: *id001
35
- description:
33
+ name: activesupport
34
+ prerelease: false
35
+ - !ruby/object:Gem::Dependency
36
+ type: :runtime
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ version_requirements: *id002
47
+ name: i18n
48
+ prerelease: false
49
+ - !ruby/object:Gem::Dependency
50
+ type: :development
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ~>
55
+ - !ruby/object:Gem::Version
56
+ hash: 23
57
+ segments:
58
+ - 1
59
+ - 0
60
+ - 0
61
+ version: 1.0.0
62
+ version_requirements: *id003
63
+ name: bundler
64
+ prerelease: false
65
+ - !ruby/object:Gem::Dependency
66
+ type: :development
67
+ requirement: &id004 !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ~>
71
+ - !ruby/object:Gem::Version
72
+ hash: 7
73
+ segments:
74
+ - 1
75
+ - 6
76
+ - 4
77
+ version: 1.6.4
78
+ version_requirements: *id004
79
+ name: jeweler
80
+ prerelease: false
81
+ - !ruby/object:Gem::Dependency
82
+ type: :development
83
+ requirement: &id005 !ruby/object:Gem::Requirement
84
+ none: false
85
+ requirements:
86
+ - - "="
87
+ - !ruby/object:Gem::Version
88
+ hash: 27
89
+ segments:
90
+ - 1
91
+ - 3
92
+ - 0
93
+ version: 1.3.0
94
+ version_requirements: *id005
95
+ name: rspec
96
+ prerelease: false
97
+ - !ruby/object:Gem::Dependency
98
+ type: :development
99
+ requirement: &id006 !ruby/object:Gem::Requirement
100
+ none: false
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ hash: 3
105
+ segments:
106
+ - 0
107
+ version: "0"
108
+ version_requirements: *id006
109
+ name: rcov
110
+ prerelease: false
111
+ - !ruby/object:Gem::Dependency
112
+ type: :development
113
+ requirement: &id007 !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - "="
117
+ - !ruby/object:Gem::Version
118
+ hash: 21
119
+ segments:
120
+ - 1
121
+ - 1
122
+ - 3
123
+ version: 1.1.3
124
+ version_requirements: *id007
125
+ name: rspec_spinner
126
+ prerelease: false
127
+ description: A gem to support physical quantities and unit conversions
36
128
  email: andrew.berkeley.is@googlemail.com
37
129
  executables: []
38
130
 
39
131
  extensions: []
40
132
 
41
- extra_rdoc_files: []
42
-
43
- files:
133
+ extra_rdoc_files:
44
134
  - README
135
+ files:
136
+ - .rvmrc
45
137
  - COPYING
46
- - lib/quantify/unit/prefix/non_si_prefix.rb
47
- - lib/quantify/unit/prefix/base_prefix.rb
48
- - lib/quantify/unit/prefix/si_prefix.rb
49
- - lib/quantify/unit/prefix/prefix.rb
50
- - lib/quantify/unit/unit.rb
51
- - lib/quantify/unit/base_unit.rb
52
- - lib/quantify/unit/si_unit.rb
53
- - lib/quantify/unit/compound_base_unit.rb
54
- - lib/quantify/unit/compound_unit.rb
55
- - lib/quantify/unit/non_si_unit.rb
138
+ - Gemfile
139
+ - README
140
+ - Rakefile
141
+ - VERSION
142
+ - lib/quantify.rb
56
143
  - lib/quantify/config.rb
57
- - lib/quantify/core_extensions/string.rb
58
144
  - lib/quantify/core_extensions/numeric.rb
145
+ - lib/quantify/core_extensions/string.rb
59
146
  - lib/quantify/core_extensions/symbol.rb
60
147
  - lib/quantify/dimensions.rb
61
- - lib/quantify/inflections.rb
62
148
  - lib/quantify/exception.rb
63
- - lib/quantify/quantity.rb
149
+ - lib/quantify/inflections.rb
64
150
  - lib/quantify/quantify.rb
65
- - lib/quantify.rb
66
- - spec/dimension_spec.rb
67
- - spec/string_spec.rb
151
+ - lib/quantify/quantity.rb
152
+ - lib/quantify/unit/base_unit.rb
153
+ - lib/quantify/unit/compound_base_unit.rb
154
+ - lib/quantify/unit/compound_base_unit_list.rb
155
+ - lib/quantify/unit/compound_unit.rb
156
+ - lib/quantify/unit/non_si_unit.rb
157
+ - lib/quantify/unit/prefix/base_prefix.rb
158
+ - lib/quantify/unit/prefix/non_si_prefix.rb
159
+ - lib/quantify/unit/prefix/prefix.rb
160
+ - lib/quantify/unit/prefix/si_prefix.rb
161
+ - lib/quantify/unit/si_unit.rb
162
+ - lib/quantify/unit/unit.rb
163
+ - quantify.gemspec
68
164
  - spec/compound_unit_spec.rb
165
+ - spec/dimension_spec.rb
166
+ - spec/quantify_spec.rb
69
167
  - spec/quantity_spec.rb
168
+ - spec/string_spec.rb
70
169
  - spec/unit_spec.rb
71
- - spec/quantify_spec.rb
72
170
  has_rdoc: true
73
171
  homepage: https://github.com/spatchcock/quantify
74
- licenses: []
75
-
172
+ licenses:
173
+ - MIT
76
174
  post_install_message:
77
175
  rdoc_options: []
78
176
 
@@ -99,9 +197,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
197
  requirements: []
100
198
 
101
199
  rubyforge_project:
102
- rubygems_version: 1.6.2
200
+ rubygems_version: 1.6.0
103
201
  signing_key:
104
202
  specification_version: 3
105
- summary: Quantify supports handling of physical quantities, unit conversions
203
+ summary: Support for handling physical quantities, unit conversions, etc
106
204
  test_files: []
107
205