Sha256: 36deaccfa1fdfd5750c3eb98b962d5b4d71accd1bdf20670b681d24bd0c743d9

Contents?: true

Size: 967 Bytes

Versions: 4

Compression:

Stored size: 967 Bytes

Contents

require 'simplecov'
SimpleCov.start do
  add_group 'TopHat', 'lib/tophat'
  add_group 'Specs', 'spec'
end

require File.expand_path('../../lib/tophat', __FILE__)

require 'rspec'
require 'rails/all'


RSpec.configure do |config|
  config.after(:each) do
    TopHat.reset
  end
end

require 'action_controller/vendor/html-scanner'

module HTML
  class Node
    def ==(node)
      return false unless self.class == node.class && children.size == node.children.size

      equivalent = true

      children.size.times do |i|
        equivalent &&= children.include?(node.children[i])
      end

      equivalent
    end
  end
end

RSpec::Matchers.define :be_dom_equivalent_to do |expected|
  match do |actual|
    expected_dom = HTML::Document.new(expected).root
    actual_dom   = HTML::Document.new(actual).root

    expected_dom == actual_dom
  end

  failure_message_for_should do |actual|
    "expected #{actual} would be dom equivalent to #{expected}"
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
tophat-1.6.1 spec/spec_helper.rb
tophat-1.6.0 spec/spec_helper.rb
tophat-1.5.0 spec/spec_helper.rb
tophat-1.4.0 spec/spec_helper.rb