marty 1.2.9 → 2.0.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/Gemfile +11 -9
- data/Gemfile.lock +93 -80
- data/app/components/marty/data_grid_view.rb +1 -1
- data/app/components/marty/main_auth_app.rb +1 -1
- data/app/components/marty/mcfly_grid_panel/client/dup_in_form.js +1 -1
- data/app/components/marty/posting_grid.rb +1 -1
- data/app/components/marty/promise_view.rb +1 -1
- data/app/components/marty/simple_app.rb +1 -1
- data/app/controllers/marty/application_controller.rb +2 -2
- data/app/controllers/marty/diagnostic/controller.rb +1 -5
- data/app/models/marty/api_auth.rb +6 -4
- data/app/models/marty/config.rb +1 -1
- data/app/models/marty/data_grid.rb +13 -13
- data/app/models/marty/delorean_rule.rb +2 -2
- data/app/models/marty/event.rb +1 -1
- data/app/models/marty/import_type.rb +2 -2
- data/app/models/marty/name_validator.rb +1 -1
- data/app/models/marty/posting.rb +0 -5
- data/app/models/marty/user.rb +1 -1
- data/app/views/marty/diagnostic/diag.html.erb +0 -2
- data/config/routes.rb +2 -2
- data/db/migrate/003_create_marty_users.rb +1 -1
- data/db/migrate/004_create_marty_roles.rb +1 -1
- data/db/migrate/005_create_marty_user_roles.rb +1 -1
- data/db/migrate/006_create_marty_tokens.rb +1 -1
- data/db/migrate/008_create_marty_posting_types.rb +1 -1
- data/db/migrate/068_create_marty_import_types.rb +1 -1
- data/db/migrate/069_create_marty_import_synonyms.rb +1 -1
- data/db/migrate/070_create_versions.rb +1 -1
- data/db/migrate/071_add_object_changes_column_to_versions.rb +1 -1
- data/db/migrate/072_add_validation_function_to_import_types.rb +1 -1
- data/db/migrate/073_add_preprocess_function_to_import_types.rb +1 -1
- data/db/migrate/090_create_delayed_jobs.rb +1 -1
- data/db/migrate/091_create_marty_promises.rb +1 -1
- data/db/migrate/096_add_user_roles_to_import_types.rb +1 -1
- data/db/migrate/097_drop_versions.rb +1 -1
- data/db/migrate/099_create_marty_configs.rb +1 -1
- data/db/migrate/101_create_marty_grid_index_numranges.rb +1 -1
- data/db/migrate/102_create_marty_grid_index_int4ranges.rb +1 -1
- data/db/migrate/103_create_marty_grid_index_integers.rb +1 -1
- data/db/migrate/104_create_marty_grid_index_strings.rb +1 -1
- data/db/migrate/105_create_marty_grid_index_booleans.rb +1 -1
- data/db/migrate/106_make_grid_indexes_nullable.rb +1 -1
- data/db/migrate/200_create_marty_event_operation_enum.rb +1 -1
- data/db/migrate/201_create_marty_events.rb +1 -1
- data/db/migrate/202_add_completion_status_to_event.rb +1 -1
- data/db/migrate/300_create_marty_api_configs.rb +1 -1
- data/db/migrate/301_create_marty_api_log.rb +1 -1
- data/db/migrate/302_add_api_configs_validate_result.rb +1 -1
- data/db/migrate/303_create_marty_logs.rb +1 -1
- data/db/migrate/304_drop_marty_api_logs.rb +1 -1
- data/db/migrate/400_create_dg_plv8_v1_fns.rb +1 -1
- data/lib/marty/migrations.rb +7 -8
- data/lib/marty/monkey.rb +2 -30
- data/lib/marty/version.rb +1 -1
- data/marty.gemspec +3 -4
- data/other/marty/diagnostic/aws/ec2_instance.rb +65 -25
- data/other/marty/diagnostic/base.rb +14 -5
- data/other/marty/diagnostic/collection.rb +1 -0
- data/other/marty/diagnostic/{delayed_job.rb → delayed_job_version.rb} +2 -8
- data/other/marty/diagnostic/delayed_job_workers.rb +11 -0
- data/other/marty/diagnostic/environment_variables.rb +4 -6
- data/other/marty/diagnostic/fatal.rb +0 -5
- data/other/marty/diagnostic/node.rb +4 -3
- data/other/marty/diagnostic/nodes.rb +46 -13
- data/other/marty/diagnostic/packer.rb +22 -25
- data/other/marty/diagnostic/version.rb +19 -21
- data/script_id, +0 -0
- data/spec/controllers/diagnostic/controller_spec.rb +8 -7
- data/spec/controllers/job_controller_spec.rb +5 -5
- data/spec/controllers/rpc_controller_spec.rb +52 -57
- data/spec/controllers/rpc_import_spec.rb +1 -1
- data/spec/dummy/config/environments/test.rb +4 -2
- data/spec/dummy/db/migrate/20140000000000_create_enums.rb +1 -1
- data/spec/dummy/db/migrate/20150406171536_create_categories.rb +2 -2
- data/spec/dummy/db/migrate/20150408200916_create_loan_programs.rb +1 -1
- data/spec/dummy/db/migrate/20150408201429_create_types.rb +1 -1
- data/spec/dummy/db/migrate/20151023000001_create_simple.rb +1 -1
- data/spec/dummy/db/migrate/20160100000038_create_gemini_states.rb +1 -1
- data/spec/dummy/db/migrate/20160923183516_add_bulk_pricing_event_ops.rb +1 -1
- data/spec/dummy/db/migrate/20170706081300_add_state_array_to_lp.rb +1 -1
- data/spec/dummy/db/migrate/20170725160000_add_misc_arrays_to_lp.rb +1 -1
- data/spec/dummy/db/migrate/20171220150101_add_rule_type_enums.rb +1 -1
- data/spec/dummy/db/migrate/20171222150100_add_rule_indices.rb +1 -1
- data/spec/features/auth_app_spec.rb +1 -0
- data/spec/features/data_import_spec.rb +2 -2
- data/spec/features/log_view_spec.rb +4 -4
- data/spec/features/reporting_spec.rb +16 -19
- data/spec/features/rule_spec.rb +11 -8
- data/spec/features/scripting_spec.rb +2 -2
- data/spec/features/scripting_test_spec.rb +0 -2
- data/spec/features/user_view_spec.rb +4 -6
- data/spec/lib/logger_spec.rb +4 -4
- data/spec/models/event_spec.rb +4 -4
- data/spec/models/promise_spec.rb +1 -1
- data/spec/other/diagnostic/base_spec.rb +12 -12
- data/spec/other/diagnostic/collection_spec.rb +8 -8
- data/spec/other/diagnostic/{delayed_job_spec.rb → delayed_job_version_spec.rb} +4 -4
- data/spec/other/diagnostic/delayed_job_workers_spec.rb +44 -0
- data/spec/other/diagnostic/reporter_spec.rb +13 -17
- data/spec/spec_helper.rb +36 -14
- data/spec/support/clean_db_helpers.rb +2 -2
- metadata +14 -39
|
@@ -2,8 +2,8 @@ require 'spec_helper'
|
|
|
2
2
|
|
|
3
3
|
describe Marty::Diagnostic::Base do
|
|
4
4
|
def sample_data consistent=true
|
|
5
|
-
node_data_a =
|
|
6
|
-
node_data_b =
|
|
5
|
+
node_data_a = described_class.pack(include_ip=false){'A'}
|
|
6
|
+
node_data_b = described_class.pack(include_ip=false){'B'}
|
|
7
7
|
|
|
8
8
|
data = {
|
|
9
9
|
'NodeA' => node_data_a,
|
|
@@ -18,8 +18,8 @@ describe Marty::Diagnostic::Base do
|
|
|
18
18
|
a = sample_data
|
|
19
19
|
b = sample_data(consistent=false)
|
|
20
20
|
|
|
21
|
-
expect(
|
|
22
|
-
expect(
|
|
21
|
+
expect(described_class.consistent?(a)).to eq(true)
|
|
22
|
+
expect(described_class.consistent?(b)).to eq(false)
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
it 'can produce a valid diagnostic hash from a String' do
|
|
@@ -31,7 +31,7 @@ describe Marty::Diagnostic::Base do
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
expect(
|
|
34
|
+
expect(described_class.pack(include_ip=false){'A'}).to eq(expected)
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
it 'can produce a valid diagnostic hash from a Hash' do
|
|
@@ -58,15 +58,15 @@ describe Marty::Diagnostic::Base do
|
|
|
58
58
|
},
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
expect(
|
|
61
|
+
expect(described_class.
|
|
62
62
|
pack(include_ip=false){test_a}).to eq(expected)
|
|
63
|
-
expect(
|
|
63
|
+
expect(described_class.
|
|
64
64
|
pack(include_ip=false){test_a}).to eq(expected)
|
|
65
65
|
end
|
|
66
66
|
|
|
67
67
|
it 'can produce a valid diagnostic hash from an error Hash' do
|
|
68
|
-
test =
|
|
69
|
-
|
|
68
|
+
test = described_class.pack(include_ip=false){
|
|
69
|
+
described_class.error('E')
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
expected = {
|
|
@@ -83,7 +83,7 @@ describe Marty::Diagnostic::Base do
|
|
|
83
83
|
test_a = {
|
|
84
84
|
'ImportantA' => 'A',
|
|
85
85
|
'ImportantB' => 'B',
|
|
86
|
-
'ImportantC' =>
|
|
86
|
+
'ImportantC' => described_class.create_info('C') + {
|
|
87
87
|
'extra' => 'D'
|
|
88
88
|
}
|
|
89
89
|
}
|
|
@@ -96,7 +96,7 @@ describe Marty::Diagnostic::Base do
|
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
expect{
|
|
100
|
-
expect{
|
|
99
|
+
expect{described_class.pack{test_a}}.to raise_error(RuntimeError)
|
|
100
|
+
expect{described_class.pack{test_b}}.to raise_error(RuntimeError)
|
|
101
101
|
end
|
|
102
102
|
end
|
|
@@ -2,31 +2,31 @@ require 'spec_helper'
|
|
|
2
2
|
|
|
3
3
|
describe Marty::Diagnostic::Collection do
|
|
4
4
|
def sample_data consistent = true
|
|
5
|
-
node_a_data =
|
|
5
|
+
node_a_data = described_class.pack(include_ip=false){'A'}
|
|
6
6
|
data = {
|
|
7
7
|
'NodeA' => node_a_data,
|
|
8
8
|
'NodeB' => node_a_data,
|
|
9
9
|
}
|
|
10
10
|
return data if consistent
|
|
11
|
-
data + {'NodeB' => {'Base' =>
|
|
11
|
+
data + {'NodeB' => {'Base' => described_class.error('B')}}
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
it 'all diagnostics in diagnostics class attribute are generated' do
|
|
15
15
|
diags = [Marty::Diagnostic::Version, Marty::Diagnostic::Nodes]
|
|
16
16
|
expected = diags.map{|d| d.generate}.reduce(:deep_merge)
|
|
17
|
-
|
|
18
|
-
expect(
|
|
17
|
+
described_class.diagnostics = diags
|
|
18
|
+
expect(described_class.generate).to eq(expected)
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
it 'declares data consistency via status consistency' do
|
|
22
22
|
a = sample_data
|
|
23
23
|
b = sample_data + {
|
|
24
|
-
'NodeB' =>
|
|
24
|
+
'NodeB' => described_class.pack(include_ip=false){'B'}
|
|
25
25
|
}
|
|
26
26
|
c = sample_data(consistent=false)
|
|
27
27
|
|
|
28
|
-
expect(
|
|
29
|
-
expect(
|
|
30
|
-
expect(
|
|
28
|
+
expect(described_class.consistent?(a)).to eq(true)
|
|
29
|
+
expect(described_class.consistent?(b)).to eq(true)
|
|
30
|
+
expect(described_class.consistent?(c)).to eq(false)
|
|
31
31
|
end
|
|
32
32
|
end
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
require 'job_helper'
|
|
3
3
|
|
|
4
|
-
describe Marty::Diagnostic::
|
|
4
|
+
describe Marty::Diagnostic::DelayedJobVersion do
|
|
5
5
|
# used to stub request object
|
|
6
6
|
class DummyRequest
|
|
7
7
|
attr_accessor :params, :port
|
|
@@ -12,7 +12,7 @@ describe Marty::Diagnostic::DelayedJob do
|
|
|
12
12
|
|
|
13
13
|
before(:each) do
|
|
14
14
|
Marty::Script.load_scripts(nil, Date.today)
|
|
15
|
-
allow(
|
|
15
|
+
allow(described_class).to receive(:scope).and_return(nil)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
18
|
def sample_data
|
|
@@ -30,14 +30,14 @@ describe Marty::Diagnostic::DelayedJob do
|
|
|
30
30
|
it 'can detect if all workers are running correct application version' do
|
|
31
31
|
ENV['DELAYED_VER'] = Marty::VERSION
|
|
32
32
|
start_delayed_job
|
|
33
|
-
expect(
|
|
33
|
+
expect(described_class.generate).to eq(sample_data)
|
|
34
34
|
stop_delayed_job
|
|
35
35
|
end
|
|
36
36
|
|
|
37
37
|
it 'will fail if DELAYED_VER is not set' do
|
|
38
38
|
ENV.delete('DELAYED_VER')
|
|
39
39
|
start_delayed_job
|
|
40
|
-
expect{
|
|
40
|
+
expect{described_class.generate}.to raise_error(RuntimeError)
|
|
41
41
|
stop_delayed_job
|
|
42
42
|
end
|
|
43
43
|
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'job_helper'
|
|
3
|
+
|
|
4
|
+
describe Marty::Diagnostic::DelayedJobWorkers do
|
|
5
|
+
def sample_data ip=nil, error=false
|
|
6
|
+
{
|
|
7
|
+
ip || Marty::Helper.my_ip => {
|
|
8
|
+
'DelayedJobWorkers' => {
|
|
9
|
+
'description' => error ? "3" : "4",
|
|
10
|
+
'status' => true,
|
|
11
|
+
'consistent' => nil
|
|
12
|
+
},
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def sample_aggregate error=false
|
|
18
|
+
[
|
|
19
|
+
sample_data(ip='0.0.0.0'),
|
|
20
|
+
sample_data(ip='0.0.0.1'),
|
|
21
|
+
sample_data(ip='0.0.0.2', error=error),
|
|
22
|
+
sample_data(ip='0.0.0.3'),
|
|
23
|
+
].reduce(:merge)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
it 'can determine the number of workers on a node' do
|
|
27
|
+
start_delayed_job
|
|
28
|
+
expect(described_class.generate).to eq(sample_data)
|
|
29
|
+
stop_delayed_job
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
it 'can determine if there are nodes with missing workers' do
|
|
33
|
+
consistent = sample_aggregate
|
|
34
|
+
inconsistent = sample_aggregate(error=true)
|
|
35
|
+
|
|
36
|
+
expect(described_class.consistent?(consistent)).to eq(true)
|
|
37
|
+
expect(described_class.consistent?(inconsistent)).to eq(false)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
it 'recognizes zero workers as an error' do
|
|
41
|
+
data = described_class.generate.values[0]
|
|
42
|
+
expect(data['DelayedJobWorkers']['status']).to eq(false)
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -111,15 +111,15 @@ describe Marty::Diagnostic::Reporter do
|
|
|
111
111
|
|
|
112
112
|
describe 'display mechanism for version diagnostic' do
|
|
113
113
|
before(:all) do
|
|
114
|
-
|
|
114
|
+
described_class.diagnostics = [Marty::Diagnostic::Version]
|
|
115
115
|
end
|
|
116
116
|
|
|
117
117
|
before(:each) do
|
|
118
|
-
|
|
118
|
+
described_class.request = DummyRequest.new
|
|
119
119
|
end
|
|
120
120
|
|
|
121
121
|
it 'masks consistent nodes for display (version)' do
|
|
122
|
-
|
|
122
|
+
described_class.request.params = params(scope='local')
|
|
123
123
|
data = {
|
|
124
124
|
'Version' => {
|
|
125
125
|
'NodeA' => version_data,
|
|
@@ -209,27 +209,27 @@ describe Marty::Diagnostic::Reporter do
|
|
|
209
209
|
</div>
|
|
210
210
|
ERB
|
|
211
211
|
|
|
212
|
-
test =
|
|
212
|
+
test = described_class.displays(data)
|
|
213
213
|
expect(minimize(test)).to eq(minimize(expected))
|
|
214
214
|
end
|
|
215
215
|
|
|
216
216
|
it 'can detect errors in diagnostic for display and api' do
|
|
217
|
-
|
|
217
|
+
described_class.request.params = params
|
|
218
218
|
n = aggregate_data
|
|
219
219
|
e = aggregate_data(status: false)
|
|
220
220
|
c = aggregate_data(consistent: false)
|
|
221
221
|
ce = aggregate_data(status: false, consistent: false)
|
|
222
222
|
|
|
223
223
|
aggregate_failures do
|
|
224
|
-
expect(
|
|
225
|
-
expect(
|
|
226
|
-
expect(
|
|
227
|
-
expect(
|
|
224
|
+
expect(described_class.errors(n)).to eq({})
|
|
225
|
+
expect(described_class.errors(e)).not_to eq({})
|
|
226
|
+
expect(described_class.errors(c)).not_to eq({})
|
|
227
|
+
expect(described_class.errors(ce)).not_to eq({})
|
|
228
228
|
end
|
|
229
229
|
end
|
|
230
230
|
|
|
231
231
|
it 'can survive and display fatal errors' do
|
|
232
|
-
|
|
232
|
+
described_class.request.params = params
|
|
233
233
|
|
|
234
234
|
a_err_a = Marty::Diagnostic::Fatal.message('A',
|
|
235
235
|
node: 'NodeA')
|
|
@@ -293,13 +293,9 @@ describe Marty::Diagnostic::Reporter do
|
|
|
293
293
|
</tr>
|
|
294
294
|
</table>
|
|
295
295
|
</div>
|
|
296
|
-
<h3 class="error">
|
|
297
|
-
Something went wrong.</br>
|
|
298
|
-
Consistency is checked between remaining nodes if applicable.
|
|
299
|
-
</h3>
|
|
300
296
|
ERB
|
|
301
297
|
|
|
302
|
-
result =
|
|
298
|
+
result = described_class.displays(data)
|
|
303
299
|
expect(minimize(result)).to eq(minimize(expected))
|
|
304
300
|
end
|
|
305
301
|
end
|
|
@@ -307,12 +303,12 @@ describe Marty::Diagnostic::Reporter do
|
|
|
307
303
|
describe 'aggregation consistency functionality' do
|
|
308
304
|
it 'env diagnostic' do
|
|
309
305
|
test, expected = aggregate_consistency_data('EnvironmentVariables')
|
|
310
|
-
expect(
|
|
306
|
+
expect(described_class.consistency(test)).to eq(expected)
|
|
311
307
|
end
|
|
312
308
|
|
|
313
309
|
it 'marks data as consistent/inconsistent' do
|
|
314
310
|
test, expected = aggregate_consistency_data
|
|
315
|
-
expect(
|
|
311
|
+
expect(described_class.consistency(test)).to eq(expected)
|
|
316
312
|
end
|
|
317
313
|
end
|
|
318
314
|
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -12,6 +12,17 @@ ActiveRecord::Migrator.migrate File.expand_path("../dummy/db/migrate/", __FILE__
|
|
|
12
12
|
|
|
13
13
|
Dir[Rails.root.join("../support/**/*.rb")].each { |f| require f }
|
|
14
14
|
|
|
15
|
+
def register_chrome_driver driver = :chrome, options={}
|
|
16
|
+
Capybara.register_driver driver do |app|
|
|
17
|
+
caps = Selenium::WebDriver::Remote::Capabilities.
|
|
18
|
+
chrome(options + {pageLoadStrategy: 'none'})
|
|
19
|
+
|
|
20
|
+
Capybara::Selenium::Driver.new(app,
|
|
21
|
+
browser: :chrome,
|
|
22
|
+
desired_capabilities: caps)
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
15
26
|
CLASSES_TO_EXCLUDE_FROM_SHARED = ["Marty::Log"]
|
|
16
27
|
class ActiveRecord::Base
|
|
17
28
|
mattr_accessor :shared_connection
|
|
@@ -26,27 +37,23 @@ class ActiveRecord::Base
|
|
|
26
37
|
|
|
27
38
|
def self.connection
|
|
28
39
|
CLASSES_TO_EXCLUDE_FROM_SHARED.include?(model_name) ? orig_connection :
|
|
29
|
-
@@shared_connection ||
|
|
40
|
+
@@shared_connection ||
|
|
41
|
+
ConnectionPool::Wrapper.new(:size => 1) {retrieve_connection}
|
|
30
42
|
end
|
|
31
43
|
|
|
32
44
|
def self.reset_shared_connection
|
|
33
|
-
@@shared_connection =
|
|
45
|
+
@@shared_connection = ConnectionPool::Wrapper.
|
|
46
|
+
new(:size => 1) {retrieve_connection}
|
|
34
47
|
end
|
|
35
48
|
end
|
|
36
49
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
client = Selenium::WebDriver::Remote::Http::Default.new
|
|
44
|
-
profile = Selenium::WebDriver::Firefox::Profile.new
|
|
45
|
-
profile.load_no_focus_lib = true
|
|
46
|
-
Capybara::Selenium::Driver.new(app, :profile => profile,
|
|
47
|
-
:http_client => client)
|
|
48
|
-
end
|
|
50
|
+
register_chrome_driver
|
|
51
|
+
register_chrome_driver(:headless,
|
|
52
|
+
chromeOptions: {
|
|
53
|
+
args: %w[headless disable-gpu window-size=3840,2160]
|
|
54
|
+
})
|
|
49
55
|
|
|
56
|
+
Capybara.javascript_driver = ENV['HEADLESS'] == 'true' ? :headless : :chrome
|
|
50
57
|
|
|
51
58
|
ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection
|
|
52
59
|
|
|
@@ -95,4 +102,19 @@ RSpec.configure do |config|
|
|
|
95
102
|
config.use_transactional_fixtures = true
|
|
96
103
|
|
|
97
104
|
Netzke::Testing.rspec_init(config)
|
|
105
|
+
|
|
106
|
+
# FIXME: temporary monkey patch to fix marty_rspec for new extjs/rails
|
|
107
|
+
module MartyRSpec
|
|
108
|
+
module Components
|
|
109
|
+
class NetzkeGrid
|
|
110
|
+
def get_row_vals row
|
|
111
|
+
res = run_js <<-JS
|
|
112
|
+
#{ext_var(grid, 'grid')}
|
|
113
|
+
return Ext.encode(#{ext_row(row.to_i - 1, 'grid')}.data);
|
|
114
|
+
JS
|
|
115
|
+
JSON.parse(res)
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
end
|
|
98
120
|
end
|
|
@@ -8,11 +8,11 @@ module CleanDbHelpers
|
|
|
8
8
|
end
|
|
9
9
|
|
|
10
10
|
def restore_clean_db(clean_file, remove_file = true)
|
|
11
|
-
self.
|
|
11
|
+
self.use_transactional_tests = false
|
|
12
12
|
`pg_restore -j 2 -O -x -c -d #{current_db} #{clean_file}`
|
|
13
13
|
`rm -f #{clean_file}` if remove_file
|
|
14
14
|
ActiveRecord::Base.clear_all_connections!
|
|
15
15
|
ActiveRecord::Base.reset_shared_connection
|
|
16
|
-
self.
|
|
16
|
+
self.use_transactional_tests = true
|
|
17
17
|
end
|
|
18
18
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: marty
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 2.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Arman Bostani
|
|
@@ -14,7 +14,7 @@ authors:
|
|
|
14
14
|
autorequire:
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
|
-
date: 2018-03-
|
|
17
|
+
date: 2018-03-30 00:00:00.000000000 Z
|
|
18
18
|
dependencies:
|
|
19
19
|
- !ruby/object:Gem::Dependency
|
|
20
20
|
name: pg
|
|
@@ -31,47 +31,19 @@ dependencies:
|
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
32
|
version: '0.21'
|
|
33
33
|
- !ruby/object:Gem::Dependency
|
|
34
|
-
name: netzke
|
|
34
|
+
name: netzke
|
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
|
-
- -
|
|
38
|
-
- !ruby/object:Gem::Version
|
|
39
|
-
version: 1.0.0
|
|
40
|
-
type: :runtime
|
|
41
|
-
prerelease: false
|
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
43
|
-
requirements:
|
|
44
|
-
- - "~>"
|
|
45
|
-
- !ruby/object:Gem::Version
|
|
46
|
-
version: 1.0.0
|
|
47
|
-
- !ruby/object:Gem::Dependency
|
|
48
|
-
name: netzke-basepack
|
|
49
|
-
requirement: !ruby/object:Gem::Requirement
|
|
50
|
-
requirements:
|
|
51
|
-
- - "~>"
|
|
37
|
+
- - '='
|
|
52
38
|
- !ruby/object:Gem::Version
|
|
53
|
-
version:
|
|
39
|
+
version: 6.5.0.0
|
|
54
40
|
type: :runtime
|
|
55
41
|
prerelease: false
|
|
56
42
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
43
|
requirements:
|
|
58
|
-
- -
|
|
59
|
-
- !ruby/object:Gem::Version
|
|
60
|
-
version: 1.0.0
|
|
61
|
-
- !ruby/object:Gem::Dependency
|
|
62
|
-
name: netzke-testing
|
|
63
|
-
requirement: !ruby/object:Gem::Requirement
|
|
64
|
-
requirements:
|
|
65
|
-
- - "~>"
|
|
66
|
-
- !ruby/object:Gem::Version
|
|
67
|
-
version: 1.0.0
|
|
68
|
-
type: :development
|
|
69
|
-
prerelease: false
|
|
70
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
71
|
-
requirements:
|
|
72
|
-
- - "~>"
|
|
44
|
+
- - '='
|
|
73
45
|
- !ruby/object:Gem::Version
|
|
74
|
-
version:
|
|
46
|
+
version: 6.5.0.0
|
|
75
47
|
- !ruby/object:Gem::Dependency
|
|
76
48
|
name: axlsx
|
|
77
49
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -106,14 +78,14 @@ dependencies:
|
|
|
106
78
|
requirements:
|
|
107
79
|
- - '='
|
|
108
80
|
- !ruby/object:Gem::Version
|
|
109
|
-
version: 0.0.
|
|
81
|
+
version: 0.0.20
|
|
110
82
|
type: :runtime
|
|
111
83
|
prerelease: false
|
|
112
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
113
85
|
requirements:
|
|
114
86
|
- - '='
|
|
115
87
|
- !ruby/object:Gem::Version
|
|
116
|
-
version: 0.0.
|
|
88
|
+
version: 0.0.20
|
|
117
89
|
- !ruby/object:Gem::Dependency
|
|
118
90
|
name: coderay
|
|
119
91
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -525,7 +497,8 @@ files:
|
|
|
525
497
|
- other/marty/diagnostic/base.rb
|
|
526
498
|
- other/marty/diagnostic/collection.rb
|
|
527
499
|
- other/marty/diagnostic/database.rb
|
|
528
|
-
- other/marty/diagnostic/
|
|
500
|
+
- other/marty/diagnostic/delayed_job_version.rb
|
|
501
|
+
- other/marty/diagnostic/delayed_job_workers.rb
|
|
529
502
|
- other/marty/diagnostic/environment_variables.rb
|
|
530
503
|
- other/marty/diagnostic/fatal.rb
|
|
531
504
|
- other/marty/diagnostic/node.rb
|
|
@@ -535,6 +508,7 @@ files:
|
|
|
535
508
|
- other/marty/diagnostic/request.rb
|
|
536
509
|
- other/marty/diagnostic/version.rb
|
|
537
510
|
- script/rails
|
|
511
|
+
- script_id,
|
|
538
512
|
- spec/controllers/application_controller_spec.rb
|
|
539
513
|
- spec/controllers/diagnostic/controller_spec.rb
|
|
540
514
|
- spec/controllers/job_controller_spec.rb
|
|
@@ -1675,7 +1649,8 @@ files:
|
|
|
1675
1649
|
- spec/models/user_spec.rb
|
|
1676
1650
|
- spec/other/diagnostic/base_spec.rb
|
|
1677
1651
|
- spec/other/diagnostic/collection_spec.rb
|
|
1678
|
-
- spec/other/diagnostic/
|
|
1652
|
+
- spec/other/diagnostic/delayed_job_version_spec.rb
|
|
1653
|
+
- spec/other/diagnostic/delayed_job_workers_spec.rb
|
|
1679
1654
|
- spec/other/diagnostic/reporter_spec.rb
|
|
1680
1655
|
- spec/requests/routes_spec.rb
|
|
1681
1656
|
- spec/spec_helper.rb
|