Add mocha adpater
This commit is contained in:
16
lib/mocha_adapter.rb
Normal file
16
lib/mocha_adapter.rb
Normal file
@ -0,0 +1,16 @@
|
||||
class MochaAdapter < TestingFrameworkAdapter
|
||||
SUCCESS_REGEXP = /(\d+) passing/
|
||||
FAILURES_REGEXP = /(\d+) failing/
|
||||
|
||||
def self.framework_name
|
||||
'Mocha'
|
||||
end
|
||||
|
||||
def parse_output(output)
|
||||
matches_success = SUCCESS_REGEXP.match(output[:stderr])
|
||||
matches_failed = FAILURES_REGEXP.match(output[:stderr])
|
||||
failed = matches_failed ? matches_failed.captures.try(:first).to_i : 0
|
||||
success = matches_success ? matches_success.captures.try(:first).to_i : 0
|
||||
{count: success+failed, failed: failed}
|
||||
end
|
||||
end
|
14
spec/lib/mocha_adapter_spec.rb
Normal file
14
spec/lib/mocha_adapter_spec.rb
Normal file
@ -0,0 +1,14 @@
|
||||
require 'rails_helper'
|
||||
|
||||
describe MochaAdapter do
|
||||
let(:adapter) { described_class.new }
|
||||
let(:count) { 42 }
|
||||
let(:failed) { 25 }
|
||||
let(:stderr) { "#{count-failed} passing (20ms)\n\n#{failed} failing" }
|
||||
|
||||
describe '#parse_output' do
|
||||
it 'returns the correct numbers' do
|
||||
expect(adapter.parse_output(stderr: stderr)).to eq(count: count, failed: failed)
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user