move-to-go 5.0.0 → 5.0.1
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/lib/move-to-go/model/coworker.rb +15 -1
- data/lib/move-to-go/model/rootmodel.rb +11 -2
- data/spec/coworker_spec.rb +36 -1
- data/spec/rootmodel_spec.rb +4 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3432a21214fd654ee6525aae7c3bed240d0edaff
|
4
|
+
data.tar.gz: 082ef1bb58a2655efc1b615bd327bce34e2647fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f96e72d111006eba2ec0916242eac531b0004dc8dcf12cb4a089f67266ffc9a1651ebdd1be3b0f041fda8907b51e2f23aff1b95b679e725aa90b309bea25cd6f
|
7
|
+
data.tar.gz: 7695fad6ccdb1da5be3bea3ee7903423f0eeebc8be4e391bafa2a5bfb0e346f7a736a2c3625817d5f564ce3f4f952cb12a44e962bd63a8d66405842a425c2f9e
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: utf-8
|
2
1
|
module MoveToGo
|
3
2
|
class Coworker < CanBecomeImmutable
|
4
3
|
include SerializeHelper
|
@@ -78,5 +77,20 @@ module MoveToGo
|
|
78
77
|
return "#{firstname}.#{lastname}@#{domain}"
|
79
78
|
end
|
80
79
|
|
80
|
+
def validate
|
81
|
+
error = String.new
|
82
|
+
|
83
|
+
if (@first_name.nil? || @first_name.empty?) &&
|
84
|
+
(@last_name.nil? || @last_name.empty?)
|
85
|
+
error = "A firstname or lastname is required for coworker.\n#{serialize()}"
|
86
|
+
end
|
87
|
+
|
88
|
+
if @email.nil? || @email.empty?
|
89
|
+
error = "#{error}\nAn email is required for coworker.\n"
|
90
|
+
end
|
91
|
+
|
92
|
+
return error
|
93
|
+
end
|
94
|
+
|
81
95
|
end
|
82
96
|
end
|
@@ -5,7 +5,7 @@ require 'securerandom'
|
|
5
5
|
require "progress"
|
6
6
|
|
7
7
|
module MoveToGo
|
8
|
-
# The root model for Go
|
8
|
+
# The root model for Move To Go. This class is the container for everything else.
|
9
9
|
class RootModel
|
10
10
|
# the migrator_coworker is a special coworker that is set as
|
11
11
|
# responsible for objects that requires a coworker, eg a history.
|
@@ -48,6 +48,7 @@ module MoveToGo
|
|
48
48
|
@migrator_coworker = Coworker.new
|
49
49
|
@migrator_coworker.integration_id = "migrator"
|
50
50
|
@migrator_coworker.first_name = "Migrator"
|
51
|
+
@migrator_coworker.email = "noreply-migrator@lime-go.com"
|
51
52
|
@coworkers[@migrator_coworker.integration_id] = @migrator_coworker
|
52
53
|
@deals = {}
|
53
54
|
@histories = {}
|
@@ -474,6 +475,14 @@ module MoveToGo
|
|
474
475
|
errors = String.new
|
475
476
|
warnings = String.new
|
476
477
|
|
478
|
+
@coworkers.each do |key, coworker|
|
479
|
+
validation_mesage = coworker.validate
|
480
|
+
|
481
|
+
if !validation_mesage.empty?
|
482
|
+
errors = "#{errors}\n#{validation_mesage}"
|
483
|
+
end
|
484
|
+
end
|
485
|
+
|
477
486
|
@organizations.each do |k, o|
|
478
487
|
validation_message = o.validate()
|
479
488
|
|
@@ -481,7 +490,7 @@ module MoveToGo
|
|
481
490
|
errors = "#{errors}\n#{validation_message}"
|
482
491
|
end
|
483
492
|
end
|
484
|
-
|
493
|
+
|
485
494
|
converter_deal_statuses = @settings.deal.statuses.map {|status| status.label} if @settings.deal != nil
|
486
495
|
@deals.each do |key, deal|
|
487
496
|
error, warning = deal.validate converter_deal_statuses
|
data/spec/coworker_spec.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: utf-8
|
2
1
|
require "spec_helper"
|
3
2
|
require 'move-to-go'
|
4
3
|
|
@@ -7,6 +6,42 @@ describe "Coworker" do
|
|
7
6
|
MoveToGo::Coworker.new
|
8
7
|
}
|
9
8
|
|
9
|
+
describe "coworker" do
|
10
|
+
it "must have a first name and email" do
|
11
|
+
# given
|
12
|
+
coworker.first_name = "billy"
|
13
|
+
coworker.email = "billy@movetogo.com"
|
14
|
+
|
15
|
+
# when, then
|
16
|
+
coworker.validate.should eq ""
|
17
|
+
end
|
18
|
+
|
19
|
+
it "must have a last name and email" do
|
20
|
+
# given
|
21
|
+
coworker.first_name = "bob"
|
22
|
+
coworker.email = "billy@movetogo.com"
|
23
|
+
|
24
|
+
# when, then
|
25
|
+
coworker.validate.should eq ""
|
26
|
+
end
|
27
|
+
|
28
|
+
it "must have either first or last name and email" do
|
29
|
+
# given
|
30
|
+
coworker.email = "billy@movetogo.com"
|
31
|
+
|
32
|
+
# when, then
|
33
|
+
coworker.validate.length.should > 1
|
34
|
+
end
|
35
|
+
|
36
|
+
it "must have email" do
|
37
|
+
# given
|
38
|
+
coworker.first_name = "billy"
|
39
|
+
|
40
|
+
# when, then
|
41
|
+
coworker.validate.length.should > 1
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
10
45
|
describe "parse_name_to_firstname_lastname_se" do
|
11
46
|
it "can parse 'Kalle Nilsson' into firstname 'Kalle' and lastname 'Nilsson'" do
|
12
47
|
coworker.parse_name_to_firstname_lastname_se 'Kalle Nilsson'
|
data/spec/rootmodel_spec.rb
CHANGED
@@ -11,6 +11,10 @@ describe "RootModel" do
|
|
11
11
|
rootmodel.coworkers.length.should eq 1
|
12
12
|
end
|
13
13
|
|
14
|
+
it "will contain a migration coworker with email" do
|
15
|
+
rootmodel.find_coworker_by_integration_id("migrator").email.length.should > 1
|
16
|
+
end
|
17
|
+
|
14
18
|
it "can add a coworker from a new coworker" do
|
15
19
|
# given
|
16
20
|
coworker = MoveToGo::Coworker.new
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: move-to-go
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.
|
4
|
+
version: 5.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Petter Sandholdt
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2016-08-
|
16
|
+
date: 2016-08-24 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: iso_country_codes
|
@@ -169,9 +169,9 @@ dependencies:
|
|
169
169
|
- - ">="
|
170
170
|
- !ruby/object:Gem::Version
|
171
171
|
version: '0'
|
172
|
-
description: " move-to-go is an
|
173
|
-
input source and create zip-files that LIME Go likes. \n move-to-go has some
|
174
|
-
sources that makes will help you migrate your data.\n"
|
172
|
+
description: " move-to-go is an migration tool for Lime Go. It can take virtually
|
173
|
+
any input source and create zip-files that LIME Go likes. \n move-to-go has some
|
174
|
+
predefined sources that makes will help you migrate your data.\n"
|
175
175
|
email: support@lundalogik.se
|
176
176
|
executables:
|
177
177
|
- move-to-go
|
@@ -333,7 +333,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
333
333
|
version: '0'
|
334
334
|
requirements: []
|
335
335
|
rubyforge_project:
|
336
|
-
rubygems_version: 2.
|
336
|
+
rubygems_version: 2.4.6
|
337
337
|
signing_key:
|
338
338
|
specification_version: 4
|
339
339
|
summary: Tool to generate Lime Go zip import files
|