et_fake_ccd 1.1.5 → 1.1.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ffa81e25d289e1ff9555030198784b7f892b6ef608f5c14650bb7dd10a848b32
4
- data.tar.gz: 93dc7155402278d511930d83bfbd793a0c8931d36ee112365caac1104dae1412
3
+ metadata.gz: 321fc1edadb537f1d872e0b72a463f6c80c86c92cab2c63ea5ff5a9a4def2def
4
+ data.tar.gz: d8ba6a7799ec900e3c257c6b04f50a198ab7554f5a89330086ff00f15daf4e3a
5
5
  SHA512:
6
- metadata.gz: 73e9502bf1d34a8e81f7311962869c66e7a1b0b17d9eff81892ad55bf272401088adc466fd5e19e853f6e636c7eb387bfe58dc877fce093f827cf65e092d6dd7
7
- data.tar.gz: 79371ab60cd0793b0be73f8bf1b368418658ea0ec15edc39db23d6f2a2c21c253ac1ec8bb68b2de9ff37dd77db7105c91342d2ac2b8b2d0d7c1b7a72d5f88bce
6
+ metadata.gz: e7c2d430b5e02444857f2f05c00ba319a04dbd0a1705a4a151926bdcbe2d82ded4c8fe826c62fb939e74c664ce8dcf7541955192e39d2dd2c98071b5c278b8f2
7
+ data.tar.gz: c1a2276381466c60f74313ebe0ade50d6f69753cf22103eae0aa0a3b9cf62709550a57948fd1879538988a035bb3f20bfe64f74107f6de80615d619387d56e4c
data/Gemfile.lock CHANGED
@@ -1,11 +1,12 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- et_fake_ccd (1.1.5)
4
+ et_fake_ccd (1.1.10)
5
5
  activemodel (>= 5.2.3)
6
6
  iodine (~> 0.7)
7
7
  json-schema (~> 2.5)
8
8
  roda (~> 3.21)
9
+ roda-enhanced_logger (~> 0.4.0)
9
10
  rotp (~> 6.2)
10
11
  thor (~> 1.0)
11
12
  tilt (~> 2.0, >= 2.0.9)
@@ -13,48 +14,56 @@ PATH
13
14
  GEM
14
15
  remote: https://rubygems.org/
15
16
  specs:
16
- activemodel (6.1.3.1)
17
- activesupport (= 6.1.3.1)
18
- activesupport (6.1.3.1)
17
+ activemodel (6.1.4.1)
18
+ activesupport (= 6.1.4.1)
19
+ activesupport (6.1.4.1)
19
20
  concurrent-ruby (~> 1.0, >= 1.0.2)
20
21
  i18n (>= 1.6, < 2)
21
22
  minitest (>= 5.1)
22
23
  tzinfo (~> 2.0)
23
24
  zeitwerk (~> 2.3)
24
- addressable (2.7.0)
25
+ addressable (2.8.0)
25
26
  public_suffix (>= 2.0.2, < 5.0)
26
- concurrent-ruby (1.1.8)
27
- diff-lcs (1.3)
28
- i18n (1.8.10)
27
+ concurrent-ruby (1.1.9)
28
+ diff-lcs (1.4.4)
29
+ i18n (1.8.11)
29
30
  concurrent-ruby (~> 1.0)
30
31
  iodine (0.7.44)
31
32
  json-schema (2.8.1)
32
33
  addressable (>= 2.4)
33
34
  minitest (5.14.4)
35
+ pastel (0.8.0)
36
+ tty-color (~> 0.5)
34
37
  public_suffix (4.0.6)
35
38
  rack (2.2.3)
36
- rake (13.0.1)
37
- roda (3.43.1)
39
+ rake (13.0.6)
40
+ roda (3.50.0)
38
41
  rack
42
+ roda-enhanced_logger (0.4.0)
43
+ roda (>= 3.19.0)
44
+ tty-logger (>= 0.3, < 1.0)
39
45
  rotp (6.2.0)
40
- rspec (3.9.0)
41
- rspec-core (~> 3.9.0)
42
- rspec-expectations (~> 3.9.0)
43
- rspec-mocks (~> 3.9.0)
44
- rspec-core (3.9.1)
45
- rspec-support (~> 3.9.1)
46
- rspec-expectations (3.9.0)
46
+ rspec (3.10.0)
47
+ rspec-core (~> 3.10.0)
48
+ rspec-expectations (~> 3.10.0)
49
+ rspec-mocks (~> 3.10.0)
50
+ rspec-core (3.10.1)
51
+ rspec-support (~> 3.10.0)
52
+ rspec-expectations (3.10.1)
47
53
  diff-lcs (>= 1.2.0, < 2.0)
48
- rspec-support (~> 3.9.0)
49
- rspec-mocks (3.9.1)
54
+ rspec-support (~> 3.10.0)
55
+ rspec-mocks (3.10.2)
50
56
  diff-lcs (>= 1.2.0, < 2.0)
51
- rspec-support (~> 3.9.0)
52
- rspec-support (3.9.2)
57
+ rspec-support (~> 3.10.0)
58
+ rspec-support (3.10.3)
53
59
  thor (1.1.0)
54
60
  tilt (2.0.10)
61
+ tty-color (0.6.0)
62
+ tty-logger (0.6.0)
63
+ pastel (~> 0.8)
55
64
  tzinfo (2.0.4)
56
65
  concurrent-ruby (~> 1.0)
57
- zeitwerk (2.4.2)
66
+ zeitwerk (2.5.1)
58
67
 
59
68
  PLATFORMS
60
69
  ruby
data/et_fake_ccd.gemspec CHANGED
@@ -24,6 +24,8 @@ Gem::Specification.new do |spec|
24
24
  spec.require_paths = ["lib"]
25
25
 
26
26
  spec.add_dependency 'roda', '~> 3.21'
27
+ spec.add_dependency 'roda-enhanced_logger', '~> 0.4.0'
28
+
27
29
  spec.add_dependency 'thor', '~> 1.0'
28
30
  spec.add_dependency 'activemodel', '>= 5.2.3'
29
31
  spec.add_dependency 'rotp', '~> 6.2'
@@ -3,7 +3,17 @@ module EtFakeCcd
3
3
  class EcmService
4
4
  OFFICE_CODE_LOOKUP = {
5
5
  'Manchester' => '24',
6
- 'Glasgow' => '41'
6
+ 'Glasgow' => '41',
7
+ 'Test1' => '60',
8
+ 'Test2' => '61',
9
+ 'Test3' => '62',
10
+ 'Test4' => '63',
11
+ 'Test5' => '64',
12
+ 'Test6' => '65',
13
+ 'Test7' => '66',
14
+ 'Test8' => '67',
15
+ 'Test9' => '68',
16
+ 'Test10' => '69'
7
17
  }
8
18
  Response = Struct.new(:case_reference_count, :start_reference, :multiple_reference)
9
19
  # @param [EtFakeCcd::Command::StartMultipleCommand] command
@@ -10,6 +10,7 @@ require "et_fake_ccd/service/ecm_app"
10
10
  module EtFakeCcd
11
11
  class RootApp < Roda
12
12
  plugin :multi_run
13
+ plugin :enhanced_logger
13
14
  run "idam", Service::SidamApp
14
15
  run "auth", Service::AuthApp
15
16
  run "data_store", Service::DataStoreApp
@@ -67,6 +67,18 @@ module EtFakeCcd
67
67
  end
68
68
  end
69
69
  end
70
+ r.is "caseworkers", String, "jurisdictions", String, "case-types", String, "cases", String do |uid, jid, ctid, case_id|
71
+ r.get do
72
+ with_forced_error_handling(r, stage: :data) do
73
+ if !EtFakeCcd::AuthService.validate_service_token(r.headers['ServiceAuthorization'].gsub(/\ABearer /, '')) || !EtFakeCcd::AuthService.validate_user_token(r.headers['Authorization'].gsub(/\ABearer /, ''))
74
+ r.halt 403, forbidden_error_for(r)
75
+ break
76
+ end
77
+ case_response(case_id, uid, jid, ctid)
78
+ end
79
+ end
80
+
81
+ end
70
82
  r.is "caseworkers", String, "jurisdictions", String, "case-types", String, "cases" do |uid, jid, ctid|
71
83
  r.post do
72
84
  with_forced_error_handling(r, stage: :data) do
@@ -255,6 +267,11 @@ module EtFakeCcd
255
267
  JSON.generate(j)
256
268
  end
257
269
 
270
+ def case_response(id, uid, jid, ctid)
271
+ j = case_hash(ctid, id, jid)
272
+ JSON.generate(j)
273
+ end
274
+
258
275
  def case_hash(ctid, id, jid)
259
276
  {
260
277
  "id": id,
@@ -65,6 +65,11 @@ module EtFakeCcd
65
65
 
66
66
  JSON.generate(j)
67
67
  end
68
+
69
+ def forbidden_error_for(r)
70
+ j = {"timestamp":"2019-07-01T07:46:35.405+0000","status":403,"error":"Forbidden","message":"Access Denied","path": r.path}
71
+ JSON.generate(j)
72
+ end
68
73
  end
69
74
  end
70
75
  end
@@ -1,3 +1,3 @@
1
1
  module EtFakeCcd
2
- VERSION = "1.1.5"
2
+ VERSION = "1.1.10"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: et_fake_ccd
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.5
4
+ version: 1.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gary Taylor
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-04-30 00:00:00.000000000 Z
11
+ date: 2021-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: roda
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.21'
27
+ - !ruby/object:Gem::Dependency
28
+ name: roda-enhanced_logger
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.4.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.4.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: thor
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -226,7 +240,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
226
240
  - !ruby/object:Gem::Version
227
241
  version: '0'
228
242
  requirements: []
229
- rubygems_version: 3.1.4
243
+ rubygems_version: 3.1.6
230
244
  signing_key:
231
245
  specification_version: 4
232
246
  summary: Fake CCD server for employment tribunals