arbetsformedlingen 0.5.0 → 0.6.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/.rubocop.yml +6 -0
- data/.ruby-style-guide.yml +270 -0
- data/.travis.yml +0 -1
- data/CHANGELOG.md +12 -0
- data/Gemfile +2 -0
- data/LICENSE.txt +1 -1
- data/README.md +1 -1
- data/Rakefile +2 -0
- data/arbetsformedlingen.gemspec +10 -9
- data/bin/console +1 -0
- data/lib/arbetsformedlingen/api/client.rb +48 -30
- data/lib/arbetsformedlingen/api/ledigtarbete_client.rb +6 -1
- data/lib/arbetsformedlingen/api/matchning_client.rb +16 -10
- data/lib/arbetsformedlingen/api/request.rb +10 -13
- data/lib/arbetsformedlingen/api/response.rb +71 -0
- data/lib/arbetsformedlingen/api/results/ad_result.rb +36 -18
- data/lib/arbetsformedlingen/api/results/matchning_result.rb +42 -3
- data/lib/arbetsformedlingen/api/results/soklista_result.rb +16 -2
- data/lib/arbetsformedlingen/api/soap_request.rb +11 -10
- data/lib/arbetsformedlingen/api/values/ad_result_values.rb +6 -1
- data/lib/arbetsformedlingen/api/values/create_ad_page.rb +3 -1
- data/lib/arbetsformedlingen/api/values/matchning_result_values.rb +9 -1
- data/lib/arbetsformedlingen/api/values/soklista_values.rb +17 -1
- data/lib/arbetsformedlingen/api/ws_occupation_client.rb +26 -1
- data/lib/arbetsformedlingen/codes/country_code.rb +3 -1
- data/lib/arbetsformedlingen/codes/drivers_license_code.rb +6 -3
- data/lib/arbetsformedlingen/codes/experience_required_code.rb +3 -1
- data/lib/arbetsformedlingen/codes/municipality_code.rb +3 -1
- data/lib/arbetsformedlingen/codes/occupation_code.rb +3 -1
- data/lib/arbetsformedlingen/codes/salary_type_code.rb +3 -1
- data/lib/arbetsformedlingen/key_struct.rb +5 -3
- data/lib/arbetsformedlingen/models/application_method.rb +3 -1
- data/lib/arbetsformedlingen/models/company.rb +2 -2
- data/lib/arbetsformedlingen/models/document.rb +4 -2
- data/lib/arbetsformedlingen/models/dry/predicates.rb +2 -0
- data/lib/arbetsformedlingen/models/dry/types.rb +5 -3
- data/lib/arbetsformedlingen/models/model.rb +2 -0
- data/lib/arbetsformedlingen/models/packet.rb +3 -1
- data/lib/arbetsformedlingen/models/packet_xml_builder.rb +8 -3
- data/lib/arbetsformedlingen/models/position.rb +5 -3
- data/lib/arbetsformedlingen/models/publication.rb +3 -1
- data/lib/arbetsformedlingen/models/qualification.rb +3 -1
- data/lib/arbetsformedlingen/models/salary.rb +3 -1
- data/lib/arbetsformedlingen/models/schedule.rb +4 -2
- data/lib/arbetsformedlingen/soap_builder.rb +3 -1
- data/lib/arbetsformedlingen/version.rb +3 -1
- metadata +43 -25
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Arbetsformedlingen
|
2
4
|
PositionSchema = Dry::Validation.Params do
|
3
5
|
configure do
|
4
6
|
config.type_specs = true
|
5
|
-
config.messages_file = File.expand_path('
|
7
|
+
config.messages_file = File.expand_path('../../../config/locales/errors.yml', __dir__) # rubocop:disable Metrics/LineLength
|
6
8
|
|
7
9
|
predicates(Predicates)
|
8
10
|
end
|
@@ -20,7 +22,7 @@ module Arbetsformedlingen
|
|
20
22
|
end
|
21
23
|
|
22
24
|
class Position < Model
|
23
|
-
def initialize(attributes:, company:, schedule:, salary:, qualifications:, application_method:)
|
25
|
+
def initialize(attributes:, company:, schedule:, salary:, qualifications:, application_method:) # rubocop:disable Metrics/LineLength
|
24
26
|
hash = attributes
|
25
27
|
@company = company
|
26
28
|
@schedule = schedule
|
@@ -49,7 +51,7 @@ module Arbetsformedlingen
|
|
49
51
|
[
|
50
52
|
address.fetch(:street),
|
51
53
|
address.fetch(:zip),
|
52
|
-
address[:city]
|
54
|
+
address[:city],
|
53
55
|
].compact.join(', ')
|
54
56
|
end
|
55
57
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Arbetsformedlingen
|
2
4
|
PublicationSchema = Dry::Validation.Params do
|
3
5
|
configure do
|
4
6
|
config.type_specs = true
|
5
|
-
config.messages_file = File.expand_path('
|
7
|
+
config.messages_file = File.expand_path('../../../config/locales/errors.yml', __dir__)
|
6
8
|
|
7
9
|
predicates(Predicates)
|
8
10
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Arbetsformedlingen
|
2
4
|
QualificationSchema = Dry::Validation.Params do
|
3
5
|
configure do
|
4
6
|
config.type_specs = true
|
5
|
-
config.messages_file = File.expand_path('
|
7
|
+
config.messages_file = File.expand_path('../../../config/locales/errors.yml', __dir__)
|
6
8
|
|
7
9
|
predicates(Predicates)
|
8
10
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Arbetsformedlingen
|
2
4
|
SalarySchema = Dry::Validation.Params do
|
3
5
|
configure do
|
4
6
|
config.type_specs = true
|
5
|
-
config.messages_file = File.expand_path('
|
7
|
+
config.messages_file = File.expand_path('../../../config/locales/errors.yml', __dir__)
|
6
8
|
|
7
9
|
predicates(Predicates)
|
8
10
|
end
|
@@ -1,8 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module Arbetsformedlingen
|
2
4
|
ScheduleSchema = Dry::Validation.Params do
|
3
5
|
configure do
|
4
6
|
config.type_specs = true
|
5
|
-
config.messages_file = File.expand_path('
|
7
|
+
config.messages_file = File.expand_path('../../../config/locales/errors.yml', __dir__)
|
6
8
|
|
7
9
|
predicates(Predicates)
|
8
10
|
end
|
@@ -22,7 +24,7 @@ module Arbetsformedlingen
|
|
22
24
|
from_11_days_to_3_months: 7,
|
23
25
|
from_june_to_august: 4, # summer months (June to August)
|
24
26
|
from_3_months_to_6_months: 3,
|
25
|
-
from_6_months_to_longer: 2
|
27
|
+
from_6_months_to_longer: 2,
|
26
28
|
}.freeze
|
27
29
|
|
28
30
|
def initialize(hash)
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'builder'
|
2
4
|
|
3
5
|
module Arbetsformedlingen
|
@@ -5,7 +7,7 @@ module Arbetsformedlingen
|
|
5
7
|
SOAP_ATTRIBUTES = {
|
6
8
|
'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',
|
7
9
|
'xmlns:xsd' => 'http://www.w3.org/2001/XMLSchema',
|
8
|
-
'xmlns:soap12' => 'http://www.w3.org/2003/05/soap-envelope'
|
10
|
+
'xmlns:soap12' => 'http://www.w3.org/2003/05/soap-envelope',
|
9
11
|
}.freeze
|
10
12
|
|
11
13
|
def self.wrap(&block)
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arbetsformedlingen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jacob Burenstam
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-09-
|
11
|
+
date: 2018-09-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: builder
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '3.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '3.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: dry-validation
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -39,47 +39,61 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0.12'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: httparty
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '0.13'
|
48
48
|
type: :runtime
|
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: '
|
54
|
+
version: '0.13'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: bundler
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '1.
|
61
|
+
version: '1.14'
|
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: '1.
|
68
|
+
version: '1.14'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: byebug
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: nokogiri
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
87
|
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version: '1.
|
89
|
+
version: '1.8'
|
76
90
|
type: :development
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
94
|
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '1.
|
96
|
+
version: '1.8'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rake
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,28 +114,28 @@ dependencies:
|
|
100
114
|
requirements:
|
101
115
|
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version: '3.
|
117
|
+
version: '3.8'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
122
|
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
|
-
version: '3.
|
124
|
+
version: '3.8'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
126
|
+
name: rubocop
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
129
|
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
131
|
+
version: '0.59'
|
118
132
|
type: :development
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
136
|
- - "~>"
|
123
137
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
138
|
+
version: '0.59'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: vcr
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -137,20 +151,21 @@ dependencies:
|
|
137
151
|
- !ruby/object:Gem::Version
|
138
152
|
version: '3.0'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
154
|
+
name: webmock
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- - "
|
157
|
+
- - "~>"
|
144
158
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
159
|
+
version: '3.1'
|
146
160
|
type: :development
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- - "
|
164
|
+
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
|
-
version: '
|
153
|
-
description: Arbetsförmedlingen API client (Swedish Public Employment Service)
|
166
|
+
version: '3.1'
|
167
|
+
description: Arbetsförmedlingen API client (Swedish Public Employment Service). Post
|
168
|
+
job ads, Platsannons (ads) API client and WSOccupation SOAP API client.
|
154
169
|
email:
|
155
170
|
- burenstam@gmail.com
|
156
171
|
executables: []
|
@@ -159,6 +174,8 @@ extra_rdoc_files: []
|
|
159
174
|
files:
|
160
175
|
- ".gitignore"
|
161
176
|
- ".rspec"
|
177
|
+
- ".rubocop.yml"
|
178
|
+
- ".ruby-style-guide.yml"
|
162
179
|
- ".travis.yml"
|
163
180
|
- CHANGELOG.md
|
164
181
|
- Gemfile
|
@@ -177,6 +194,7 @@ files:
|
|
177
194
|
- lib/arbetsformedlingen/api/ledigtarbete_client.rb
|
178
195
|
- lib/arbetsformedlingen/api/matchning_client.rb
|
179
196
|
- lib/arbetsformedlingen/api/request.rb
|
197
|
+
- lib/arbetsformedlingen/api/response.rb
|
180
198
|
- lib/arbetsformedlingen/api/results/ad_result.rb
|
181
199
|
- lib/arbetsformedlingen/api/results/matchning_result.rb
|
182
200
|
- lib/arbetsformedlingen/api/results/soklista_result.rb
|