Sha256: 94d1da636c0bef061cd93fe1297ebfb2424d7d6ced50fc91c328a0971318b1ad
Contents?: true
Size: 1.35 KB
Versions: 1
Compression:
Stored size: 1.35 KB
Contents
module RSpec::RubyContentMatchers class IncludeModule attr_reader :module_name, :content def initialize module_name @module_name = module_name.to_s.camelize end def matches?(content) @content = content match_res = (content =~ /include\s+#{module_name}/) if block_given? && match_res ruby_content = content.extend(RSpec::RubyContent::Helpers) yield ruby_content else match_res end end def failure_message puts "Content: #{content}" if RSpec::Generator.debug? "Expected there to be an inclusion of module #{module_name}" end def negative_failure_message puts "Content: #{content}" if RSpec::Generator.debug? "Did not expect there to be an inclusion of module #{module_name}" end end def include_module(module_name) IncludeModule.new(module_name) end def be_dm_resource IncludeModule.new 'DataMapper::Resource' end def be_document(type, options=nil) doc_type = options == :embedded ? 'EmbeddedDocument' : 'Document' doc_orm = case type when :mongo_mapper 'MongoMapper' when :mongoid 'Mongoid' else raise ArgumentError, "Unknown document type #{type.inspect}" end IncludeModule.new "#{doc_orm}::#{doc_type}" end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
generator-spec-0.4.3 | lib/rspec_for_generators/matchers/content/include_module.rb |