Class: LearnTest::Strategy
- Inherits:
-
Object
- Object
- LearnTest::Strategy
show all
- Defined in:
- lib/learn_test/strategy.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Constructor Details
#initialize(runner) ⇒ Strategy
Returns a new instance of Strategy.
5
6
7
8
|
# File 'lib/learn_test/strategy.rb', line 5
def initialize(runner)
@runner = runner
@options = runner.options
end
|
Instance Attribute Details
#options ⇒ Object
Returns the value of attribute options.
3
4
5
|
# File 'lib/learn_test/strategy.rb', line 3
def options
@options
end
|
#runner ⇒ Object
Returns the value of attribute runner.
3
4
5
|
# File 'lib/learn_test/strategy.rb', line 3
def runner
@runner
end
|
Instance Method Details
#argv ⇒ Object
47
48
49
|
# File 'lib/learn_test/strategy.rb', line 47
def argv
options[:argv]
end
|
#check_dependencies ⇒ Object
14
15
|
# File 'lib/learn_test/strategy.rb', line 14
def check_dependencies
end
|
#cleanup ⇒ Object
36
37
|
# File 'lib/learn_test/strategy.rb', line 36
def cleanup
end
|
17
18
|
# File 'lib/learn_test/strategy.rb', line 17
def configure
end
|
#die(message) ⇒ Object
51
52
53
54
|
# File 'lib/learn_test/strategy.rb', line 51
def die(message)
puts message.red
exit
end
|
#output ⇒ Object
24
25
26
|
# File 'lib/learn_test/strategy.rb', line 24
def output
raise NotImplementedError, 'you must implement how the test gets its raw output'
end
|
#push_results? ⇒ Boolean
32
33
34
|
# File 'lib/learn_test/strategy.rb', line 32
def push_results?
true
end
|
#results ⇒ Object
28
29
30
|
# File 'lib/learn_test/strategy.rb', line 28
def results
output
end
|
#run ⇒ Object
20
21
22
|
# File 'lib/learn_test/strategy.rb', line 20
def run
raise NotImplementedError, 'you must implement how this strategy runs its tests'
end
|
#run_install(command) ⇒ Object
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
# File 'lib/learn_test/strategy.rb', line 56
def run_install(command)
Open3.popen3(command) do |stdin, stdout, stderr, wait_thr|
while out = stdout.gets do
puts out
end
while err = stderr.gets do
puts err
end
if wait_thr.value.exitstatus != 0
die("There was an error running #{command}")
end
end
end
|
#service_endpoint ⇒ Object
10
11
12
|
# File 'lib/learn_test/strategy.rb', line 10
def service_endpoint
raise NotImplementedError, 'you must add the service endpoint to the test strategy'
end
|