Class: ParallelRSpec::Server
- Inherits:
-
Object
- Object
- ParallelRSpec::Server
- Defined in:
- lib/parallel_rspec/server.rb
Instance Attribute Summary collapse
-
#remaining_example_group_indexes ⇒ Object
readonly
Returns the value of attribute remaining_example_group_indexes.
-
#reporter ⇒ Object
readonly
Returns the value of attribute reporter.
Instance Method Summary collapse
- #deprecation(hash, channel_to_client) ⇒ Object
- #example_failed(example, channel_to_client) ⇒ Object
- #example_finished(example, channel_to_client) ⇒ Object
- #example_passed(example, channel_to_client) ⇒ Object
- #example_pending(example, channel_to_client) ⇒ Object
- #example_started(example, channel_to_client) ⇒ Object
-
#initialize(reporter) ⇒ Server
constructor
A new instance of Server.
- #next_example_to_run(channel_to_client) ⇒ Object
- #result(success, channel_to_client) ⇒ Object
- #success? ⇒ Boolean
Constructor Details
#initialize(reporter) ⇒ Server
Returns a new instance of Server.
5 6 7 8 9 10 11 |
# File 'lib/parallel_rspec/server.rb', line 5 def initialize(reporter) @remaining_example_group_indexes = RSpec.world.filtered_examples.each_with_object({}) do |(example_group, examples), results| results[example_group] = examples.size unless example_group.any_context_hooks? || examples.size.zero? end @reporter = reporter @success = true end |
Instance Attribute Details
#remaining_example_group_indexes ⇒ Object (readonly)
Returns the value of attribute remaining_example_group_indexes.
3 4 5 |
# File 'lib/parallel_rspec/server.rb', line 3 def remaining_example_group_indexes @remaining_example_group_indexes end |
#reporter ⇒ Object (readonly)
Returns the value of attribute reporter.
3 4 5 |
# File 'lib/parallel_rspec/server.rb', line 3 def reporter @reporter end |
Instance Method Details
#deprecation(hash, channel_to_client) ⇒ Object
33 34 35 |
# File 'lib/parallel_rspec/server.rb', line 33 def deprecation(hash, channel_to_client) reporter.deprecation(hash) end |
#example_failed(example, channel_to_client) ⇒ Object
21 22 23 |
# File 'lib/parallel_rspec/server.rb', line 21 def example_failed(example, channel_to_client) reporter.example_failed(example) end |
#example_finished(example, channel_to_client) ⇒ Object
25 26 27 |
# File 'lib/parallel_rspec/server.rb', line 25 def example_finished(example, channel_to_client) reporter.example_finished(example) end |
#example_passed(example, channel_to_client) ⇒ Object
17 18 19 |
# File 'lib/parallel_rspec/server.rb', line 17 def example_passed(example, channel_to_client) reporter.example_passed(example) end |
#example_pending(example, channel_to_client) ⇒ Object
29 30 31 |
# File 'lib/parallel_rspec/server.rb', line 29 def example_pending(example, channel_to_client) reporter.example_pending(example) end |
#example_started(example, channel_to_client) ⇒ Object
13 14 15 |
# File 'lib/parallel_rspec/server.rb', line 13 def example_started(example, channel_to_client) reporter.example_started(example) end |
#next_example_to_run(channel_to_client) ⇒ Object
37 38 39 40 41 42 43 44 45 46 |
# File 'lib/parallel_rspec/server.rb', line 37 def next_example_to_run(channel_to_client) if remaining_example_group_indexes.empty? channel_to_client.write(nil) else klass = remaining_example_group_indexes.keys.first remaining_example_group_indexes[klass] -= 1 channel_to_client.write([klass, remaining_example_group_indexes[klass]]) remaining_example_group_indexes.delete(klass) if remaining_example_group_indexes[klass].zero? end end |
#result(success, channel_to_client) ⇒ Object
48 49 50 |
# File 'lib/parallel_rspec/server.rb', line 48 def result(success, channel_to_client) @success &&= success end |
#success? ⇒ Boolean
52 53 54 |
# File 'lib/parallel_rspec/server.rb', line 52 def success? @success end |