dvla-application_helper 5.1.5
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 +7 -0
- data/.drone.yml +481 -0
- data/.env.template +4 -0
- data/.rspec +3 -0
- data/.rubocop.yml +21 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/README.md +674 -0
- data/Rakefile +31 -0
- data/config/settings/drone-dev.yml +41 -0
- data/config/settings/drone-ext.yml +35 -0
- data/config/settings/drone-link.yml +35 -0
- data/config/settings/drone-perf.yml +35 -0
- data/config/settings/local-dev.yml +40 -0
- data/config/settings/local-ext.yml +35 -0
- data/config/settings/local-link.yml +35 -0
- data/config/settings/local-perf.yml +35 -0
- data/config/settings.yml +29 -0
- data/config/yarp.yml +6 -0
- data/functional-tests/Rakefile +74 -0
- data/functional-tests/chutney.yml +110 -0
- data/functional-tests/features/codl.feature +170 -0
- data/functional-tests/features/codl_image_review_states.feature +140 -0
- data/functional-tests/features/csudl.feature +54 -0
- data/functional-tests/features/csudl_image_review_states.feature +20 -0
- data/functional-tests/features/step_definitions/app_domain_steps.rb +213 -0
- data/functional-tests/features/step_definitions/application_creation_steps.rb +115 -0
- data/functional-tests/features/step_definitions/image_steps.rb +144 -0
- data/functional-tests/features/step_definitions/state_machine_steps.rb +43 -0
- data/functional-tests/features/support/data/artefacts.rb +27 -0
- data/functional-tests/features/support/data/image_helpers.rb +20 -0
- data/functional-tests/features/support/data/schema_helpers.rb +3 -0
- data/functional-tests/features/support/data/string_manipulation.rb +9 -0
- data/functional-tests/features/support/env.rb +25 -0
- data/functional-tests/features/support/hooks.rb +56 -0
- data/functional-tests/features/support/yarp_integration/yarp_helpers.rb +23 -0
- data/functional-tests/features/uodl_image_review_states.feature +244 -0
- data/functional-tests/features/uodl_non_processable.feature +441 -0
- data/functional-tests/features/uodl_processable.feature +416 -0
- data/lib/dvla/application_helper/builders/V1/application_builder.rb +298 -0
- data/lib/dvla/application_helper/builders/V1/codl_application_builder.rb +205 -0
- data/lib/dvla/application_helper/builders/V1/csudl_application_builder.rb +329 -0
- data/lib/dvla/application_helper/builders/V2/base_uodl_v2_application_builder.rb +357 -0
- data/lib/dvla/application_helper/builders/V2/cop_v2_application_builder.rb +59 -0
- data/lib/dvla/application_helper/builders/V2/dup_v2_application_builder.rb +84 -0
- data/lib/dvla/application_helper/builders/V2/exc_v2_application_builder.rb +55 -0
- data/lib/dvla/application_helper/builders/V2/rep_v2_application_builder.rb +84 -0
- data/lib/dvla/application_helper/builders/V2/tyr_v2_application_builder.rb +62 -0
- data/lib/dvla/application_helper/builders/V2/uodl_v2_application_builder.rb +278 -0
- data/lib/dvla/application_helper/builders/V3/base_uodl_v3_application_builder.rb +342 -0
- data/lib/dvla/application_helper/builders/V3/cop_v3_application_builder.rb +56 -0
- data/lib/dvla/application_helper/builders/V3/dup_v3_application_builder.rb +78 -0
- data/lib/dvla/application_helper/builders/V3/exc_v3_application_builder.rb +56 -0
- data/lib/dvla/application_helper/builders/V3/rep_v3_application_builder.rb +81 -0
- data/lib/dvla/application_helper/builders/V3/tyr_v3_application_builder.rb +59 -0
- data/lib/dvla/application_helper/builders/dup_rep_builder_mixin.rb +71 -0
- data/lib/dvla/application_helper/builders/photo_builder_mixin.rb +49 -0
- data/lib/dvla/application_helper/builders/photo_signature_builder_mixin.rb +68 -0
- data/lib/dvla/application_helper/configuration.rb +37 -0
- data/lib/dvla/application_helper/constants.rb +21 -0
- data/lib/dvla/application_helper/enums/review_state.rb +30 -0
- data/lib/dvla/application_helper/enums/unable_to_prove_licence_possession_reasons.rb +8 -0
- data/lib/dvla/application_helper/factories/address.rb +21 -0
- data/lib/dvla/application_helper/factories/application_details.rb +353 -0
- data/lib/dvla/application_helper/factories/casework.rb +7 -0
- data/lib/dvla/application_helper/factories/csudl_photo_signature_image.rb +156 -0
- data/lib/dvla/application_helper/factories/csudl_photo_signature_images.rb +85 -0
- data/lib/dvla/application_helper/factories/organ_donor.rb +32 -0
- data/lib/dvla/application_helper/factories/person.rb +73 -0
- data/lib/dvla/application_helper/factories/photo_image.rb +147 -0
- data/lib/dvla/application_helper/factories/photo_images.rb +183 -0
- data/lib/dvla/application_helper/factories/photo_signature_image.rb +158 -0
- data/lib/dvla/application_helper/factories/photo_signature_images.rb +64 -0
- data/lib/dvla/application_helper/fixtures/photo/comparison_image.jpeg +0 -0
- data/lib/dvla/application_helper/fixtures/photo/passport_image.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/photo/photocard_back.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/photo/photocard_front.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/photo/rejected_user_uploaded_image.jpeg +0 -0
- data/lib/dvla/application_helper/fixtures/photo/user_uploaded_image.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/signature/csudl_signature_image.tiff +0 -0
- data/lib/dvla/application_helper/fixtures/signature/passport_image.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/signature/rejected_user_uploaded_image.jpg +0 -0
- data/lib/dvla/application_helper/fixtures/signature/user_uploaded_image.jpg +0 -0
- data/lib/dvla/application_helper/processors/application_status.rb +45 -0
- data/lib/dvla/application_helper/processors/application_task.rb +301 -0
- data/lib/dvla/application_helper/services/application_diary.rb +123 -0
- data/lib/dvla/application_helper/services/application_domain.rb +239 -0
- data/lib/dvla/application_helper/services/application_process_engine.rb +120 -0
- data/lib/dvla/application_helper/services/check_aws_credentials.rb +24 -0
- data/lib/dvla/application_helper/services/driving_licence_channel_api.rb +67 -0
- data/lib/dvla/application_helper/services/image_service.rb +116 -0
- data/lib/dvla/application_helper/services/image_utility.rb +82 -0
- data/lib/dvla/application_helper/services/state_machine_helpers.rb +146 -0
- data/lib/dvla/application_helper/version.rb +5 -0
- data/lib/dvla/application_helper.rb +92 -0
- data/renovate.json +4 -0
- data/scripts/application-login.sh +56 -0
- data/scripts/drone-aws-login.sh +18 -0
- data/scripts/seed_application.rb +268 -0
- data/sonar-project.properties +4 -0
- metadata +343 -0
@@ -0,0 +1,268 @@
|
|
1
|
+
require './lib/dvla/application_helper.rb'
|
2
|
+
require 'json'
|
3
|
+
require 'bundler/setup'
|
4
|
+
require 'rspec'
|
5
|
+
include RSpec::Matchers
|
6
|
+
Bundler.require
|
7
|
+
|
8
|
+
def environment
|
9
|
+
ENV.fetch('ENVIRONMENT')
|
10
|
+
end
|
11
|
+
|
12
|
+
def is_dev_environment
|
13
|
+
environment.include?('dev')
|
14
|
+
end
|
15
|
+
|
16
|
+
DVLA::Application.config do |config|
|
17
|
+
config.environment = environment
|
18
|
+
end
|
19
|
+
|
20
|
+
DVLA::Customer::Helper.configure do |attr|
|
21
|
+
attr.environment = environment
|
22
|
+
attr.yaml_override_path = "./config/settings/#{environment}"
|
23
|
+
end
|
24
|
+
|
25
|
+
ARGUMENT_PREFIX = 'build_'.freeze
|
26
|
+
|
27
|
+
def execute
|
28
|
+
options = extract_arguments
|
29
|
+
build_options = options[:build_options]
|
30
|
+
validate_options(build_options)
|
31
|
+
DVLA::Application.logger.info("Creating #{options[:type]} application in #{environment} with build options: #{build_options}")
|
32
|
+
|
33
|
+
builder = case options[:type]
|
34
|
+
when '', nil, 'uodl'
|
35
|
+
DVLA::Application::ApplicationBuilder.new
|
36
|
+
when 'uodl-v2'
|
37
|
+
DVLA::Application::UODLV2ApplicationBuilder.new
|
38
|
+
when 'cop'
|
39
|
+
DVLA::Application::COPV2ApplicationBuilder.new
|
40
|
+
when 'exc'
|
41
|
+
DVLA::Application::EXCV2ApplicationBuilder.new
|
42
|
+
when 'dup'
|
43
|
+
DVLA::Application::DUPV2ApplicationBuilder.new
|
44
|
+
when 'rep'
|
45
|
+
DVLA::Application::REPV2ApplicationBuilder.new
|
46
|
+
when 'codl'
|
47
|
+
DVLA::Application::CODLApplicationBuilder.new
|
48
|
+
when 'csudl'
|
49
|
+
DVLA::Application::CSUDLApplicationBuilder.new
|
50
|
+
when 'tyr-v3'
|
51
|
+
DVLA::Application::TYRV3ApplicationBuilder.new
|
52
|
+
when 'cop-v3'
|
53
|
+
DVLA::Application::COPV3ApplicationBuilder.new
|
54
|
+
when 'exc-v3'
|
55
|
+
DVLA::Application::EXCV3ApplicationBuilder.new
|
56
|
+
when 'dup-v3'
|
57
|
+
DVLA::Application::DUPV3ApplicationBuilder.new
|
58
|
+
when 'rep-v3'
|
59
|
+
DVLA::Application::REPV3ApplicationBuilder.new
|
60
|
+
else
|
61
|
+
raise "Invalid '#{options[:type]}' application type"
|
62
|
+
end
|
63
|
+
|
64
|
+
apply_build_options!(builder, build_options)
|
65
|
+
|
66
|
+
app = if is_dev_environment
|
67
|
+
create_app_dev(builder)
|
68
|
+
else
|
69
|
+
create_app_link(builder)
|
70
|
+
end
|
71
|
+
DVLA::Application.logger.info("customerID = #{app.customer_id.inspect.green}")
|
72
|
+
DVLA::Application.logger.info("applicationID = #{app.application_id.green}")
|
73
|
+
end
|
74
|
+
|
75
|
+
def validate_options(build_options)
|
76
|
+
is_non_processable = build_options.has_key?(:non_processable) || !build_options.has_key?(:processable)
|
77
|
+
if is_non_processable && !is_dev_environment
|
78
|
+
raise 'Non processable applications should be created just in a dev environment'
|
79
|
+
end
|
80
|
+
|
81
|
+
forbidden_build_options_in_link = %i[with_customer_id with_driver_id with_applicant]
|
82
|
+
using_forbidden_option = forbidden_build_options_in_link.any? { |forbidden| build_options.has_key?(forbidden) }
|
83
|
+
if !is_dev_environment && using_forbidden_option
|
84
|
+
raise 'Specified build option is forbidden for use in Link'
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
88
|
+
# Extracts the environment variables starting with "build_" as options for seeding application
|
89
|
+
# "build_type" is the application type to build
|
90
|
+
# All the remaining env variables are transformed to build options, e.g. "build_processable" will set the processable build option
|
91
|
+
def extract_arguments
|
92
|
+
arguments = ENV.select { |var| var.start_with?(ARGUMENT_PREFIX) }
|
93
|
+
arguments.transform_keys! { |var_name| var_name.delete_prefix(ARGUMENT_PREFIX) }.transform_keys!(&:to_sym)
|
94
|
+
build_options = arguments.reject { |arg| arg == :type }.transform_values { |val| parse_build_option_values(val) }
|
95
|
+
{
|
96
|
+
type: arguments[:type],
|
97
|
+
build_options:,
|
98
|
+
}
|
99
|
+
end
|
100
|
+
|
101
|
+
# Parses the values of the build options
|
102
|
+
# An empty string or a dash will be `nil` and will result in a build option with no parameters
|
103
|
+
# A string of ":val" will be transformed to a normal symbol `:val`
|
104
|
+
# If the string is a valid json it is parsed as so
|
105
|
+
# Otherwise any other value is kept as a normal string
|
106
|
+
def parse_build_option_values(option_value)
|
107
|
+
return nil if ['', '-'].include?(option_value)
|
108
|
+
return [option_value.slice(1..-1).to_sym] if option_value.start_with?(':')
|
109
|
+
|
110
|
+
parsed_option_values = option_value
|
111
|
+
begin
|
112
|
+
parsed_option_values = JSON.parse(option_value)
|
113
|
+
rescue JSON::ParserError, TypeError
|
114
|
+
# When JSON parsing fails we treat value as a normal string
|
115
|
+
end
|
116
|
+
|
117
|
+
[parsed_option_values]
|
118
|
+
end
|
119
|
+
|
120
|
+
# Calls a method of the builder for each build_option specified, passing the relevant parameter
|
121
|
+
def apply_build_options!(builder, build_options)
|
122
|
+
build_options.each_pair do |build_option, option_params|
|
123
|
+
unless builder.respond_to?(build_option)
|
124
|
+
DVLA::Application.logger.error("Build option '#{build_option}' is not valid for the specified application type")
|
125
|
+
raise "Invalid '#{build_option}' build option"
|
126
|
+
end
|
127
|
+
if option_params.nil?
|
128
|
+
builder.send build_option
|
129
|
+
else
|
130
|
+
builder.send build_option, *option_params
|
131
|
+
end
|
132
|
+
end
|
133
|
+
builder
|
134
|
+
end
|
135
|
+
|
136
|
+
# create an application in the dev space
|
137
|
+
# takes the builder specified by the script invocation
|
138
|
+
def create_app_dev(builder)
|
139
|
+
app = builder.build
|
140
|
+
generate_customer_using_application_data_hash(app.to_hash) if app.to_hash.has_key?(:customer_id)
|
141
|
+
app
|
142
|
+
end
|
143
|
+
|
144
|
+
# create an application in the link space
|
145
|
+
# takes the builder specified by the script invocation
|
146
|
+
def create_app_link(builder)
|
147
|
+
customer_info = if paper_licence_application(builder)
|
148
|
+
seed_driver_with_paper
|
149
|
+
else
|
150
|
+
seed_driver
|
151
|
+
end
|
152
|
+
|
153
|
+
applicant = DVLA::Application::PersonFactory.new.build_person_using_identity(customer_info[:identity]).to_applicant
|
154
|
+
|
155
|
+
if builder.instance_of?(DVLA::Application::CODLApplicationBuilder)
|
156
|
+
builder
|
157
|
+
.with_customer_id(customer_info[:customer_id])
|
158
|
+
.with_applicant(applicant)
|
159
|
+
.build
|
160
|
+
else
|
161
|
+
builder
|
162
|
+
.with_customer_id(customer_info[:customer_id])
|
163
|
+
.with_driver_id(customer_info[:driver_id])
|
164
|
+
.with_applicant(applicant)
|
165
|
+
.build
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
# seed a driver based on the DriverRecord model in Customer Account
|
170
|
+
def seed_driver
|
171
|
+
driver_record = DVLA::Customer::Helper::Models::DriverRecord.new
|
172
|
+
response = DVLA::Customer::Helper::Seeders::Driver.seed_driver_with_customer_account(driver_record:)
|
173
|
+
{
|
174
|
+
customer_id: response[:customer_id],
|
175
|
+
driver_id: driver_record.record[:driverId],
|
176
|
+
identity: response[:driver_record].identity,
|
177
|
+
}
|
178
|
+
end
|
179
|
+
|
180
|
+
# seed a paper-based driver based on the DriverRecord model in Customer Account
|
181
|
+
def seed_driver_with_paper
|
182
|
+
driver_record = DVLA::Customer::Helper::Models::DriverRecord.new(identity: create_paper_identity)
|
183
|
+
response = DVLA::Customer::Helper::Seeders::Driver.seed_customer_with_paper_licence(driver_record:)
|
184
|
+
{
|
185
|
+
customer_id: response[:customer_id],
|
186
|
+
driver_id: driver_record.record[:driverId],
|
187
|
+
identity: response[:driver_record].identity,
|
188
|
+
}
|
189
|
+
end
|
190
|
+
|
191
|
+
# create a valid identity that can be used for a paper-based customer
|
192
|
+
def create_paper_identity
|
193
|
+
identity = DVLA::Poirot.create_identity_builder
|
194
|
+
.younger_than(years: 69)
|
195
|
+
.older_than(years: 28)
|
196
|
+
.experian_pass
|
197
|
+
.alive
|
198
|
+
.gbr_citizen
|
199
|
+
.dwp_pass
|
200
|
+
.hmpo_pass
|
201
|
+
.home_office_pass
|
202
|
+
.has_valid_photo
|
203
|
+
.has_valid_signature
|
204
|
+
.domestic_gb_address
|
205
|
+
.country_of_birth(%w(England Wales Scotland).sample)
|
206
|
+
|
207
|
+
built = identity.build
|
208
|
+
begin
|
209
|
+
built.save
|
210
|
+
rescue StandardError => e
|
211
|
+
puts "Failed to save poirot record: #{e}".red
|
212
|
+
raise e
|
213
|
+
end
|
214
|
+
built
|
215
|
+
end
|
216
|
+
|
217
|
+
def generate_customer_using_application_data_hash(application, with_account_deleted: false)
|
218
|
+
customer_id = application[:customerId]
|
219
|
+
|
220
|
+
retrieve_customer_request = {
|
221
|
+
customerId: customer_id,
|
222
|
+
}
|
223
|
+
|
224
|
+
begin
|
225
|
+
retrieve_customer_response = DVLA::Customer::Helper::Service::CustomerDomain.retrieve_customer(request: retrieve_customer_request)
|
226
|
+
existing_customer = retrieve_customer_response.body if retrieve_customer_response.code == 200
|
227
|
+
rescue StandardError
|
228
|
+
# Catching 404 errors, the existing_customer variable will be nil
|
229
|
+
end
|
230
|
+
|
231
|
+
unless existing_customer.nil?
|
232
|
+
DVLA::Application.logger.info("Customer with id '#{customer_id.green}' already exists")
|
233
|
+
return
|
234
|
+
end
|
235
|
+
|
236
|
+
create_customer_request = {
|
237
|
+
customerId: customer_id,
|
238
|
+
emailAddress: application[:data][:applicant][:emailAddress],
|
239
|
+
identityId: SecureRandom.uuid,
|
240
|
+
lastName: application[:data][:applicant][:lastName],
|
241
|
+
dateOfBirth: application[:data][:applicant][:dateOfBirth],
|
242
|
+
address: application[:data][:applicant][:address],
|
243
|
+
contactPreferences: [
|
244
|
+
{
|
245
|
+
contactType: 'Default',
|
246
|
+
contactPreference: 'Email',
|
247
|
+
consentDate: '2021-01-01',
|
248
|
+
},
|
249
|
+
],
|
250
|
+
}
|
251
|
+
if with_account_deleted
|
252
|
+
create_customer_request.delete(:emailAddress)
|
253
|
+
create_customer_request.delete(:identityId)
|
254
|
+
end
|
255
|
+
|
256
|
+
DVLA::Customer::Helper::Service::CustomerDomain.create_customer(request: create_customer_request)
|
257
|
+
end
|
258
|
+
|
259
|
+
def paper_licence_application(builder)
|
260
|
+
builder.instance_of?(DVLA::Application::EXCV2ApplicationBuilder) ||
|
261
|
+
(builder.instance_of?(DVLA::Application::REPV2ApplicationBuilder) && builder.get_eligible_paper_to_plastic == true) ||
|
262
|
+
(builder.instance_of?(DVLA::Application::DUPV2ApplicationBuilder) && builder.get_eligible_paper_to_plastic == true) ||
|
263
|
+
builder.instance_of?(DVLA::Application::EXCV3ApplicationBuilder) ||
|
264
|
+
(builder.instance_of?(DVLA::Application::REPV3ApplicationBuilder) && builder.get_eligible_paper_to_plastic == true) ||
|
265
|
+
(builder.instance_of?(DVLA::Application::DUPV3ApplicationBuilder) && builder.get_eligible_paper_to_plastic == true)
|
266
|
+
end
|
267
|
+
|
268
|
+
execute
|
metadata
ADDED
@@ -0,0 +1,343 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: dvla-application_helper
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 5.1.5
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Paul Lewis
|
8
|
+
- David Sambucci
|
9
|
+
- Shaun Beynon-Thomas
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2025-07-07 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: aws-sdk-states
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '1.64'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '1.64'
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: block_repeater
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - "~>"
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '1.1'
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '1.1'
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: config
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '5.5'
|
50
|
+
type: :runtime
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - "~>"
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '5.5'
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: dvla-application-diary-openapi-client
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '2.3'
|
64
|
+
type: :runtime
|
65
|
+
prerelease: false
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - "~>"
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '2.3'
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: dvla-application-domain-openapi-client
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - "~>"
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '5.10'
|
78
|
+
type: :runtime
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
81
|
+
requirements:
|
82
|
+
- - "~>"
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '5.10'
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: dvla-application-process-engine-openapi-client
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - "~>"
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '2.5'
|
92
|
+
type: :runtime
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - "~>"
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '2.5'
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: dvla-aws
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - "~>"
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: 2.0.0
|
106
|
+
type: :runtime
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - "~>"
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: 2.0.0
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: dvla-driving-licence-channel-api-openapi-client
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - "~>"
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '2.7'
|
120
|
+
type: :runtime
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
requirements:
|
124
|
+
- - "~>"
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: '2.7'
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: dvla-herodotus
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - "~>"
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '2.0'
|
134
|
+
type: :runtime
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - "~>"
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: '2.0'
|
141
|
+
- !ruby/object:Gem::Dependency
|
142
|
+
name: dvla-poirot
|
143
|
+
requirement: !ruby/object:Gem::Requirement
|
144
|
+
requirements:
|
145
|
+
- - "~>"
|
146
|
+
- !ruby/object:Gem::Version
|
147
|
+
version: '3.0'
|
148
|
+
type: :runtime
|
149
|
+
prerelease: false
|
150
|
+
version_requirements: !ruby/object:Gem::Requirement
|
151
|
+
requirements:
|
152
|
+
- - "~>"
|
153
|
+
- !ruby/object:Gem::Version
|
154
|
+
version: '3.0'
|
155
|
+
- !ruby/object:Gem::Dependency
|
156
|
+
name: faker
|
157
|
+
requirement: !ruby/object:Gem::Requirement
|
158
|
+
requirements:
|
159
|
+
- - "~>"
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '3.4'
|
162
|
+
type: :runtime
|
163
|
+
prerelease: false
|
164
|
+
version_requirements: !ruby/object:Gem::Requirement
|
165
|
+
requirements:
|
166
|
+
- - "~>"
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
version: '3.4'
|
169
|
+
- !ruby/object:Gem::Dependency
|
170
|
+
name: faker_maker
|
171
|
+
requirement: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - "~>"
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '3.0'
|
176
|
+
type: :runtime
|
177
|
+
prerelease: false
|
178
|
+
version_requirements: !ruby/object:Gem::Requirement
|
179
|
+
requirements:
|
180
|
+
- - "~>"
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: '3.0'
|
183
|
+
- !ruby/object:Gem::Dependency
|
184
|
+
name: httpx
|
185
|
+
requirement: !ruby/object:Gem::Requirement
|
186
|
+
requirements:
|
187
|
+
- - "~>"
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '1.2'
|
190
|
+
type: :runtime
|
191
|
+
prerelease: false
|
192
|
+
version_requirements: !ruby/object:Gem::Requirement
|
193
|
+
requirements:
|
194
|
+
- - "~>"
|
195
|
+
- !ruby/object:Gem::Version
|
196
|
+
version: '1.2'
|
197
|
+
- !ruby/object:Gem::Dependency
|
198
|
+
name: mime-types
|
199
|
+
requirement: !ruby/object:Gem::Requirement
|
200
|
+
requirements:
|
201
|
+
- - "~>"
|
202
|
+
- !ruby/object:Gem::Version
|
203
|
+
version: '3.5'
|
204
|
+
type: :runtime
|
205
|
+
prerelease: false
|
206
|
+
version_requirements: !ruby/object:Gem::Requirement
|
207
|
+
requirements:
|
208
|
+
- - "~>"
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
version: '3.5'
|
211
|
+
description: Generates fake application data that can be used in testing
|
212
|
+
email:
|
213
|
+
- pauldavid.lewis@dvla.gov.uk
|
214
|
+
- david.sambucci.contractor@dvla.gov.uk
|
215
|
+
- shaun.beynon-thomas.contractor@dvla.gov.uk
|
216
|
+
executables: []
|
217
|
+
extensions: []
|
218
|
+
extra_rdoc_files: []
|
219
|
+
files:
|
220
|
+
- ".drone.yml"
|
221
|
+
- ".env.template"
|
222
|
+
- ".rspec"
|
223
|
+
- ".rubocop.yml"
|
224
|
+
- ".ruby-gemset"
|
225
|
+
- ".ruby-version"
|
226
|
+
- README.md
|
227
|
+
- Rakefile
|
228
|
+
- config/settings.yml
|
229
|
+
- config/settings/drone-dev.yml
|
230
|
+
- config/settings/drone-ext.yml
|
231
|
+
- config/settings/drone-link.yml
|
232
|
+
- config/settings/drone-perf.yml
|
233
|
+
- config/settings/local-dev.yml
|
234
|
+
- config/settings/local-ext.yml
|
235
|
+
- config/settings/local-link.yml
|
236
|
+
- config/settings/local-perf.yml
|
237
|
+
- config/yarp.yml
|
238
|
+
- functional-tests/Rakefile
|
239
|
+
- functional-tests/chutney.yml
|
240
|
+
- functional-tests/features/codl.feature
|
241
|
+
- functional-tests/features/codl_image_review_states.feature
|
242
|
+
- functional-tests/features/csudl.feature
|
243
|
+
- functional-tests/features/csudl_image_review_states.feature
|
244
|
+
- functional-tests/features/step_definitions/app_domain_steps.rb
|
245
|
+
- functional-tests/features/step_definitions/application_creation_steps.rb
|
246
|
+
- functional-tests/features/step_definitions/image_steps.rb
|
247
|
+
- functional-tests/features/step_definitions/state_machine_steps.rb
|
248
|
+
- functional-tests/features/support/data/artefacts.rb
|
249
|
+
- functional-tests/features/support/data/image_helpers.rb
|
250
|
+
- functional-tests/features/support/data/schema_helpers.rb
|
251
|
+
- functional-tests/features/support/data/string_manipulation.rb
|
252
|
+
- functional-tests/features/support/env.rb
|
253
|
+
- functional-tests/features/support/hooks.rb
|
254
|
+
- functional-tests/features/support/yarp_integration/yarp_helpers.rb
|
255
|
+
- functional-tests/features/uodl_image_review_states.feature
|
256
|
+
- functional-tests/features/uodl_non_processable.feature
|
257
|
+
- functional-tests/features/uodl_processable.feature
|
258
|
+
- lib/dvla/application_helper.rb
|
259
|
+
- lib/dvla/application_helper/builders/V1/application_builder.rb
|
260
|
+
- lib/dvla/application_helper/builders/V1/codl_application_builder.rb
|
261
|
+
- lib/dvla/application_helper/builders/V1/csudl_application_builder.rb
|
262
|
+
- lib/dvla/application_helper/builders/V2/base_uodl_v2_application_builder.rb
|
263
|
+
- lib/dvla/application_helper/builders/V2/cop_v2_application_builder.rb
|
264
|
+
- lib/dvla/application_helper/builders/V2/dup_v2_application_builder.rb
|
265
|
+
- lib/dvla/application_helper/builders/V2/exc_v2_application_builder.rb
|
266
|
+
- lib/dvla/application_helper/builders/V2/rep_v2_application_builder.rb
|
267
|
+
- lib/dvla/application_helper/builders/V2/tyr_v2_application_builder.rb
|
268
|
+
- lib/dvla/application_helper/builders/V2/uodl_v2_application_builder.rb
|
269
|
+
- lib/dvla/application_helper/builders/V3/base_uodl_v3_application_builder.rb
|
270
|
+
- lib/dvla/application_helper/builders/V3/cop_v3_application_builder.rb
|
271
|
+
- lib/dvla/application_helper/builders/V3/dup_v3_application_builder.rb
|
272
|
+
- lib/dvla/application_helper/builders/V3/exc_v3_application_builder.rb
|
273
|
+
- lib/dvla/application_helper/builders/V3/rep_v3_application_builder.rb
|
274
|
+
- lib/dvla/application_helper/builders/V3/tyr_v3_application_builder.rb
|
275
|
+
- lib/dvla/application_helper/builders/dup_rep_builder_mixin.rb
|
276
|
+
- lib/dvla/application_helper/builders/photo_builder_mixin.rb
|
277
|
+
- lib/dvla/application_helper/builders/photo_signature_builder_mixin.rb
|
278
|
+
- lib/dvla/application_helper/configuration.rb
|
279
|
+
- lib/dvla/application_helper/constants.rb
|
280
|
+
- lib/dvla/application_helper/enums/review_state.rb
|
281
|
+
- lib/dvla/application_helper/enums/unable_to_prove_licence_possession_reasons.rb
|
282
|
+
- lib/dvla/application_helper/factories/address.rb
|
283
|
+
- lib/dvla/application_helper/factories/application_details.rb
|
284
|
+
- lib/dvla/application_helper/factories/casework.rb
|
285
|
+
- lib/dvla/application_helper/factories/csudl_photo_signature_image.rb
|
286
|
+
- lib/dvla/application_helper/factories/csudl_photo_signature_images.rb
|
287
|
+
- lib/dvla/application_helper/factories/organ_donor.rb
|
288
|
+
- lib/dvla/application_helper/factories/person.rb
|
289
|
+
- lib/dvla/application_helper/factories/photo_image.rb
|
290
|
+
- lib/dvla/application_helper/factories/photo_images.rb
|
291
|
+
- lib/dvla/application_helper/factories/photo_signature_image.rb
|
292
|
+
- lib/dvla/application_helper/factories/photo_signature_images.rb
|
293
|
+
- lib/dvla/application_helper/fixtures/photo/comparison_image.jpeg
|
294
|
+
- lib/dvla/application_helper/fixtures/photo/passport_image.jpg
|
295
|
+
- lib/dvla/application_helper/fixtures/photo/photocard_back.jpg
|
296
|
+
- lib/dvla/application_helper/fixtures/photo/photocard_front.jpg
|
297
|
+
- lib/dvla/application_helper/fixtures/photo/rejected_user_uploaded_image.jpeg
|
298
|
+
- lib/dvla/application_helper/fixtures/photo/user_uploaded_image.jpg
|
299
|
+
- lib/dvla/application_helper/fixtures/signature/csudl_signature_image.tiff
|
300
|
+
- lib/dvla/application_helper/fixtures/signature/passport_image.jpg
|
301
|
+
- lib/dvla/application_helper/fixtures/signature/rejected_user_uploaded_image.jpg
|
302
|
+
- lib/dvla/application_helper/fixtures/signature/user_uploaded_image.jpg
|
303
|
+
- lib/dvla/application_helper/processors/application_status.rb
|
304
|
+
- lib/dvla/application_helper/processors/application_task.rb
|
305
|
+
- lib/dvla/application_helper/services/application_diary.rb
|
306
|
+
- lib/dvla/application_helper/services/application_domain.rb
|
307
|
+
- lib/dvla/application_helper/services/application_process_engine.rb
|
308
|
+
- lib/dvla/application_helper/services/check_aws_credentials.rb
|
309
|
+
- lib/dvla/application_helper/services/driving_licence_channel_api.rb
|
310
|
+
- lib/dvla/application_helper/services/image_service.rb
|
311
|
+
- lib/dvla/application_helper/services/image_utility.rb
|
312
|
+
- lib/dvla/application_helper/services/state_machine_helpers.rb
|
313
|
+
- lib/dvla/application_helper/version.rb
|
314
|
+
- renovate.json
|
315
|
+
- scripts/application-login.sh
|
316
|
+
- scripts/drone-aws-login.sh
|
317
|
+
- scripts/seed_application.rb
|
318
|
+
- sonar-project.properties
|
319
|
+
homepage: https://www.dvla.gov.uk
|
320
|
+
licenses:
|
321
|
+
- MIT
|
322
|
+
metadata:
|
323
|
+
homepage_uri: https://www.dvla.gov.uk
|
324
|
+
post_install_message:
|
325
|
+
rdoc_options: []
|
326
|
+
require_paths:
|
327
|
+
- lib
|
328
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
329
|
+
requirements:
|
330
|
+
- - "~>"
|
331
|
+
- !ruby/object:Gem::Version
|
332
|
+
version: '3.0'
|
333
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
334
|
+
requirements:
|
335
|
+
- - ">="
|
336
|
+
- !ruby/object:Gem::Version
|
337
|
+
version: '0'
|
338
|
+
requirements: []
|
339
|
+
rubygems_version: 3.5.22
|
340
|
+
signing_key:
|
341
|
+
specification_version: 4
|
342
|
+
summary: Gem to generate and submit application data
|
343
|
+
test_files: []
|