quantify 1.1.0 → 1.2.0

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