defra_ruby_mocks 1.4.1 → 2.2.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 +4 -4
- data/README.md +59 -6
- data/app/controllers/defra_ruby_mocks/company_controller.rb +8 -1
- data/app/controllers/defra_ruby_mocks/worldpay_controller.rb +8 -3
- data/app/services/defra_ruby_mocks/base_service.rb +8 -2
- data/app/services/defra_ruby_mocks/companies_house_service.rb +12 -2
- data/app/services/defra_ruby_mocks/worldpay_response_service.rb +33 -8
- data/app/views/defra_ruby_mocks/company/officers.json.erb +26 -0
- data/app/views/defra_ruby_mocks/company/show.json.erb +10 -1
- data/config/routes.rb +5 -0
- data/lib/defra_ruby_mocks/version.rb +1 -1
- data/spec/dummy/log/test.log +2258 -727
- data/spec/examples.txt +110 -79
- data/spec/requests/company_spec.rb +17 -6
- data/spec/requests/officers_spec.rb +37 -0
- data/spec/requests/worldpay_spec.rb +30 -9
- data/spec/services/companies_house_service_spec.rb +28 -6
- data/spec/services/worldpay_response_service_spec.rb +137 -20
- data/spec/spec_helper.rb +3 -0
- metadata +26 -11
- data/spec/dummy/log/development.log +0 -180
data/spec/examples.txt
CHANGED
@@ -1,83 +1,114 @@
|
|
1
1
|
example_id | status | run_time |
|
2
2
|
------------------------------------------------------------------- | ------ | --------------- |
|
3
|
-
./spec/defra_ruby_mocks_spec.rb[1:1:1] | passed | 0.
|
4
|
-
./spec/defra_ruby_mocks_spec.rb[1:2:1:1] | passed | 0.
|
5
|
-
./spec/defra_ruby_mocks_spec.rb[1:2:2:1] | passed | 0.
|
6
|
-
./spec/lib/configuration_spec.rb[1:1:1:1] | passed | 0.
|
7
|
-
./spec/lib/configuration_spec.rb[1:1:2:1] | passed | 0.
|
8
|
-
./spec/lib/configuration_spec.rb[1:1:3:1] | passed | 0.
|
9
|
-
./spec/lib/configuration_spec.rb[1:1:4:1] | passed | 0.
|
10
|
-
./spec/lib/configuration_spec.rb[1:2:1:1] | passed | 0.
|
11
|
-
./spec/lib/configuration_spec.rb[1:2:2:1] | passed | 0.
|
12
|
-
./spec/lib/configuration_spec.rb[1:2:3:1] | passed | 0.
|
13
|
-
./spec/lib/configuration_spec.rb[1:2:4:1] | passed | 0.
|
14
|
-
./spec/requests/company_spec.rb[1:1:1:1] | passed | 0.
|
15
|
-
./spec/requests/company_spec.rb[1:1:2:1] | passed | 0.
|
16
|
-
./spec/requests/company_spec.rb[1:1:3:1:1] | passed | 0.
|
17
|
-
./spec/requests/company_spec.rb[1:1:3:2:1] | passed | 0.
|
18
|
-
./spec/requests/company_spec.rb[1:2:1] | passed | 0.
|
19
|
-
./spec/requests/
|
20
|
-
./spec/requests/
|
21
|
-
./spec/requests/worldpay_spec.rb[1:1:1:
|
22
|
-
./spec/requests/worldpay_spec.rb[1:1:
|
23
|
-
./spec/requests/worldpay_spec.rb[1:1:
|
24
|
-
./spec/requests/worldpay_spec.rb[1:1:2:
|
25
|
-
./spec/requests/worldpay_spec.rb[1:2:1:1]
|
26
|
-
./spec/requests/worldpay_spec.rb[1:2:2:1]
|
27
|
-
./spec/
|
3
|
+
./spec/defra_ruby_mocks_spec.rb[1:1:1] | passed | 0.00213 seconds |
|
4
|
+
./spec/defra_ruby_mocks_spec.rb[1:2:1:1] | passed | 0.00077 seconds |
|
5
|
+
./spec/defra_ruby_mocks_spec.rb[1:2:2:1] | passed | 0.00014 seconds |
|
6
|
+
./spec/lib/configuration_spec.rb[1:1:1:1] | passed | 0.00015 seconds |
|
7
|
+
./spec/lib/configuration_spec.rb[1:1:2:1] | passed | 0.00012 seconds |
|
8
|
+
./spec/lib/configuration_spec.rb[1:1:3:1] | passed | 0.00094 seconds |
|
9
|
+
./spec/lib/configuration_spec.rb[1:1:4:1] | passed | 0.00012 seconds |
|
10
|
+
./spec/lib/configuration_spec.rb[1:2:1:1] | passed | 0.0001 seconds |
|
11
|
+
./spec/lib/configuration_spec.rb[1:2:2:1] | passed | 0.00013 seconds |
|
12
|
+
./spec/lib/configuration_spec.rb[1:2:3:1] | passed | 0.0001 seconds |
|
13
|
+
./spec/lib/configuration_spec.rb[1:2:4:1] | passed | 0.00012 seconds |
|
14
|
+
./spec/requests/company_spec.rb[1:1:1:1] | passed | 0.00327 seconds |
|
15
|
+
./spec/requests/company_spec.rb[1:1:2:1] | passed | 0.00356 seconds |
|
16
|
+
./spec/requests/company_spec.rb[1:1:3:1:1] | passed | 0.17753 seconds |
|
17
|
+
./spec/requests/company_spec.rb[1:1:3:2:1] | passed | 0.00775 seconds |
|
18
|
+
./spec/requests/company_spec.rb[1:2:1] | passed | 0.00511 seconds |
|
19
|
+
./spec/requests/officers_spec.rb[1:1:1] | passed | 0.00648 seconds |
|
20
|
+
./spec/requests/officers_spec.rb[1:2:1] | passed | 0.01114 seconds |
|
21
|
+
./spec/requests/worldpay_spec.rb[1:1:1:1:1:1] | passed | 0.00492 seconds |
|
22
|
+
./spec/requests/worldpay_spec.rb[1:1:1:1:2:1] | passed | 0.0048 seconds |
|
23
|
+
./spec/requests/worldpay_spec.rb[1:1:1:2:1:1] | passed | 0.00696 seconds |
|
24
|
+
./spec/requests/worldpay_spec.rb[1:1:2:1:1:1] | passed | 0.00632 seconds |
|
25
|
+
./spec/requests/worldpay_spec.rb[1:1:2:1:2:1] | passed | 0.00646 seconds |
|
26
|
+
./spec/requests/worldpay_spec.rb[1:1:2:2:1:1] | passed | 0.00395 seconds |
|
27
|
+
./spec/requests/worldpay_spec.rb[1:2:1:1] | passed | 0.00195 seconds |
|
28
|
+
./spec/requests/worldpay_spec.rb[1:2:2:1] | passed | 0.00538 seconds |
|
29
|
+
./spec/services/companies_house_service_spec.rb[1:1:1:1] | passed | 0.00015 seconds |
|
28
30
|
./spec/services/companies_house_service_spec.rb[1:1:2:1:1] | passed | 0.00011 seconds |
|
29
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:2
|
30
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
31
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
32
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
33
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
34
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
35
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
36
|
-
./spec/services/companies_house_service_spec.rb[1:1:2:
|
37
|
-
./spec/services/companies_house_service_spec.rb[1:1:
|
38
|
-
./spec/services/companies_house_service_spec.rb[1:1:
|
39
|
-
./spec/services/
|
40
|
-
./spec/services/
|
41
|
-
./spec/services/
|
42
|
-
./spec/services/
|
43
|
-
./spec/services/
|
44
|
-
./spec/services/
|
45
|
-
./spec/services/
|
46
|
-
./spec/services/
|
47
|
-
./spec/services/
|
48
|
-
./spec/services/
|
49
|
-
./spec/services/
|
50
|
-
./spec/services/
|
51
|
-
./spec/services/
|
52
|
-
./spec/services/
|
53
|
-
./spec/services/
|
54
|
-
./spec/services/
|
55
|
-
./spec/services/
|
56
|
-
./spec/services/
|
57
|
-
./spec/services/
|
58
|
-
./spec/services/
|
59
|
-
./spec/services/
|
31
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:1:2] | passed | 0.00012 seconds |
|
32
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:2:1] | passed | 0.00012 seconds |
|
33
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:2:2] | passed | 0.00011 seconds |
|
34
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:3:1] | passed | 0.00011 seconds |
|
35
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:3:2] | passed | 0.00013 seconds |
|
36
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:4:1] | passed | 0.00012 seconds |
|
37
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:4:2] | passed | 0.00012 seconds |
|
38
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:5:1] | passed | 0.00011 seconds |
|
39
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:5:2] | passed | 0.00012 seconds |
|
40
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:6:1] | passed | 0.00015 seconds |
|
41
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:6:2] | passed | 0.00013 seconds |
|
42
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:7:1] | passed | 0.00012 seconds |
|
43
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:7:2] | passed | 0.00012 seconds |
|
44
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:8:1] | passed | 0.00015 seconds |
|
45
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:8:2] | passed | 0.00015 seconds |
|
46
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:9:1] | passed | 0.00013 seconds |
|
47
|
+
./spec/services/companies_house_service_spec.rb[1:1:2:9:2] | passed | 0.0001 seconds |
|
48
|
+
./spec/services/companies_house_service_spec.rb[1:1:3:1] | passed | 0.00011 seconds |
|
49
|
+
./spec/services/companies_house_service_spec.rb[1:1:3:2] | passed | 0.00011 seconds |
|
50
|
+
./spec/services/companies_house_service_spec.rb[1:1:3:3] | passed | 0.00013 seconds |
|
51
|
+
./spec/services/companies_house_service_spec.rb[1:1:3:4] | passed | 0.00018 seconds |
|
52
|
+
./spec/services/companies_house_service_spec.rb[1:1:4:1:1] | passed | 0.00012 seconds |
|
53
|
+
./spec/services/companies_house_service_spec.rb[1:1:4:2:1] | passed | 0.00019 seconds |
|
54
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:1:1] | passed | 0.0002 seconds |
|
55
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:1] | passed | 0.00041 seconds |
|
56
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:2] | passed | 0.00043 seconds |
|
57
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:3] | passed | 0.00032 seconds |
|
58
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:4] | passed | 0.00033 seconds |
|
59
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:5:1] | passed | 0.00028 seconds |
|
60
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:5:2] | passed | 0.00029 seconds |
|
61
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:5:3] | passed | 0.00043 seconds |
|
62
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:2:1:6:1] | passed | 0.00033 seconds |
|
63
|
+
./spec/services/worldpay_payment_service_spec.rb[1:1:3:1] | passed | 0.00046 seconds |
|
64
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:1] | passed | 0.00034 seconds |
|
65
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:2] | passed | 0.00034 seconds |
|
66
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:3] | passed | 0.00034 seconds |
|
67
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:4] | passed | 0.00031 seconds |
|
68
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:5] | passed | 0.00038 seconds |
|
69
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:6] | passed | 0.00034 seconds |
|
70
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:1:1:7] | passed | 0.00052 seconds |
|
71
|
+
./spec/services/worldpay_refund_service_spec.rb[1:1:2:1] | passed | 0.00033 seconds |
|
72
|
+
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:1:1] | passed | 0.00976 seconds |
|
73
|
+
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:1:2] | passed | 0.00109 seconds |
|
74
|
+
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:2:1] | passed | 0.00085 seconds |
|
60
75
|
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:2:2] | passed | 0.00077 seconds |
|
61
|
-
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:3:1] | passed | 0.
|
62
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:1:1] | passed | 0.
|
63
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:1:2] | passed | 0.
|
64
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:1:3] | passed | 0.
|
65
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:1:4] | passed | 0.
|
66
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:2:1] | passed | 0.
|
67
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:2:2] | passed | 0.
|
68
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:2:3] | passed | 0.
|
69
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:2:4] | passed | 0.
|
70
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:3:1] | passed | 0.
|
71
|
-
./spec/services/worldpay_resource_service_spec.rb[1:1:4:1] | passed | 0.
|
72
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:1] | passed | 0.
|
73
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:2] | passed | 0.
|
74
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:3]
|
75
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:
|
76
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:
|
77
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:
|
78
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
79
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
80
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
81
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
82
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
83
|
-
./spec/services/worldpay_response_service_spec.rb[1:1:
|
76
|
+
./spec/services/worldpay_request_handler_service_spec.rb[1:1:1:3:1] | passed | 0.00066 seconds |
|
77
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:1:1] | passed | 0.0016 seconds |
|
78
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:1:2] | passed | 0.00082 seconds |
|
79
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:1:3] | passed | 0.00088 seconds |
|
80
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:1:4] | passed | 0.00072 seconds |
|
81
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:2:1] | passed | 0.00279 seconds |
|
82
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:2:2] | passed | 0.0011 seconds |
|
83
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:2:3] | passed | 0.00162 seconds |
|
84
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:2:4] | passed | 0.00111 seconds |
|
85
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:3:1] | passed | 0.00188 seconds |
|
86
|
+
./spec/services/worldpay_resource_service_spec.rb[1:1:4:1] | passed | 0.00076 seconds |
|
87
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:1] | passed | 0.00085 seconds |
|
88
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:2] | passed | 0.00092 seconds |
|
89
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:3:1] | passed | 0.00088 seconds |
|
90
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:3:2] | passed | 0.00073 seconds |
|
91
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:4:1] | passed | 0.00065 seconds |
|
92
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:4:2] | passed | 0.00074 seconds |
|
93
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:5:1] | passed | 0.00065 seconds |
|
94
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:5:2] | passed | 0.00065 seconds |
|
95
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:6:1] | passed | 0.00084 seconds |
|
96
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:6:2] | passed | 0.0011 seconds |
|
97
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:7:1] | passed | 0.0008 seconds |
|
98
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:7:2] | passed | 0.00085 seconds |
|
99
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:8:1] | passed | 0.00072 seconds |
|
100
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:1:1:8:2] | passed | 0.0011 seconds |
|
101
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:1] | passed | 0.00062 seconds |
|
102
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:2] | passed | 0.00074 seconds |
|
103
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:3:1] | passed | 0.00063 seconds |
|
104
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:3:2] | passed | 0.00068 seconds |
|
105
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:4:1] | passed | 0.00066 seconds |
|
106
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:4:2] | passed | 0.00073 seconds |
|
107
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:5:1] | passed | 0.00081 seconds |
|
108
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:5:2] | passed | 0.00072 seconds |
|
109
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:6:1] | passed | 0.0008 seconds |
|
110
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:6:2] | passed | 0.00088 seconds |
|
111
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:7:1] | passed | 0.00072 seconds |
|
112
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:7:2] | passed | 0.0009 seconds |
|
113
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:8:1] | passed | 0.00093 seconds |
|
114
|
+
./spec/services/worldpay_response_service_spec.rb[1:1:2:1:8:2] | passed | 0.00122 seconds |
|
@@ -18,7 +18,7 @@ module DefraRubyMocks
|
|
18
18
|
get "#{path}/#{company_number}"
|
19
19
|
content = JSON.parse(response.body)
|
20
20
|
|
21
|
-
expect(response.
|
21
|
+
expect(response.media_type).to eq("application/json")
|
22
22
|
expect(response.code).to eq("404")
|
23
23
|
expect(content).to include("errors")
|
24
24
|
end
|
@@ -29,11 +29,20 @@ module DefraRubyMocks
|
|
29
29
|
|
30
30
|
it "returns a JSON response with a 200 code and a status that isn't 'active'" do
|
31
31
|
get "#{path}/#{company_number}"
|
32
|
-
company_status = JSON.parse(response.body)["company_status"]
|
33
32
|
|
34
|
-
expect(response.
|
33
|
+
expect(response.media_type).to eq("application/json")
|
35
34
|
expect(response.code).to eq("200")
|
36
|
-
expect(
|
35
|
+
expect(JSON.parse(response.body).deep_symbolize_keys).to eq(
|
36
|
+
company_name: "Acme Industries",
|
37
|
+
company_status: "dissolved",
|
38
|
+
type: "ltd",
|
39
|
+
registered_office_address: {
|
40
|
+
address_line_1: "10 Downing St",
|
41
|
+
address_line_2: "Horizon House",
|
42
|
+
locality: "Bristol",
|
43
|
+
postal_code: "BS1 5AH"
|
44
|
+
}
|
45
|
+
)
|
37
46
|
end
|
38
47
|
end
|
39
48
|
|
@@ -44,10 +53,12 @@ module DefraRubyMocks
|
|
44
53
|
it "returns a JSON response with a 200 code and a status of 'active'" do
|
45
54
|
get "#{path}/#{company_number}"
|
46
55
|
company_status = JSON.parse(response.body)["company_status"]
|
56
|
+
company_type = JSON.parse(response.body)["type"]
|
47
57
|
|
48
|
-
expect(response.
|
58
|
+
expect(response.media_type).to eq("application/json")
|
49
59
|
expect(response.code).to eq("200")
|
50
60
|
expect(company_status).to eq("active")
|
61
|
+
expect(company_type).to eq("ltd")
|
51
62
|
end
|
52
63
|
end
|
53
64
|
|
@@ -58,7 +69,7 @@ module DefraRubyMocks
|
|
58
69
|
get "#{path}/#{company_number}"
|
59
70
|
content = JSON.parse(response.body)
|
60
71
|
|
61
|
-
expect(response.
|
72
|
+
expect(response.media_type).to eq("application/json")
|
62
73
|
expect(response.code).to eq("404")
|
63
74
|
expect(content).to include("errors")
|
64
75
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails_helper"
|
4
|
+
|
5
|
+
module DefraRubyMocks
|
6
|
+
RSpec.describe "Officers", type: :request do
|
7
|
+
after(:all) { Helpers::Configuration.reset_for_tests }
|
8
|
+
|
9
|
+
let(:path) { "/defra_ruby_mocks/company/company-no/officers" }
|
10
|
+
|
11
|
+
context "when mocks are enabled" do
|
12
|
+
before(:each) { Helpers::Configuration.prep_for_tests }
|
13
|
+
|
14
|
+
it "returns a JSON response" do
|
15
|
+
get path
|
16
|
+
|
17
|
+
expect(response.media_type).to eq("application/json")
|
18
|
+
expect(response.code).to eq("200")
|
19
|
+
|
20
|
+
expect(JSON.parse(response.body).deep_symbolize_keys[:items][0]).to eq(
|
21
|
+
{
|
22
|
+
name: "APPLE, Alice",
|
23
|
+
officer_role: "director"
|
24
|
+
}
|
25
|
+
)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
context "when mocks are disabled" do
|
30
|
+
before(:all) { DefraRubyMocks.configuration.enable = false }
|
31
|
+
|
32
|
+
it "cannot load the page" do
|
33
|
+
expect { get path }.to raise_error(ActionController::RoutingError)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -24,9 +24,9 @@ module DefraRubyMocks
|
|
24
24
|
let(:data) { File.read("spec/fixtures/payment_request_valid.xml") }
|
25
25
|
|
26
26
|
it "returns an XML response with a 200 code" do
|
27
|
-
get path, {
|
27
|
+
get path, headers: { "RAW_POST_DATA" => data }
|
28
28
|
|
29
|
-
expect(response.
|
29
|
+
expect(response.media_type).to eq("application/xml")
|
30
30
|
expect(response.code).to eq("200")
|
31
31
|
expect(response.body).to be_xml
|
32
32
|
end
|
@@ -36,7 +36,7 @@ module DefraRubyMocks
|
|
36
36
|
let(:data) { File.read("spec/fixtures/payment_request_invalid.xml") }
|
37
37
|
|
38
38
|
it "returns a response with a 500 code" do
|
39
|
-
get path, {
|
39
|
+
get path, headers: { "RAW_POST_DATA" => data }
|
40
40
|
|
41
41
|
expect(response.code).to eq("500")
|
42
42
|
end
|
@@ -48,9 +48,9 @@ module DefraRubyMocks
|
|
48
48
|
let(:data) { File.read("spec/fixtures/refund_request_valid.xml") }
|
49
49
|
|
50
50
|
it "returns an XML response with a 200 code" do
|
51
|
-
get path, {
|
51
|
+
get path, headers: { "RAW_POST_DATA" => data }
|
52
52
|
|
53
|
-
expect(response.
|
53
|
+
expect(response.media_type).to eq("application/xml")
|
54
54
|
expect(response.code).to eq("200")
|
55
55
|
expect(response.body).to be_xml
|
56
56
|
end
|
@@ -59,8 +59,22 @@ module DefraRubyMocks
|
|
59
59
|
end
|
60
60
|
|
61
61
|
context "#dispatcher" do
|
62
|
+
let(:success_url) { "http://example.com/fo/12345/worldpay/success" }
|
63
|
+
let(:failure_url) { "http://example.com/fo/12345/worldpay/failure" }
|
64
|
+
let(:pending_url) { "http://example.com/fo/12345/worldpay/pending" }
|
65
|
+
let(:cancel_url) { "http://example.com/fo/12345/worldpay/cancel" }
|
66
|
+
let(:error_url) { "http://example.com/fo/12345/worldpay/error" }
|
62
67
|
let(:response_url) { "#{success_url}?orderKey=admincode1^^987654&paymentStatus=#{status}&paymentAmount=10500&paymentCurrency=GBP&mac=0ba5271e1ed1b26f9bb428ef7fb536a4&source=WP" }
|
63
|
-
let(:path)
|
68
|
+
let(:path) do
|
69
|
+
root = "/defra_ruby_mocks/worldpay/dispatcher"
|
70
|
+
escaped_success = CGI.escape(success_url)
|
71
|
+
escaped_failure = CGI.escape(failure_url)
|
72
|
+
escaped_pending = CGI.escape(pending_url)
|
73
|
+
escaped_cancel = CGI.escape(cancel_url)
|
74
|
+
escaped_error = CGI.escape(error_url)
|
75
|
+
|
76
|
+
"#{root}?successURL=#{escaped_success}&failureURL=#{escaped_failure}&pendingURL=#{escaped_pending}&cancelURL=#{escaped_cancel}&errorURL=#{escaped_error}"
|
77
|
+
end
|
64
78
|
let(:service_response) do
|
65
79
|
double(
|
66
80
|
:response,
|
@@ -76,9 +90,16 @@ module DefraRubyMocks
|
|
76
90
|
end
|
77
91
|
|
78
92
|
context "and the request is valid" do
|
79
|
-
before(:each)
|
80
|
-
|
81
|
-
|
93
|
+
before(:each) do
|
94
|
+
allow(WorldpayResponseService).to receive(:run)
|
95
|
+
.with(
|
96
|
+
success_url: success_url,
|
97
|
+
failure_url: failure_url,
|
98
|
+
pending_url: pending_url,
|
99
|
+
cancel_url: cancel_url,
|
100
|
+
error_url: error_url
|
101
|
+
) { service_response }
|
102
|
+
end
|
82
103
|
|
83
104
|
context "and a response is expected" do
|
84
105
|
let(:status) { "AUTHORISED" }
|
@@ -5,11 +5,13 @@ require "rails_helper"
|
|
5
5
|
module DefraRubyMocks
|
6
6
|
RSpec.describe CompaniesHouseService do
|
7
7
|
describe ".run" do
|
8
|
+
subject { described_class.run(company_number) }
|
9
|
+
|
8
10
|
context "when the company number is 99999999 for not found" do
|
9
11
|
let(:company_number) { "99999999" }
|
10
12
|
|
11
13
|
it "raises a NotFoundError" do
|
12
|
-
expect {
|
14
|
+
expect { subject }.to raise_error(NotFoundError)
|
13
15
|
end
|
14
16
|
end
|
15
17
|
|
@@ -18,19 +20,39 @@ module DefraRubyMocks
|
|
18
20
|
|
19
21
|
specials.each do |company_number, status|
|
20
22
|
context "and the number is #{company_number}" do
|
21
|
-
|
22
|
-
|
23
|
+
let(:company_number) { company_number }
|
24
|
+
|
25
|
+
it "returns a company_status of '#{status}'" do
|
26
|
+
expect(subject.company_status).to eq(status)
|
27
|
+
end
|
28
|
+
|
29
|
+
it "returns a company_type of 'ltd'" do
|
30
|
+
expect(subject.company_type).to eq("ltd")
|
23
31
|
end
|
24
32
|
end
|
25
33
|
end
|
26
34
|
end
|
27
35
|
|
36
|
+
context "when the company is an LLP" do
|
37
|
+
CompaniesHouseService.llp_company_numbers.each do |company_number|
|
38
|
+
let(:company_number) { company_number }
|
39
|
+
|
40
|
+
it "returns a company_status of 'active'" do
|
41
|
+
expect(subject.company_status).to eq("active")
|
42
|
+
end
|
43
|
+
|
44
|
+
it "returns a company_type of 'llp'" do
|
45
|
+
expect(subject.company_type).to eq("llp")
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
28
50
|
context "when the company number is not from the 'specials' list" do
|
29
51
|
context "and it is valid" do
|
30
52
|
let(:company_number) { "SC247974" }
|
31
53
|
|
32
|
-
it "returns a
|
33
|
-
expect(
|
54
|
+
it "returns a company_status of 'active'" do
|
55
|
+
expect(subject.company_status).to eq("active")
|
34
56
|
end
|
35
57
|
end
|
36
58
|
|
@@ -38,7 +60,7 @@ module DefraRubyMocks
|
|
38
60
|
let(:company_number) { "foo" }
|
39
61
|
|
40
62
|
it "raises a NotFoundError" do
|
41
|
-
expect {
|
63
|
+
expect { subject }.to raise_error(NotFoundError)
|
42
64
|
end
|
43
65
|
end
|
44
66
|
end
|