ziptz 4.0.1 → 5.0.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.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +2 -2
- data/lib/version.rb +1 -1
- data/lib/ziptz.rb +2 -0
- data/spec/ziptz_spec.rb +21 -25
- data/ziptz.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9f1ff0d267b6ba06ee70a99186cd14f8684744f4fd243f56d9b7150117f26cc0
|
|
4
|
+
data.tar.gz: 407d339f02d80651adc97150bccb8e85cac844f948f3e9e7c2d348e110dfc20c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 4724ab134a22f108612b724339343a16f78bfcdad477f378bf6e30154cdb9e2470a6f95964dbabbbfa874253df215a88e93adba6a0e0bcb8a4bc4f6b88eb2e68
|
|
7
|
+
data.tar.gz: 69242029d2511543b28068cc0045f4de2ee00b00458a834dbcd810b736d75090f8c1fa74e8156f124a4857059b93d4f6ba15174e75d2340aa458062821a089df
|
data/LICENSE
CHANGED
data/README.md
CHANGED
|
@@ -12,7 +12,7 @@ Get time zone, daylight saving time, and base offset for any US ZIP code.
|
|
|
12
12
|
|
|
13
13
|
Ziptz is tested to work with the following versions of Ruby:
|
|
14
14
|
|
|
15
|
-
* Ruby
|
|
15
|
+
* Ruby 3.1.x, 3.2.x, 3.3.x
|
|
16
16
|
|
|
17
17
|
## Installation
|
|
18
18
|
|
|
@@ -160,7 +160,7 @@ Time zone names now reflect standard tz-database names.
|
|
|
160
160
|
|
|
161
161
|
## License
|
|
162
162
|
|
|
163
|
-
Copyright (c) 2015-
|
|
163
|
+
Copyright (c) 2015-2024 Keith Morrison <<keithm@infused.org>>
|
|
164
164
|
|
|
165
165
|
Permission is hereby granted, free of charge, to any person
|
|
166
166
|
obtaining a copy of this software and associated documentation
|
data/lib/version.rb
CHANGED
data/lib/ziptz.rb
CHANGED
data/spec/ziptz_spec.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
3
|
RSpec.describe Ziptz do
|
|
4
|
-
let(:ziptz) {
|
|
4
|
+
let(:ziptz) { described_class.new }
|
|
5
5
|
|
|
6
6
|
describe 'when inspected' do
|
|
7
7
|
it 'does not show internal instance variables' do
|
|
@@ -27,39 +27,35 @@ RSpec.describe Ziptz do
|
|
|
27
27
|
expect(ziptz.time_zone_name('xyz')).to be_nil
|
|
28
28
|
end
|
|
29
29
|
end
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
describe '#time_zone_name' do
|
|
33
|
-
context 'when given a 5-digit zipcode' do
|
|
34
|
-
it 'returns the time zone number' do
|
|
35
|
-
expect(ziptz.time_zone_name('97034')).to eq 'America/Los_Angeles'
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
context 'when given a 9-digit zipcode' do
|
|
40
|
-
it 'returns the time zone number' do
|
|
41
|
-
expect(ziptz.time_zone_name('97034-1234')).to eq 'America/Los_Angeles'
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
30
|
|
|
45
|
-
context 'when
|
|
31
|
+
context 'when nil is passed' do
|
|
46
32
|
it 'returns nil' do
|
|
47
|
-
expect(ziptz.time_zone_name(
|
|
33
|
+
expect(ziptz.time_zone_name(nil)).to be_nil
|
|
48
34
|
end
|
|
49
35
|
end
|
|
50
36
|
end
|
|
51
37
|
|
|
52
38
|
describe '#time_zone_uses_dst?' do
|
|
53
|
-
context 'when given a 5-digit zipcode' do
|
|
54
|
-
it 'returns
|
|
39
|
+
context 'when given a valid 5-digit zipcode' do
|
|
40
|
+
it 'returns true' do
|
|
55
41
|
expect(ziptz.time_zone_uses_dst?('97034')).to eq true
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
context 'when given an invalid 5-digit zipcode' do
|
|
46
|
+
it 'returns false' do
|
|
56
47
|
expect(ziptz.time_zone_uses_dst?('85004')).to eq false
|
|
57
48
|
end
|
|
58
49
|
end
|
|
59
50
|
|
|
60
|
-
context 'when given a 9-digit zipcode' do
|
|
61
|
-
it 'returns a
|
|
51
|
+
context 'when given a valid 9-digit zipcode' do
|
|
52
|
+
it 'returns a true' do
|
|
62
53
|
expect(ziptz.time_zone_uses_dst?('97034-1234')).to eq true
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
context 'when given an invalid 9-digit zipcode' do
|
|
58
|
+
it 'returns false' do
|
|
63
59
|
expect(ziptz.time_zone_uses_dst?('85004-1234')).to eq false
|
|
64
60
|
end
|
|
65
61
|
end
|
|
@@ -74,13 +70,13 @@ RSpec.describe Ziptz do
|
|
|
74
70
|
describe '#time_zone_offset' do
|
|
75
71
|
context 'when given a 5-digit zipcode' do
|
|
76
72
|
it 'returns the time zone number' do
|
|
77
|
-
expect(ziptz.time_zone_offset('97034')).to eq(-
|
|
73
|
+
expect(ziptz.time_zone_offset('97034')).to eq(-28_800)
|
|
78
74
|
end
|
|
79
75
|
end
|
|
80
76
|
|
|
81
77
|
context 'when given a 9-digit zipcode' do
|
|
82
78
|
it 'returns the time zone number' do
|
|
83
|
-
expect(ziptz.time_zone_offset('97034-1234')).to eq(-
|
|
79
|
+
expect(ziptz.time_zone_offset('97034-1234')).to eq(-28_800)
|
|
84
80
|
end
|
|
85
81
|
end
|
|
86
82
|
|
|
@@ -110,13 +106,13 @@ RSpec.describe Ziptz do
|
|
|
110
106
|
describe '#instance' do
|
|
111
107
|
context 'when given a 5 digit zip code' do
|
|
112
108
|
it 'matches the behavior of Ziptz.new' do
|
|
113
|
-
expect(
|
|
109
|
+
expect(described_class.instance.time_zone_name('97034')).to eq ziptz.time_zone_name('97034')
|
|
114
110
|
end
|
|
115
111
|
end
|
|
116
112
|
|
|
117
113
|
context 'when called twice' do
|
|
118
114
|
it 'returns identical instances' do
|
|
119
|
-
expect(
|
|
115
|
+
expect(described_class.instance.object_id).to eq described_class.instance.object_id
|
|
120
116
|
end
|
|
121
117
|
end
|
|
122
118
|
end
|
data/ziptz.gemspec
CHANGED
|
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
|
|
|
17
17
|
s.extra_rdoc_files = ['README.md', 'LICENSE']
|
|
18
18
|
s.files = Dir['README.md', 'LICENSE', '{data,lib,spec}/**/*', 'ziptz.gemspec']
|
|
19
19
|
s.require_paths = ['lib']
|
|
20
|
-
s.required_ruby_version = '>=
|
|
20
|
+
s.required_ruby_version = '>= 3.1.0'
|
|
21
21
|
s.metadata['rubygems_mfa_required'] = 'true'
|
|
22
22
|
s.add_dependency 'sqlite3', '~> 1.6'
|
|
23
23
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ziptz
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 5.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Keith Morrison
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-12-
|
|
11
|
+
date: 2023-12-28 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: sqlite3
|
|
@@ -56,14 +56,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
56
56
|
requirements:
|
|
57
57
|
- - ">="
|
|
58
58
|
- !ruby/object:Gem::Version
|
|
59
|
-
version:
|
|
59
|
+
version: 3.1.0
|
|
60
60
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
61
61
|
requirements:
|
|
62
62
|
- - ">="
|
|
63
63
|
- !ruby/object:Gem::Version
|
|
64
64
|
version: '0'
|
|
65
65
|
requirements: []
|
|
66
|
-
rubygems_version: 3.
|
|
66
|
+
rubygems_version: 3.5.3
|
|
67
67
|
signing_key:
|
|
68
68
|
specification_version: 4
|
|
69
69
|
summary: TimeZone info for any 5-digit US zip code
|