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