Sha256: 143028ed84d760c7d53fd50a47c5cf552b21c9823921bb4fadac944a73170704

Contents?: true

Size: 308 Bytes

Versions: 17

Compression:

Stored size: 308 Bytes

Contents

require 'mspec/guards/guard'

class ConflictsGuard < SpecGuard
  def match?
    constants = Object.constants
    @args.any? { |mod| constants.include? mod.to_s }
  end
end

class Object
  def conflicts_with(*modules)
    g = ConflictsGuard.new(*modules)
    yield if g.yield? true
    g.unregister
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
mspec-1.0.0 lib/mspec/guards/conflict.rb
mspec-1.4.0 lib/mspec/guards/conflict.rb
mspec-1.5.0 lib/mspec/guards/conflict.rb
mspec-1.5.2 lib/mspec/guards/conflict.rb
mspec-1.5.4 lib/mspec/guards/conflict.rb
mspec-1.1.1 lib/mspec/guards/conflict.rb
mspec-1.1.0 lib/mspec/guards/conflict.rb
mspec-1.5.3 lib/mspec/guards/conflict.rb
mspec-1.5.1 lib/mspec/guards/conflict.rb
mspec-1.2.0 lib/mspec/guards/conflict.rb
mspec-1.3.1 lib/mspec/guards/conflict.rb
mspec-1.3.0 lib/mspec/guards/conflict.rb
mspec-1.5.9 lib/mspec/guards/conflict.rb
mspec-1.5.8 lib/mspec/guards/conflict.rb
mspec-1.5.5 lib/mspec/guards/conflict.rb
mspec-1.5.7 lib/mspec/guards/conflict.rb
mspec-1.5.6 lib/mspec/guards/conflict.rb