tdc 0.3.0 → 0.3.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/.rubocop.yml +43 -0
- data/CHANGELOG.md +4 -0
- data/lib/tdc/generators/definition_resolvable.rb +6 -17
- data/lib/tdc/version.rb +1 -1
- data/tdc.gemspec +2 -2
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 46a2a39e062ccd48c5634a1c0f2fb07e5705268ceb930bb0dc4b41127683406b
|
4
|
+
data.tar.gz: 9ea9e2f9ddf8bb1696151426ab584a734544ed51c9dac67d2e153293707b522b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15cab57dccd6be42ab9f1de3782db7df1f29c33f20196aa40ba4b7cfaf36fe4a30a84ee7d8b0b4f38dbccf6afd24b6580b21fe1c9a6afa2d78eae8852eac889c
|
7
|
+
data.tar.gz: e7182a480f845f3e196354c2d170df24f9a762f57db3993c9ca8e266425d01637960f588ae938484a9731e99d7b5bc9f71b1921773b6d3450f02d681515d89fd
|
data/.rubocop.yml
CHANGED
@@ -17,6 +17,16 @@ Layout/MultilineMethodCallBraceLayout:
|
|
17
17
|
Layout/SpaceAroundMethodCallOperator:
|
18
18
|
Enabled: true
|
19
19
|
|
20
|
+
Lint/DeprecatedOpenSSLConstant:
|
21
|
+
Enabled: true
|
22
|
+
|
23
|
+
Lint/DuplicateElsifCondition:
|
24
|
+
Enabled: true
|
25
|
+
|
26
|
+
Lint/MixedRegexpCaptureTypes:
|
27
|
+
Enabled: true
|
28
|
+
|
29
|
+
|
20
30
|
Lint/RaiseException:
|
21
31
|
Enabled: true
|
22
32
|
|
@@ -59,6 +69,15 @@ RSpec/MultipleExpectations:
|
|
59
69
|
RSpec/SubjectStub:
|
60
70
|
Enabled: false
|
61
71
|
|
72
|
+
Style/AccessorGrouping:
|
73
|
+
Enabled: true
|
74
|
+
|
75
|
+
Style/ArrayCoercion:
|
76
|
+
Enabled: true
|
77
|
+
|
78
|
+
Style/BisectedAttrAccessor:
|
79
|
+
Enabled: true
|
80
|
+
|
62
81
|
Style/BlockDelimiters:
|
63
82
|
Enabled: true
|
64
83
|
EnforcedStyle: line_count_based
|
@@ -66,6 +85,9 @@ Style/BlockDelimiters:
|
|
66
85
|
- 'let'
|
67
86
|
- 'subject'
|
68
87
|
|
88
|
+
Style/CaseLikeIf:
|
89
|
+
Enabled: true
|
90
|
+
|
69
91
|
Style/Documentation:
|
70
92
|
Enabled: false
|
71
93
|
|
@@ -79,9 +101,15 @@ Style/ExponentialNotation:
|
|
79
101
|
Style/FrozenStringLiteralComment:
|
80
102
|
Enabled: false
|
81
103
|
|
104
|
+
Style/HashAsLastArrayItem:
|
105
|
+
Enabled: true
|
106
|
+
|
82
107
|
Style/HashEachMethods:
|
83
108
|
Enabled: true
|
84
109
|
|
110
|
+
Style/HashLikeCase:
|
111
|
+
Enabled: true
|
112
|
+
|
85
113
|
Style/HashTransformKeys:
|
86
114
|
Enabled: true
|
87
115
|
|
@@ -93,6 +121,21 @@ Style/HashSyntax:
|
|
93
121
|
Exclude:
|
94
122
|
- 'Rakefile'
|
95
123
|
|
124
|
+
Style/RedundantAssignment:
|
125
|
+
Enabled: true
|
126
|
+
|
127
|
+
Style/RedundantFetchBlock:
|
128
|
+
Enabled: true
|
129
|
+
|
130
|
+
Style/RedundantFileExtensionInRequire:
|
131
|
+
Enabled: true
|
132
|
+
|
133
|
+
Style/RedundantRegexpCharacterClass:
|
134
|
+
Enabled: true
|
135
|
+
|
136
|
+
Style/RedundantRegexpEscape:
|
137
|
+
Enabled: true
|
138
|
+
|
96
139
|
# No need to mention StandardError.
|
97
140
|
Style/RescueStandardError:
|
98
141
|
EnforcedStyle: implicit
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
6
6
|
|
7
7
|
## [Unreleased]
|
8
8
|
|
9
|
+
## [0.3.1] - 2020-07-25
|
10
|
+
|
11
|
+
- Support DefinitionResolver instance registration
|
12
|
+
|
9
13
|
## [0.3.0] - 2020-07-19
|
10
14
|
|
11
15
|
- Introduce the DefinitionResolver abstraction
|
@@ -2,7 +2,7 @@ module Tdc
|
|
2
2
|
module Generators
|
3
3
|
#
|
4
4
|
# Knows how to resolve attribute values in an instance definition. The attribute value will be replaced
|
5
|
-
# by the result of invoking the
|
5
|
+
# by the result of invoking the registered resolver.
|
6
6
|
#
|
7
7
|
# The resolve_tag class macro is provided for generators to define tag resolution. The test data definition
|
8
8
|
# YAML file has attribute values than contain a catalog entry tag.
|
@@ -14,18 +14,9 @@ module Tdc
|
|
14
14
|
#
|
15
15
|
# resolve_tag key: :subcomponent, source: "item_master.items"
|
16
16
|
#
|
17
|
-
# The
|
18
|
-
# definition YAML file has attribute values than contain an arbitrary
|
19
|
-
# an instance of an object returned by the specified resolver.
|
20
|
-
#
|
21
|
-
# Example:
|
22
|
-
#
|
23
|
-
# Suppose a particular instance definition contained { pallet_number: P0001 } then a generator could resolve
|
24
|
-
# the pallet_number to a pallet instance by defining:
|
25
|
-
#
|
26
|
-
# resolve_definition :pallet_number, to: :pallet_id, resolver: "TestDataCatalog::Resolvers::PalletNumberResolver"
|
27
|
-
#
|
28
|
-
# The PalletNumberResolver class inherits from Tdc::DefinitionResolvers::DefinitionResolver.
|
17
|
+
# The register_definition_resolver class macro is provided for generators to define and register their own
|
18
|
+
# definition resolvers. The test data definition YAML file has attribute values than contain an arbitrary
|
19
|
+
# value that will typically be replaced by an instance of an object returned by the specified resolver.
|
29
20
|
#
|
30
21
|
module DefinitionResolvable
|
31
22
|
extend ActiveSupport::Concern
|
@@ -37,14 +28,12 @@ module Tdc
|
|
37
28
|
end
|
38
29
|
|
39
30
|
class_methods do
|
40
|
-
def
|
41
|
-
resolver_instance = resolver.constantize.new(key: key, to: to || key)
|
42
|
-
|
31
|
+
def register_definition_resolver(resolver_instance)
|
43
32
|
_definition_resolvers << resolver_instance
|
44
33
|
end
|
45
34
|
|
46
35
|
def resolve_tag(key:, source:)
|
47
|
-
|
36
|
+
register_definition_resolver(Tdc::DefinitionResolvers::TagResolver.new(key: key, source: source))
|
48
37
|
end
|
49
38
|
end
|
50
39
|
|
data/lib/tdc/version.rb
CHANGED
data/tdc.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
|
|
31
31
|
|
32
32
|
spec.add_development_dependency "rake", ">= 12.1", "< 13.1"
|
33
33
|
spec.add_development_dependency "rspec", ">= 3.9", "< 4.0"
|
34
|
-
spec.add_development_dependency "rubocop", "~> 0.
|
35
|
-
spec.add_development_dependency "rubocop-rspec", "~> 1.
|
34
|
+
spec.add_development_dependency "rubocop", "~> 0.88"
|
35
|
+
spec.add_development_dependency "rubocop-rspec", "~> 1.42"
|
36
36
|
spec.add_development_dependency "simplecov", "~> 0.17"
|
37
37
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tdc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alistair McKinnell
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-07-
|
11
|
+
date: 2020-07-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -70,28 +70,28 @@ dependencies:
|
|
70
70
|
requirements:
|
71
71
|
- - "~>"
|
72
72
|
- !ruby/object:Gem::Version
|
73
|
-
version: '0.
|
73
|
+
version: '0.88'
|
74
74
|
type: :development
|
75
75
|
prerelease: false
|
76
76
|
version_requirements: !ruby/object:Gem::Requirement
|
77
77
|
requirements:
|
78
78
|
- - "~>"
|
79
79
|
- !ruby/object:Gem::Version
|
80
|
-
version: '0.
|
80
|
+
version: '0.88'
|
81
81
|
- !ruby/object:Gem::Dependency
|
82
82
|
name: rubocop-rspec
|
83
83
|
requirement: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
85
|
- - "~>"
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version: '1.
|
87
|
+
version: '1.42'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
90
|
version_requirements: !ruby/object:Gem::Requirement
|
91
91
|
requirements:
|
92
92
|
- - "~>"
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version: '1.
|
94
|
+
version: '1.42'
|
95
95
|
- !ruby/object:Gem::Dependency
|
96
96
|
name: simplecov
|
97
97
|
requirement: !ruby/object:Gem::Requirement
|