m9t 0.3.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,161 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path( 'test_helper', File.dirname( __FILE__ ) )
4
-
5
- class TestM9tDistance < Test::Unit::TestCase
6
-
7
- def setup
8
- I18n.locale = :en
9
- M9t::Distance.reset_options!
10
- end
11
-
12
- # Basic use
13
- def test_singular
14
- distance = M9t::Distance.new( 1 )
15
- I18n.locale = :en
16
-
17
- assert_equal('1 meter', distance.to_s( :precision => 0 ) )
18
- end
19
-
20
- def test_plural
21
- distance = M9t::Distance.new( 10 )
22
-
23
- I18n.locale = :en
24
- assert_equal( '10 meters', distance.to_s( :precision => 0 ) )
25
- I18n.locale = :it
26
- assert_equal( '10 metri', distance.to_s( :precision => 0 ) )
27
- end
28
-
29
- # Class methods
30
-
31
- # Base class
32
-
33
- def test_unit_name
34
- assert_equal('distance', M9t::Distance.measurement_name)
35
- end
36
-
37
- # Construction
38
- # ...from meters
39
- def test_new
40
- assert_equal(0.3, M9t::Distance.new(0.3).to_f)
41
- end
42
-
43
- def test_class_meters
44
- assert_equal(0.3, M9t::Distance.meters(0.3).to_f)
45
- end
46
-
47
- # ...from other units
48
- def test_class_kilometers
49
- assert_in_delta(300.0, M9t::Distance.kilometers(0.3).to_f, 0.00001)
50
- end
51
-
52
- def test_class_miles
53
- assert_in_delta(1609.344, M9t::Distance.miles(1).to_f, 0.00001)
54
- assert_in_delta(42194.988, M9t::Distance.miles(26.21875).to_f, 0.00001)
55
- end
56
-
57
- # Conversion class methods
58
- # ...to other units
59
- def test_class_meters_to_kilometers
60
- assert_equal(0.0003, M9t::Distance.meters_to_kilometers(0.3))
61
- end
62
-
63
- def test_class_miles_to_kilometers
64
- assert_in_delta(42.194988, M9t::Distance.miles_to_kilometers(26.21875), 0.00001)
65
- end
66
-
67
- # Default options
68
-
69
- def test_default_options_set
70
- assert_not_nil(M9t::Distance.options)
71
- end
72
-
73
- def test_default_option_abbreviated
74
- assert(! M9t::Distance.options[:abbreviated])
75
- end
76
-
77
- def test_default_option_units
78
- assert_equal(:meters, M9t::Distance.options[:units])
79
- end
80
-
81
- def test_default_option_decimals
82
- assert_equal(5, M9t::Distance.options[:precision])
83
- end
84
-
85
- # Instance methods
86
-
87
- # Conversion
88
- def test_instance_to_meters
89
- assert_equal(0.3, M9t::Distance.new(0.3).to_meters)
90
- end
91
-
92
- def test_instance_to_kilometers
93
- assert_equal(0.0003, M9t::Distance.new(0.3).to_kilometers)
94
- end
95
-
96
- def test_instance_to_kilometers
97
- assert_in_delta(0.98425, M9t::Distance.new(0.3).to_feet, 0.00001)
98
- end
99
-
100
- # to_s
101
- def test_to_s_singular
102
- assert_equal('1.00000 meter', M9t::Distance.new(1).to_s)
103
- end
104
-
105
- def test_to_s_plural
106
- assert_equal('0.30000 meters', M9t::Distance.new(0.3).to_s)
107
- end
108
-
109
- # i18n
110
- def test_to_s_plural_abbreviated
111
- distance = M9t::Distance.new( 10 )
112
- I18n.locale = :en
113
- assert_equal( '10m', distance.to_s( :abbreviated => true,
114
- :precision => 0 ) )
115
- I18n.locale = :it
116
- assert_equal( '10m', distance.to_s( :abbreviated => true,
117
- :precision => 0 ) )
118
- end
119
-
120
- def test_to_s_abbreviated
121
- distance = M9t::Distance.new( 0.3 )
122
-
123
- assert_equal( '0.30000m', distance.to_s( :abbreviated => true ) )
124
- end
125
-
126
- def test_to_s_precision
127
- distance = M9t::Distance.new( 0.3 )
128
-
129
- assert_equal( '0.3m', distance.to_s( :precision => 1,
130
- :abbreviated => true ) )
131
- end
132
-
133
- def test_to_s_kilometers
134
- distance = M9t::Distance.new( 156003 )
135
-
136
- assert_equal( '156.0 kilometers', distance.to_s( :precision => 1,
137
- :units => :kilometers ) )
138
- end
139
-
140
- def test_miles_singular
141
- marathon = M9t::Distance.miles( 26.21875 )
142
- I18n.locale = :en
143
- assert_equal( '26 miles', marathon.to_s( :units => :miles,
144
- :precision => 0 ) )
145
- I18n.locale = :it
146
- assert_equal( '26 miglia', marathon.to_s( :units => :miles,
147
- :precision => 0 ) )
148
- end
149
-
150
- def test_to_s_miles_plural
151
- ten_km = M9t::Distance.new( 10000 )
152
-
153
- I18n.locale = :en
154
- assert_equal( '6.2 miles', ten_km.to_s( :units => :miles,
155
- :precision => 1 ) )
156
- I18n.locale = :it
157
- assert_equal( '6,2 miglia', ten_km.to_s( :units => :miles,
158
- :precision => 1 ) )
159
- end
160
-
161
- end
data/test/i18n_test.rb DELETED
@@ -1,30 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path( 'test_helper', File.dirname( __FILE__ ) )
4
-
5
- class TestI18nMonkeyPatching < Test::Unit::TestCase
6
-
7
- def setup
8
- end
9
-
10
- def test_translations_loaded
11
- I18n.locale = :en
12
- assert_equal('.', I18n.t('numbers.decimal_separator'))
13
- I18n.locale = :it
14
- assert_equal(',', I18n.t('numbers.decimal_separator'))
15
- end
16
-
17
- def test_localize_float_default
18
- assert_equal('1.500000', I18n.localize_float(1.5))
19
- end
20
-
21
- def test_localize_float_formatted
22
- assert_equal('1.5', I18n.localize_float(1.5, {:format => '%0.1f'}))
23
- end
24
-
25
- def test_localize_float_italian
26
- I18n.locale = :it
27
- assert_equal('1,5', I18n.localize_float(1.5, {:format => '%0.1f'}))
28
- end
29
-
30
- end
@@ -1,25 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path( 'test_helper', File.dirname( __FILE__ ) )
4
-
5
- class TestM9tDistance < Test::Unit::TestCase
6
-
7
- def setup
8
- I18n.locale = :en
9
- M9t::Pressure.reset_options!
10
- end
11
-
12
- # Basic use
13
- def test_bar
14
- assert_equal(1.0, M9t::Pressure.new(1.0).value)
15
- end
16
-
17
- def test_hectopascals
18
- assert_equal(0.001, M9t::Pressure.hectopascals(1.0).value)
19
- end
20
-
21
- def test_inches_of_mercury
22
- assert_in_delta(0.03386, M9t::Pressure.inches_of_mercury(1.0).value, 0.00001)
23
- end
24
-
25
- end
data/test/speed_test.rb DELETED
@@ -1,104 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path( 'test_helper', File.dirname( __FILE__ ) )
4
-
5
- class TestM9tSpeed < Test::Unit::TestCase
6
-
7
- def setup
8
- I18n.locale = :en
9
- M9t::Speed.reset_options!
10
- end
11
-
12
- # Basic use
13
- def test_new
14
- assert_equal(45, M9t::Speed.new(45).value)
15
- end
16
-
17
- # Class methods
18
-
19
- # Base class
20
-
21
- def test_measurement_name
22
- assert_equal('speed', M9t::Speed.measurement_name)
23
- end
24
-
25
- # conversion constants
26
-
27
- def test_knot_conversion
28
- assert_in_delta(1.9438, M9t::Speed::KNOTS, 0.0001)
29
- end
30
-
31
- # input conversions
32
-
33
- def test_class_kilometers_per_hour
34
- assert_in_delta(0.2778, M9t::Speed.kilometers_per_hour(1).value, 0.0001)
35
- end
36
-
37
- def test_class_miles_per_hour
38
- assert_in_delta(0.447, M9t::Speed.miles_per_hour(1).value, 0.0001)
39
- end
40
-
41
- def test_class_knots
42
- assert_in_delta 0.5144, M9t::Speed.knots(1).value, 0.0001
43
- end
44
-
45
- # output conversions
46
-
47
- def test_class_to_miles_per_hour
48
- assert_in_delta(100.6621, M9t::Speed.meters_per_second_to_miles_per_hour(45), 0.0001)
49
- end
50
-
51
- # Instance methods
52
-
53
- # new
54
-
55
- def test_unknown_units
56
- speed = M9t::Speed.new( '010' )
57
-
58
- assert_raises( M9t::UnitError ) do
59
- speed.to_s( :units => :foos )
60
- end
61
- end
62
-
63
- # output conversions
64
-
65
- def test_kmh
66
- assert_equal(162, M9t::Speed.new(45).to_kilometers_per_hour)
67
- end
68
-
69
- def test_mph
70
- assert_in_delta(100.6621, M9t::Speed.new(45).to_miles_per_hour, 0.0001)
71
- end
72
-
73
- # to_s
74
-
75
- def test_to_s
76
- assert_equal '135.00000 meters per second', M9t::Speed.new(135).to_s
77
- I18n.locale = :it
78
- assert_equal '135,00000 metri al second', M9t::Speed.new(135).to_s
79
- end
80
-
81
- def test_to_s_precision
82
- speed = M9t::Speed.new( 135 )
83
-
84
- assert_equal '135 meters per second', speed.to_s( :precision => 0 )
85
- end
86
-
87
- def test_to_s_abbreviated
88
- speed = M9t::Speed.new( 135 )
89
-
90
- assert_equal '135m/s', speed.to_s( :abbreviated => true,
91
- :precision => 0 )
92
- end
93
-
94
- def test_to_s_knots
95
- speed = M9t::Speed.new( 135 )
96
-
97
- assert_equal '262 knots', speed.to_s( :units => :knots,
98
- :precision => 0 )
99
- I18n.locale = :it
100
- assert_equal '262 nodi', speed.to_s( :units => :knots,
101
- :precision => 0 )
102
- end
103
-
104
- end
@@ -1,111 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path( 'test_helper', File.dirname( __FILE__ ) )
4
-
5
- class TestM9tTemperature < Test::Unit::TestCase
6
-
7
- def setup
8
- I18n.locale = :en
9
- M9t::Temperature.reset_options!
10
- end
11
-
12
- # Basic use
13
- def test_new
14
- assert_equal(45, M9t::Temperature.new(45).value)
15
- end
16
-
17
- # Class methods
18
-
19
- # Base class
20
-
21
- def test_measurement_name
22
- assert_equal('temperature', M9t::Temperature.measurement_name)
23
- end
24
-
25
- # conversion constants
26
-
27
- def test_kelvin_offset
28
- assert_in_delta(-273.15, M9t::Temperature::ABSOLUTE_ZERO, 0.0001)
29
- end
30
-
31
- # input conversions
32
-
33
- def test_class_kelvin
34
- assert_in_delta(-273.15, M9t::Temperature.kelvin(0).value, 0.0001)
35
- end
36
-
37
- def test_class_fahrenheit
38
- assert_in_delta(-17.7777, M9t::Temperature.fahrenheit(0).value, 0.0001)
39
- end
40
-
41
- # output conversions
42
-
43
- def test_class_to_kelvin
44
- assert_in_delta(273.15, M9t::Temperature.to_kelvin(0), 0.0001)
45
- end
46
-
47
- def test_class_to_fahrenheit
48
- assert_in_delta(32, M9t::Temperature.to_fahrenheit(0), 0.0001)
49
- end
50
-
51
- def test_class_kelvin_to_degrees
52
- assert_in_delta(-273.15, M9t::Temperature.kelvin_to_degrees(0), 0.0001)
53
- end
54
-
55
- # Instance methods
56
-
57
- # new
58
-
59
- def test_unknown_units
60
- temperature = M9t::Temperature.new( 1 )
61
-
62
- assert_raises( M9t::UnitError ) do
63
- temperature.to_s( :units => :foos )
64
- end
65
- end
66
-
67
- # output conversions
68
-
69
- def test_to_kelvin
70
- assert_equal(373.15, M9t::Temperature.new(100).to_kelvin)
71
- end
72
-
73
- def test_to_fahrenheit
74
- assert_equal(212, M9t::Temperature.new(100).to_fahrenheit)
75
- end
76
-
77
- # to_s
78
-
79
- def test_to_s
80
- assert_equal '100.00000 degrees', M9t::Temperature.new(100).to_s
81
- I18n.locale = :it
82
- assert_equal '100,00000 gradi', M9t::Temperature.new(100).to_s
83
- end
84
-
85
- def test_to_s_precision
86
- temperature = M9t::Temperature.new( 135 )
87
-
88
- assert_equal '135 degrees', temperature.to_s( :precision => 0 )
89
- end
90
-
91
- def test_to_s_abbreviated
92
- temperature = M9t::Temperature.new( 135 )
93
-
94
- assert_equal '135°C', temperature.to_s( :abbreviated => true,
95
- :precision => 0 )
96
- assert_equal '408.15K', temperature.to_s( :units => :kelvin,
97
- :abbreviated => true,
98
- :precision => 2 )
99
- end
100
-
101
- def test_to_s_kelvin
102
- temperature = M9t::Temperature.new( 100 )
103
-
104
- assert_equal '373.15 kelvin', temperature.to_s( :units => :kelvin,
105
- :precision => 2 )
106
- I18n.locale = :it
107
- assert_equal '373,15 kelvin', temperature.to_s( :units => :kelvin,
108
- :precision => 2 )
109
- end
110
-
111
- end
data/test/test_helper.rb DELETED
@@ -1,17 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems' if RUBY_VERSION < '1.9'
4
- require 'test/unit'
5
-
6
- if RUBY_VERSION > '1.9'
7
- require 'simplecov'
8
- if ENV[ 'COVERAGE' ]
9
- SimpleCov.start do
10
- add_filter "/test/"
11
- end
12
- end
13
- end
14
-
15
- $:.unshift( File.expand_path( '../lib', File.dirname(__FILE__) ) )
16
-
17
- require 'm9t'