Commit 20697045 authored by Rajendra Kadam's avatar Rajendra Kadam Committed by Peter Leitzen

Fix leaky constant in simple executor spec

parent 42fce179
......@@ -372,7 +372,6 @@ RSpec/LeakyConstantDeclaration:
- 'spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb'
- 'spec/lib/gitlab/view/presenter/factory_spec.rb'
- 'spec/lib/marginalia_spec.rb'
- 'spec/lib/system_check/simple_executor_spec.rb'
- 'spec/mailers/notify_spec.rb'
- 'spec/migrations/20191125114345_add_admin_mode_protected_path_spec.rb'
- 'spec/migrations/encrypt_plaintext_attributes_on_application_settings_spec.rb'
......
---
title: Fix leaky constant issue in simple executor spec
merge_request: 32082
author: Rajendra Kadam
type: fixed
......@@ -4,99 +4,109 @@ require 'spec_helper'
require 'rake_helper'
describe SystemCheck::SimpleExecutor do
class SimpleCheck < SystemCheck::BaseCheck
set_name 'my simple check'
def check?
true
before do
stub_const('SimpleCheck', Class.new(SystemCheck::BaseCheck))
stub_const('OtherCheck', Class.new(SystemCheck::BaseCheck))
stub_const('SkipCheck', Class.new(SystemCheck::BaseCheck))
stub_const('DynamicSkipCheck', Class.new(SystemCheck::BaseCheck))
stub_const('MultiCheck', Class.new(SystemCheck::BaseCheck))
stub_const('SkipMultiCheck', Class.new(SystemCheck::BaseCheck))
stub_const('RepairCheck', Class.new(SystemCheck::BaseCheck))
stub_const('BugousCheck', Class.new(SystemCheck::BaseCheck))
SimpleCheck.class_eval do
set_name 'my simple check'
def check?
true
end
end
end
class OtherCheck < SystemCheck::BaseCheck
set_name 'other check'
OtherCheck.class_eval do
set_name 'other check'
def check?
false
end
def check?
false
end
def show_error
$stdout.puts 'this is an error text'
def show_error
$stdout.puts 'this is an error text'
end
end
end
class SkipCheck < SystemCheck::BaseCheck
set_name 'skip check'
set_skip_reason 'this is a skip reason'
SkipCheck.class_eval do
set_name 'skip check'
set_skip_reason 'this is a skip reason'
def skip?
true
end
def skip?
true
end
def check?
raise 'should not execute this'
def check?
raise 'should not execute this'
end
end
end
class DynamicSkipCheck < SystemCheck::BaseCheck
set_name 'dynamic skip check'
set_skip_reason 'this is a skip reason'
DynamicSkipCheck.class_eval do
set_name 'dynamic skip check'
set_skip_reason 'this is a skip reason'
def skip?
self.skip_reason = 'this is a dynamic skip reason'
true
end
def skip?
self.skip_reason = 'this is a dynamic skip reason'
true
end
def check?
raise 'should not execute this'
def check?
raise 'should not execute this'
end
end
end
class MultiCheck < SystemCheck::BaseCheck
set_name 'multi check'
MultiCheck.class_eval do
set_name 'multi check'
def multi_check
$stdout.puts 'this is a multi output check'
end
def multi_check
$stdout.puts 'this is a multi output check'
end
def check?
raise 'should not execute this'
def check?
raise 'should not execute this'
end
end
end
class SkipMultiCheck < SystemCheck::BaseCheck
set_name 'skip multi check'
SkipMultiCheck.class_eval do
set_name 'skip multi check'
def skip?
true
end
def skip?
true
end
def multi_check
raise 'should not execute this'
def multi_check
raise 'should not execute this'
end
end
end
class RepairCheck < SystemCheck::BaseCheck
set_name 'repair check'
RepairCheck.class_eval do
set_name 'repair check'
def check?
false
end
def check?
false
end
def repair!
true
end
def repair!
true
end
def show_error
$stdout.puts 'this is an error message'
def show_error
$stdout.puts 'this is an error message'
end
end
end
class BugousCheck < SystemCheck::BaseCheck
CustomError = Class.new(StandardError)
set_name 'my bugous check'
BugousCheck.class_eval do
set_name 'my bugous check'
def check?
raise CustomError, 'omg'
def check?
raise StandardError, 'omg'
end
end
end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment