stackone_migration 1.4.8 → 1.5.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 54502eb2343658c7853369b1629be75f8020d32f9287192037d60f657577f2ef
4
- data.tar.gz: c3594fe6cfe8ef43a49f195e748cacf02f3313271fa1606bad87a96e18a79c16
3
+ metadata.gz: 461c790935a1b46352c204f8b916739fb2e7d7a555dcf535dcf5148d26bc825a
4
+ data.tar.gz: 9815b79fe59625b69336a64a54fd072bb1637be56e74b9fc109406edfdc42e77
5
5
  SHA512:
6
- metadata.gz: b7ac0788a52ae2968b3380f661a20962ae2338ac8bc3bb47d3922d917f4b2963a57ed664aec7039a4b292c0f500e72b354a70a7620a510a8405f81c6fb3d7b87
7
- data.tar.gz: 072eef5853bd9ad549a4884b81e5ff6c69fafcdc831afc234fd94cc202299a77935ce806e032dd4811207731fc830782710ebb84055cd2e838e827a39c1ce779
6
+ metadata.gz: 99771455259f2bd8e73495eaf0fb09a981b270e5512e4b9c59183e868316204248341d638c9f5243511268d4ac19453fa4ba342aa6baddabb693806d110db6e9
7
+ data.tar.gz: 9be418eb218194e7da547029ec4e8fb0edf5ff4bcc2e8049c7bd210dd68e473cd610e24ec5695ed5510148819430d658910eb55386bee4d185b0106d00a9bfb6
data/Gemfile CHANGED
@@ -10,5 +10,5 @@ group :development, :test do
10
10
  gem 'rubocop', '~> 1.48.0'
11
11
  end
12
12
 
13
- gem 'merge_hris_client', '~> 3.0'
14
- gem 'stackone_hris_client', '~> 1.6.0'
13
+ gem 'merge_hris_client', '3.2.0'
14
+ gem 'stackone_hris_client', '~> 1.7.0'
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- stackone_migration (1.4.8)
5
- merge_hris_client (~> 3.0)
6
- stackone_hris_client (~> 1.6.0)
4
+ stackone_migration (1.5.0)
5
+ merge_hris_client (= 3.2.0)
6
+ stackone_hris_client (~> 1.7.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
@@ -16,7 +16,7 @@ GEM
16
16
  ffi (>= 1.15.0)
17
17
  ffi (1.15.5)
18
18
  json (2.6.3)
19
- merge_hris_client (3.0.0)
19
+ merge_hris_client (3.2.0)
20
20
  typhoeus (~> 1.0, >= 1.0.1)
21
21
  method_source (1.0.0)
22
22
  parallel (1.22.1)
@@ -58,7 +58,7 @@ GEM
58
58
  rubocop-ast (1.27.0)
59
59
  parser (>= 3.2.1.0)
60
60
  ruby-progressbar (1.13.0)
61
- stackone_hris_client (1.6.0)
61
+ stackone_hris_client (1.7.0)
62
62
  typhoeus (~> 1.0, >= 1.0.1)
63
63
  typhoeus (1.4.0)
64
64
  ethon (>= 0.9.0)
@@ -68,13 +68,13 @@ PLATFORMS
68
68
  arm64-darwin-22
69
69
 
70
70
  DEPENDENCIES
71
- merge_hris_client (~> 3.0)
71
+ merge_hris_client (= 3.2.0)
72
72
  pry-byebug
73
73
  rake (~> 13.0.1)
74
74
  rspec (~> 3.6, >= 3.6.0)
75
75
  rubocop (~> 1.48.0)
76
- stackone_hris_client (~> 1.6.0)
76
+ stackone_hris_client (~> 1.7.0)
77
77
  stackone_migration!
78
78
 
79
79
  BUNDLED WITH
80
- 2.4.7
80
+ 2.4.13
@@ -6,10 +6,10 @@ module MergeHRISClient
6
6
 
7
7
  def link_token_create(end_user_details_request, opts = {})
8
8
  return original_link_token_create(end_user_details_request, opts) if opts.key?(:use_merge) && opts[:use_merge]
9
-
10
9
  connect_session_create_request = StackOneHRIS::ConnectSessionCreate.new(
11
10
  :origin_owner_id => end_user_details_request.end_user_origin_id,
12
- :origin_owner_name => end_user_details_request.end_user_email_address,
11
+ :origin_owner_name => end_user_details_request.end_user_organization_name || end_user_details_request.end_user_email_address,
12
+ :origin_username => end_user_details_request.end_user_email_address,
13
13
  :provider => StackOneMigration::ProviderMapper.map_to_stackone_provider_name(end_user_details_request.integration),
14
14
  :categories => end_user_details_request.categories,
15
15
  )
@@ -108,7 +108,7 @@ module StackOneMigration
108
108
  :ethnicity => build_merge_enum(MergeHRISClient::EthnicityEnum, ethnicity_enum_hash, employee.ethnicity),
109
109
  :marital_status => build_merge_enum(MergeHRISClient::MaritalStatusEnum, marital_status_enum_hash, employee.marital_status),
110
110
  :hire_date => employee.hire_date,
111
- :employment_status => MergeHRISClient::EmploymentStatusEnum.build_from_hash(map_enum(employment_status_enum_hash, employee.employment_status)),
111
+ :employment_status => build_merge_enum(MergeHRISClient::EmploymentStatusEnum, employment_status_enum_hash, employee.employment_status),
112
112
  :termination_date => employee.termination_date,
113
113
  :home_location => map_to_location_model(employee.home_location),
114
114
  :work_location => map_to_location_model(employee.work_location),
@@ -144,14 +144,14 @@ module StackOneMigration
144
144
  :pay_frequency => build_merge_enum(MergeHRISClient::PayFrequencyEnum, pay_frequency_enum_hash, employment.pay_frequency),
145
145
  :pay_currency => MergeHRISClient::PayCurrencyEnum.build_from_hash(employment.pay_currency&.to_s&.upcase),
146
146
  :effective_date => employment.effective_date,
147
- :employment_type => MergeHRISClient::EmploymentTypeEnum.build_from_hash(map_enum(employment_type_enum_hash, employment.employment_type)),
147
+ :employment_type => build_merge_enum(MergeHRISClient::EmploymentTypeEnum, employment_type_enum_hash, employment.employment_type),
148
148
  )
149
149
  end
150
150
 
151
151
  def self.map_employments(employments)
152
- if employments.nil?
152
+ if employments.nil?
153
153
  mapped_results = []
154
- else
154
+ else
155
155
  mapped_results = employments.map do |employment|
156
156
  map_to_employment_model(employment)
157
157
  end
@@ -167,13 +167,13 @@ module StackOneMigration
167
167
  :_next => nil,
168
168
  :results => mapped_results,
169
169
  :previous => nil
170
- )
170
+ )
171
171
  end
172
172
 
173
173
  def self.map_to_paginated_employee_list_model(paginated_employees)
174
- if paginated_employees&.data.nil?
174
+ if paginated_employees&.data.nil?
175
175
  mapped_results = []
176
- else
176
+ else
177
177
  mapped_results = paginated_employees.data.map do |employee|
178
178
  map_to_employee_model(employee)
179
179
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module StackOneMigration
4
- VERSION = '1.4.8'
4
+ VERSION = '1.5.0'
5
5
  end
@@ -4,7 +4,7 @@ require 'spec_helper'
4
4
 
5
5
  describe MergeHRISClient::LinkTokenApi do
6
6
  subject { MergeHRISClient::LinkTokenApi.new }
7
-
7
+
8
8
  context '.link_token_create' do
9
9
  context 'when the the key to use merge is not present in the options' do
10
10
  it 'returns a merge link token object' do
@@ -49,19 +49,21 @@ describe MergeHRISClient::LinkTokenApi do
49
49
  end_user_details_request = MergeHRISClient::EndUserDetailsRequest.new(
50
50
  :end_user_email_address => 'tos@potig.er',
51
51
  :end_user_origin_id => 'user_origin_id',
52
+ :end_user_organization_name => 'sample org',
52
53
  :categories => ['hris'],
53
54
  :integration => 'sage-hr',
54
55
  )
55
56
 
56
57
  expected_request = StackOneHRIS::ConnectSessionCreate.new(
57
58
  :origin_owner_id => 'user_origin_id',
58
- :origin_owner_name => 'tos@potig.er',
59
+ :origin_username => 'tos@potig.er',
60
+ :origin_owner_name => 'sample org',
59
61
  :provider => 'sage',
60
62
  :categories => ['hris'],
61
63
  )
62
64
 
63
65
  expect(connect_sessions_api_double).to receive(:connect_sessions_create).with(expected_request)
64
-
66
+
65
67
  result = subject.link_token_create(end_user_details_request)
66
68
  end
67
69
  end
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  describe StackOneMigration::EmployeesMapper do
6
- let(:sample_employee) {
6
+ let(:sample_employee) {
7
7
  StackOneHRIS::Employee.new(
8
8
  :id => '123',
9
9
  :first_name => 'Jean',
@@ -24,7 +24,7 @@ describe StackOneMigration::EmployeesMapper do
24
24
  :work_phone_number => '(456) 787-3508',
25
25
  :job_title => 'Manager',
26
26
  :department => 'Human Resources',
27
- :home_location =>
27
+ :home_location =>
28
28
  StackOneHRIS::Location.new(
29
29
  :phone_number => "(456) 787-3508",
30
30
  :street_1 => "123 Main' St",
@@ -37,19 +37,20 @@ describe StackOneMigration::EmployeesMapper do
37
37
  ),
38
38
  :work_location => nil,
39
39
  :employments => [
40
- StackOneHRIS::Employment.new(
40
+ StackOneHRIS::Employment.new(
41
41
  :job_title => 'Manager',
42
42
  :pay_rate => 100000,
43
43
  :pay_period => StackOneHRIS::PayPeriodEnum.new(value: 'year', source_value: 'Year'),
44
44
  :pay_frequency => StackOneHRIS::PayFrequencyEnum.new(value: 'weekly', source_value: 'Weekly'),
45
45
  :pay_currency => 'USD',
46
46
  :effective_date => '2018-01-01',
47
- :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full time'),
47
+ :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'contractor', source_value: 'Contractor'),
48
+ :employment_contract_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full time'),
48
49
  )
49
50
  ]
50
51
  )
51
52
  }
52
- let(:other_sample_employee) {
53
+ let(:other_sample_employee) {
53
54
  StackOneHRIS::Employee.new(
54
55
  :id => '456',
55
56
  :first_name => 'Allie',
@@ -65,9 +66,9 @@ describe StackOneMigration::EmployeesMapper do
65
66
  :work_phone_number => '(456) 787-3508',
66
67
  :job_title => 'Manager',
67
68
  :department => 'Human Resources',
68
- )
69
+ )
69
70
  }
70
- let(:another_sample_employee) {
71
+ let(:another_sample_employee) {
71
72
  StackOneHRIS::Employee.new(
72
73
  :id => '456',
73
74
  :first_name => 'Allie',
@@ -84,9 +85,9 @@ describe StackOneMigration::EmployeesMapper do
84
85
  :personal_phone_number => '(715) 658-9486',
85
86
  :job_title => 'Manager',
86
87
  :department => 'Human Resources',
87
- )
88
+ )
88
89
  }
89
- let(:employee_with_no_phone_number_and_avatar) {
90
+ let(:employee_with_no_phone_number_and_avatar) {
90
91
  StackOneHRIS::Employee.new(
91
92
  :id => '456',
92
93
  :first_name => 'Allie',
@@ -101,7 +102,7 @@ describe StackOneMigration::EmployeesMapper do
101
102
  :manager_id => '417b5e62-e011-5e69-a906-0aefade9ded1',
102
103
  :job_title => 'Manager',
103
104
  :department => 'Human Resources',
104
- )
105
+ )
105
106
  }
106
107
 
107
108
  context '.map_to_employee_model' do
@@ -133,7 +134,7 @@ describe StackOneMigration::EmployeesMapper do
133
134
  expect(target_model.gender).to have_attributes(:value => 'FEMALE', :raw_value => 'Female')
134
135
  expect(target_model.ethnicity).to have_attributes(:value => 'WHITE', :raw_value => 'White')
135
136
  expect(target_model.marital_status).to have_attributes(:value => 'MARRIED_FILING_JOINTLY', :raw_value => 'Married')
136
- expect(target_model.employment_status).to have_attributes(:value => 'INACTIVE', :raw_value => 'INACTIVE')
137
+ expect(target_model.employment_status).to have_attributes(:value => 'INACTIVE', :raw_value => 'Terminated')
137
138
  end
138
139
 
139
140
  context 'when the employee record has the avatar base64 field instead of url' do
@@ -299,14 +300,15 @@ describe StackOneMigration::EmployeesMapper do
299
300
 
300
301
  context '.map_to_employment_model' do
301
302
  it 'maps a employeement to correct class' do
302
- sample_employment = StackOneHRIS::Employment.new(
303
+ sample_employment = StackOneHRIS::Employment.new(
303
304
  :job_title => 'Manager',
304
305
  :pay_rate => 100000,
305
306
  :pay_period => StackOneHRIS::PayPeriodEnum.new(value: 'year', source_value: 'Year'),
306
307
  :pay_frequency => StackOneHRIS::PayFrequencyEnum.new(value: 'weekly', source_value: 'Weekly'),
307
308
  :pay_currency => 'USD',
308
309
  :effective_date => '2018-01-01',
309
- :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full time'),
310
+ :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'contractor', source_value: 'Contractor'),
311
+ :employment_contract_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full Time'),
310
312
  )
311
313
 
312
314
  target_model = described_class.map_to_employment_model(sample_employment)
@@ -315,14 +317,15 @@ describe StackOneMigration::EmployeesMapper do
315
317
  end
316
318
 
317
319
  it 'maps a employeement with the right attributes' do
318
- sample_employment = StackOneHRIS::Employment.new(
320
+ sample_employment = StackOneHRIS::Employment.new(
319
321
  :job_title => 'Manager',
320
322
  :pay_rate => 100000,
321
323
  :pay_period => StackOneHRIS::PayPeriodEnum.new(value: 'year', source_value: 'Year'),
322
324
  :pay_frequency => StackOneHRIS::PayFrequencyEnum.new(value: 'weekly', source_value: 'Weekly'),
323
325
  :pay_currency => 'USD',
324
326
  :effective_date => '2018-01-01',
325
- :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full time'),
327
+ :employment_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'contractor', source_value: 'Contractor'),
328
+ :employment_contract_type => StackOneHRIS::EmploymentTypeEnum.new(value: 'full_time', source_value: 'Full time'),
326
329
  )
327
330
 
328
331
  target_model = described_class.map_to_employment_model(sample_employment)
@@ -333,7 +336,7 @@ describe StackOneMigration::EmployeesMapper do
333
336
  expect(target_model.pay_frequency).to have_attributes(:value => 'WEEKLY', :raw_value => 'Weekly')
334
337
  expect(target_model.pay_currency).to have_attributes(:value => 'USD', :raw_value => 'USD')
335
338
  expect(target_model.effective_date).to eq('2018-01-01')
336
- expect(target_model.employment_type).to have_attributes(:value => 'FULL_TIME', :raw_value => 'FULL_TIME')
339
+ expect(target_model.employment_type).to have_attributes(:value => 'CONTRACTOR', :raw_value => 'Contractor')
337
340
  end
338
341
  end
339
342
 
@@ -378,7 +381,7 @@ describe StackOneMigration::EmployeesMapper do
378
381
 
379
382
  expect(target_model).to be_a(MergeHRISClient::PaginatedEmployeeList)
380
383
  end
381
-
384
+
382
385
 
383
386
  it 'maps the employee list attributes with the right structure to the target class' do
384
387
  stackone_paginated_employees = StackOneHRIS::EmployeesPaginated.new(
@@ -15,8 +15,8 @@ Gem::Specification.new do |s|
15
15
  s.license = 'MIT'
16
16
  s.required_ruby_version = '>= 2.7'
17
17
 
18
- s.add_runtime_dependency 'merge_hris_client', '~> 3.0'
19
- s.add_runtime_dependency 'stackone_hris_client', '~> 1.6.0'
18
+ s.add_runtime_dependency 'merge_hris_client', '3.2.0'
19
+ s.add_runtime_dependency 'stackone_hris_client', '~> 1.7.0'
20
20
 
21
21
  s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
22
22
 
metadata CHANGED
@@ -1,43 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stackone_migration
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.8
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - StackOne
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-04 00:00:00.000000000 Z
11
+ date: 2023-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: merge_hris_client
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: '3.0'
19
+ version: 3.2.0
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: '3.0'
26
+ version: 3.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: stackone_hris_client
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.6.0
33
+ version: 1.7.0
34
34
  type: :runtime
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: 1.6.0
40
+ version: 1.7.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement