thumbtack 1.1.1 → 2.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.
Files changed (52) hide show
  1. checksums.yaml +5 -5
  2. data/lib/thumbtack.rb +3 -3
  3. data/lib/thumbtack/adapters/basic_adapter.rb +31 -6
  4. data/lib/thumbtack/client.rb +3 -2
  5. data/lib/thumbtack/hash_to_digest.rb +5 -4
  6. data/lib/thumbtack/note.rb +15 -15
  7. data/lib/thumbtack/note_summary.rb +14 -14
  8. data/lib/thumbtack/notes.rb +1 -1
  9. data/lib/thumbtack/post.rb +14 -14
  10. data/lib/thumbtack/posts.rb +11 -11
  11. data/lib/thumbtack/specification.rb +1 -1
  12. data/lib/thumbtack/suggestion.rb +3 -3
  13. data/lib/thumbtack/symbolize_keys.rb +1 -1
  14. data/lib/thumbtack/tags.rb +1 -1
  15. data/lib/thumbtack/types/boolean.rb +2 -2
  16. data/lib/thumbtack/types/date.rb +1 -1
  17. data/lib/thumbtack/types/identity.rb +1 -1
  18. data/lib/thumbtack/types/integer.rb +1 -1
  19. data/lib/thumbtack/types/length_validation.rb +3 -3
  20. data/lib/thumbtack/types/md5.rb +4 -4
  21. data/lib/thumbtack/types/range_validation.rb +3 -3
  22. data/lib/thumbtack/types/tags.rb +7 -7
  23. data/lib/thumbtack/types/text.rb +1 -1
  24. data/lib/thumbtack/types/{date_time.rb → time.rb} +13 -13
  25. data/lib/thumbtack/types/title.rb +1 -1
  26. data/lib/thumbtack/types/url.rb +4 -4
  27. data/lib/thumbtack/user.rb +1 -1
  28. data/lib/thumbtack/version.rb +2 -2
  29. data/test/test_helper.rb +7 -4
  30. data/test/thumbtack/client_test.rb +1 -1
  31. data/test/thumbtack/integration/basic_adapter_test.rb +2 -2
  32. data/test/thumbtack/note_summary_test.rb +3 -3
  33. data/test/thumbtack/note_test.rb +3 -3
  34. data/test/thumbtack/notes_test.rb +1 -1
  35. data/test/thumbtack/post_test.rb +3 -3
  36. data/test/thumbtack/posts_test.rb +24 -46
  37. data/test/thumbtack/specification_test.rb +3 -2
  38. data/test/thumbtack/suggestion_test.rb +5 -5
  39. data/test/thumbtack/tags_test.rb +1 -9
  40. data/test/thumbtack/types/boolean_test.rb +1 -1
  41. data/test/thumbtack/types/date_test.rb +1 -1
  42. data/test/thumbtack/types/identity_test.rb +1 -1
  43. data/test/thumbtack/types/integer_test.rb +1 -1
  44. data/test/thumbtack/types/md5_test.rb +1 -1
  45. data/test/thumbtack/types/tags_test.rb +3 -3
  46. data/test/thumbtack/types/text_test.rb +1 -1
  47. data/test/thumbtack/types/time_test.rb +32 -0
  48. data/test/thumbtack/types/title_test.rb +1 -1
  49. data/test/thumbtack/types/url_test.rb +1 -1
  50. data/test/thumbtack/user_test.rb +1 -1
  51. metadata +37 -39
  52. data/test/thumbtack/types/date_time_test.rb +0 -33
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -10,7 +10,8 @@ class SpecificationTest < Minitest::Test
10
10
 
11
11
  assert_equal(
12
12
  { key: 'parameterized' },
13
- Specification.new(key: type_handler).parameters(key: 'value'))
13
+ Specification.new(key: type_handler).parameters(key: 'value')
14
+ )
14
15
  type_handler.verify
15
16
  end
16
17
  end
@@ -1,16 +1,16 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
5
5
  class NoteSummaryTest < Minitest::Test
6
6
  def test_from_array
7
7
  array = [
8
- { 'popular' => %w(ifttt) },
9
- { 'recommended' => %w(ifttt twitter) }
8
+ { 'popular' => %w[ifttt] },
9
+ { 'recommended' => %w[ifttt twitter] }
10
10
  ]
11
11
  suggestion = Suggestion.from_array(array)
12
12
 
13
- assert_equal %w(ifttt), suggestion.popular
14
- assert_equal %w(ifttt twitter), suggestion.recommended
13
+ assert_equal %w[ifttt], suggestion.popular
14
+ assert_equal %w[ifttt twitter], suggestion.recommended
15
15
  end
16
16
  end
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -8,10 +8,6 @@ class TagsTest < Minitest::Test
8
8
  '/tags/get',
9
9
  nil,
10
10
  'activedesktop' => '1',
11
- 'business' => '1',
12
- 'radio' => '3',
13
- 'xml' => '5',
14
- 'xp' => '1',
15
11
  'xpi' => '1'
16
12
  )
17
13
  tags = Tags.new(client)
@@ -19,10 +15,6 @@ class TagsTest < Minitest::Test
19
15
  assert_equal(
20
16
  {
21
17
  'activedesktop' => 1,
22
- 'business' => 1,
23
- 'radio' => 3,
24
- 'xml' => 5,
25
- 'xp' => 1,
26
18
  'xpi' => 1
27
19
  },
28
20
  tags.get
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -19,11 +19,11 @@ class TagsTest < Minitest::Test
19
19
 
20
20
  def test_serialize
21
21
  assert_equal 'one', Types::Tags.serialize('one')
22
- assert_equal 'one two', Types::Tags.serialize(%w(one two))
22
+ assert_equal 'one two', Types::Tags.serialize(%w[one two])
23
23
  assert_equal 'padding', Types::Tags.serialize([' padding '])
24
24
  end
25
25
 
26
26
  def test_deserialize
27
- assert_equal %w(one two), Types::Tags.deserialize('one two')
27
+ assert_equal %w[one two], Types::Tags.deserialize('one two')
28
28
  end
29
29
  end
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'test_helper'
4
+
5
+ class TimeTest < Minitest::Test
6
+ def test_validate
7
+ assert_equal Types::Time, Types::Time.validate(::Time.now)
8
+
9
+ assert_raises(ValidationError) do
10
+ Types::Time.validate ::Time.new(0, 1, 1)
11
+ end
12
+
13
+ assert_raises(ValidationError) do
14
+ Types::Time.validate ::Time.new(2101, 1, 1)
15
+ end
16
+ end
17
+
18
+ def test_serialize
19
+ assert_equal '2010-12-11T19:48:02Z',
20
+ Types::Time.serialize(::Time.new(2010, 12, 11, 19, 48, 2))
21
+ end
22
+
23
+ def test_deserialize
24
+ assert_equal ::Time.new(2010, 12, 11, 19, 48, 2),
25
+ Types::Time.deserialize('2010-12-11T19:48:02Z')
26
+ end
27
+
28
+ def test_deserialize_from_note
29
+ assert_equal ::Time.new(2010, 12, 11, 19, 48, 2),
30
+ Types::Time.deserialize_from_note('2010-12-11 19:48:02')
31
+ end
32
+ end
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
@@ -1,4 +1,4 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require 'test_helper'
4
4
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thumbtack
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nate Smith
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-16 00:00:00.000000000 Z
11
+ date: 2019-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -25,61 +25,61 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: codeclimate-test-reporter
28
+ name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.4.8
33
+ version: 5.11.3
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 0.4.8
40
+ version: 5.11.3
41
41
  - !ruby/object:Gem::Dependency
42
- name: minitest
42
+ name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 5.8.0
47
+ version: 12.3.2
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 5.8.0
54
+ version: 12.3.2
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: simplecov
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 10.4.2
61
+ version: 0.16.1
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 10.4.2
68
+ version: 0.16.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: yard
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - '='
74
74
  - !ruby/object:Gem::Version
75
- version: 0.8.7.4
75
+ version: 0.9.18
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.8.7.4
82
+ version: 0.9.18
83
83
  description: Thumbtack is a simple client for the Pinboard API
84
84
  email:
85
85
  - nwjsmith@gmail.com
@@ -102,7 +102,6 @@ files:
102
102
  - lib/thumbtack/tags.rb
103
103
  - lib/thumbtack/types/boolean.rb
104
104
  - lib/thumbtack/types/date.rb
105
- - lib/thumbtack/types/date_time.rb
106
105
  - lib/thumbtack/types/identity.rb
107
106
  - lib/thumbtack/types/integer.rb
108
107
  - lib/thumbtack/types/length_validation.rb
@@ -110,6 +109,7 @@ files:
110
109
  - lib/thumbtack/types/range_validation.rb
111
110
  - lib/thumbtack/types/tags.rb
112
111
  - lib/thumbtack/types/text.rb
112
+ - lib/thumbtack/types/time.rb
113
113
  - lib/thumbtack/types/title.rb
114
114
  - lib/thumbtack/types/url.rb
115
115
  - lib/thumbtack/user.rb
@@ -127,12 +127,12 @@ files:
127
127
  - test/thumbtack/tags_test.rb
128
128
  - test/thumbtack/types/boolean_test.rb
129
129
  - test/thumbtack/types/date_test.rb
130
- - test/thumbtack/types/date_time_test.rb
131
130
  - test/thumbtack/types/identity_test.rb
132
131
  - test/thumbtack/types/integer_test.rb
133
132
  - test/thumbtack/types/md5_test.rb
134
133
  - test/thumbtack/types/tags_test.rb
135
134
  - test/thumbtack/types/text_test.rb
135
+ - test/thumbtack/types/time_test.rb
136
136
  - test/thumbtack/types/title_test.rb
137
137
  - test/thumbtack/types/url_test.rb
138
138
  - test/thumbtack/user_test.rb
@@ -148,39 +148,37 @@ required_ruby_version: !ruby/object:Gem::Requirement
148
148
  requirements:
149
149
  - - ">="
150
150
  - !ruby/object:Gem::Version
151
- version: 1.9.3
151
+ version: 2.4.5
152
152
  required_rubygems_version: !ruby/object:Gem::Requirement
153
153
  requirements:
154
154
  - - ">="
155
155
  - !ruby/object:Gem::Version
156
156
  version: '0'
157
157
  requirements: []
158
- rubyforge_project:
159
- rubygems_version: 2.4.8
158
+ rubygems_version: 3.0.1
160
159
  signing_key:
161
160
  specification_version: 4
162
161
  summary: The best Pinboard API client
163
162
  test_files:
164
163
  - test/test_helper.rb
165
- - test/thumbtack/client_test.rb
166
- - test/thumbtack/integration/basic_adapter_test.rb
167
- - test/thumbtack/note_summary_test.rb
168
- - test/thumbtack/note_test.rb
169
- - test/thumbtack/notes_test.rb
170
- - test/thumbtack/post_test.rb
171
164
  - test/thumbtack/posts_test.rb
165
+ - test/thumbtack/note_summary_test.rb
166
+ - test/thumbtack/client_test.rb
172
167
  - test/thumbtack/specification_test.rb
173
- - test/thumbtack/suggestion_test.rb
174
- - test/thumbtack/tags_test.rb
168
+ - test/thumbtack/notes_test.rb
169
+ - test/thumbtack/types/time_test.rb
175
170
  - test/thumbtack/types/boolean_test.rb
171
+ - test/thumbtack/types/title_test.rb
172
+ - test/thumbtack/types/url_test.rb
176
173
  - test/thumbtack/types/date_test.rb
177
- - test/thumbtack/types/date_time_test.rb
178
174
  - test/thumbtack/types/identity_test.rb
179
- - test/thumbtack/types/integer_test.rb
180
175
  - test/thumbtack/types/md5_test.rb
181
176
  - test/thumbtack/types/tags_test.rb
182
177
  - test/thumbtack/types/text_test.rb
183
- - test/thumbtack/types/title_test.rb
184
- - test/thumbtack/types/url_test.rb
178
+ - test/thumbtack/types/integer_test.rb
179
+ - test/thumbtack/post_test.rb
180
+ - test/thumbtack/integration/basic_adapter_test.rb
181
+ - test/thumbtack/suggestion_test.rb
182
+ - test/thumbtack/tags_test.rb
183
+ - test/thumbtack/note_test.rb
185
184
  - test/thumbtack/user_test.rb
186
- has_rdoc:
@@ -1,33 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'test_helper'
4
-
5
- class DateTimeTest < Minitest::Test
6
- def test_validate
7
- assert_equal Types::DateTime, Types::DateTime.validate(::DateTime.now)
8
-
9
- assert_raises(ValidationError) do
10
- Types::DateTime.validate ::DateTime.new(0, 1, 1)
11
- end
12
-
13
- assert_raises(ValidationError) do
14
- Types::DateTime.validate ::DateTime.new(2101, 1, 1)
15
- end
16
- end
17
-
18
- def test_serialize
19
- assert_equal '2010-12-11T19:48:02Z',
20
- Types::DateTime.serialize(
21
- ::DateTime.new(2010, 12, 11, 19, 48, 2))
22
- end
23
-
24
- def test_deserialize
25
- assert_equal ::DateTime.new(2010, 12, 11, 19, 48, 2),
26
- Types::DateTime.deserialize('2010-12-11T19:48:02Z')
27
- end
28
-
29
- def test_deserialize_from_note
30
- assert_equal ::DateTime.new(2010, 12, 11, 19, 48, 2),
31
- Types::DateTime.deserialize_from_note('2010-12-11 19:48:02')
32
- end
33
- end