Move helper methods and classes to their own directory

This commit is contained in:
Michael Miller 2018-11-09 11:20:30 -07:00
parent 0e1d87d8d4
commit 66dcc21383
5 changed files with 96 additions and 99 deletions

View file

@ -0,0 +1,22 @@
# Example that always fails.
class FailingExample < Spectator::RunnableExample
# Dummy description.
def what
"FAIL"
end
# Run the example that always fails.
private def run_instance
report_results(0, 1)
end
# Creates a failing example.
def self.create
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
end
end
end

View file

@ -0,0 +1,37 @@
# Example that invokes a closure when it is run.
# This is useful for capturing what's going on when an event is running.
class SpyExample < Spectator::RunnableExample
# Dummy description.
def what
"SPY"
end
# Captures the sample values when the example is created.
def initialize(group, @sample_values)
super(group, @sample_values)
end
# Sample values given to the example.
getter sample_values : Spectator::Internals::SampleValues
setter block : Proc(Nil)? = nil
# Method called by the framework to run the example code.
private def run_instance
if block = @block
block.call
end
end
# Creates a spy example.
# The block passed to this method will be executed when the example runs.
def self.create(&block)
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
example.block = block
end
end
end

36
spec/helpers/spy_sut.cr Normal file
View file

@ -0,0 +1,36 @@
# Example system to test that doubles as a spy.
# This class tracks calls made to it.
class SpySUT
# Number of times the `#==` method was called.
getter eq_call_count = 0
# Returns true and increments `#eq_call_count`.
def ==(other : T) forall T
@eq_call_count += 1
true
end
end
# Example that always succeeds.
class PassingExample < Spectator::RunnableExample
# Dummy description.
def what
"PASS"
end
# Run the example that always passes.
# If this doesn't something broke.
private def run_instance
report_results(1, 0)
end
# Creates a passing example.
def self.create
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
end
end
end

View file

@ -1,104 +1,6 @@
require "spec" require "spec"
require "../src/spectator" require "../src/spectator"
require "./expectations_helper" require "./helpers/*"
# Prevent Spectator from trying to run tests. # Prevent Spectator from trying to run tests.
Spectator.autorun = false Spectator.autorun = false
# Example system to test that doubles as a spy.
# This class tracks calls made to it.
class SpySUT
# Number of times the `#==` method was called.
getter eq_call_count = 0
# Returns true and increments `#eq_call_count`.
def ==(other : T) forall T
@eq_call_count += 1
true
end
end
# Example that always succeeds.
class PassingExample < Spectator::RunnableExample
# Dummy description.
def what
"PASS"
end
# Run the example that always passes.
# If this doesn't something broke.
private def run_instance
report_results(1, 0)
end
# Creates a passing example.
def self.create
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
end
end
end
# Example that always fails.
class FailingExample < Spectator::RunnableExample
# Dummy description.
def what
"FAIL"
end
# Run the example that always fails.
private def run_instance
report_results(0, 1)
end
# Creates a passing example.
def self.create
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
end
end
end
# Example that invokes a closure when it is run.
# This is useful for capturing what's going on when an event is running.
class SpyExample < Spectator::RunnableExample
# Dummy description.
def what
"SPY"
end
# Captures the sample values when the example is created.
def initialize(group, @sample_values)
super(group, @sample_values)
end
# Sample values given to the example.
getter sample_values : Spectator::Internals::SampleValues
setter block : Proc(Nil)? = nil
# Method called by the framework to run the example code.
private def run_instance
if block = @block
block.call
end
end
# Creates a spy example.
# The block passed to this method will be executed when the example runs.
def self.create(&block)
hooks = Spectator::ExampleHooks.empty
group = Spectator::RootExampleGroup.new(hooks)
values = Spectator::Internals::SampleValues.empty
new(group, values).tap do |example|
group.children = [example.as(Spectator::ExampleComponent)]
example.block = block
end
end
end