module Pretentious
The main class to use for pretentious testing
Pretentious
- version
Constants
- VERSION
Public Class Methods
clear_results()
click to toggle source
# File lib/pretentious.rb, line 96 def self.clear_results @spec_results = {} @minitest_results = {} end
deep_merge(hash, second)
click to toggle source
deep merge without active support and does array deep merges as well
# File lib/pretentious.rb, line 145 def self.deep_merge(hash, second) merger = proc { |key, v1, v2| Hash === v1 && Hash === v2 ? v1.merge(v2, &merger) : Array === v1 && Array === v2 ? v1 | v2 : [:undefined, nil, :nil].include?(v2) ? v1 : v2 } hash.merge(second, &merger) end
install_watcher()
click to toggle source
# File lib/pretentious.rb, line 105 def self.install_watcher Pretentious::Generator.watch_new_instances end
last_results()
click to toggle source
# File lib/pretentious.rb, line 101 def self.last_results { spec: @spec_results, minitest: @minitest_results } end
minitest_for(*klasses, &block)
click to toggle source
# File lib/pretentious.rb, line 83 def self.minitest_for(*klasses, &block) @minitest_results ||= {} Pretentious::Generator.test_generator = Pretentious::MinitestGenerator @minitest_results.merge!(Pretentious::Generator .generate_for(*klasses, &block)) end
on(target_class)
click to toggle source
# File lib/pretentious.rb, line 140 def self.on(target_class) Pretentious::Trigger.new(target_class) end
spec_for(*klasses, &block)
click to toggle source
# File lib/pretentious.rb, line 76 def self.spec_for(*klasses, &block) @spec_results ||= {} Pretentious::Generator.test_generator = Pretentious::RspecGenerator @spec_results.merge!(Pretentious::Generator .generate_for(*klasses, &block)) end
uninstall_watcher()
click to toggle source
# File lib/pretentious.rb, line 109 def self.uninstall_watcher Pretentious::Generator.unwatch_new_instances end
value_ize(context, value)
click to toggle source
# File lib/pretentious.rb, line 113 def self.value_ize(context, value) if value.is_a? String "'#{value}'" elsif value.is_a? Symbol ":#{value}" elsif value.is_a? Hash context.pick_name(value.object_id) elsif value.is_a? Pretentious::RecordedProc context.pick_name(value.target_proc.object_id) elsif value.nil? 'nil' elsif Pretentious::Deconstructor.primitive?(value) "#{value}" elsif context.variable_map && context.variable_map[value.object_id] context.pick_name(value.object_id) else "#{value}" end end
watch(&block)
click to toggle source
# File lib/pretentious.rb, line 133 def self.watch(&block) Pretentious::Generator.watch_new_instances result = block.call Pretentious::Generator.unwatch_new_instances result end
write_results(output_folder = nil, output_subfolder = nil, last_results = nil)
click to toggle source
# File lib/pretentious.rb, line 90 def self.write_results(output_folder = nil, output_subfolder = nil, last_results = nil) filewriter = Pretentious::FileWriter.new(output_folder: output_folder, spec_output_folder: output_subfolder) filewriter.write_results(last_results || Pretentious.last_results) end