Sha256: 8a1fab2404ae4bead0178859ba09164a761f48e2dad4794c1337d8c82bcdfe4e
Contents?: true
Size: 1.46 KB
Versions: 1
Compression:
Stored size: 1.46 KB
Contents
module RSpec::RailsApp::ArtifactFile module Matchers class HaveRailsArtifactFiles include ::Rails3::Assist::Artifact::FileName include ArtifactFile::Matcher::Helper def initialize(artifact_type, *names) @names = names extend "Rails3::Assist::Artifact::#{artifact_type.to_s.camelize}".constantize handle_view artifact_type, names @artifact_type = artifact_type end def matches?(root_path, &block) labels = names.to_strings return false if labels.empty? begin labels.each do |name| @artifact_name = name @artifact_name = get_artifact_name return false if !File.file?(artifact_name) end yield if block true rescue false end end end def have_rails_artifact_files(artifact_type, *names) HaveRailsArtifactFiles.new(artifact_type, *names) end alias_method :contain_rails_artifact_files, :have_rails_artifact_files (::Rails3::Assist.artifacts - [:view]).each do |name| class_eval %{ def have_#{name}_files *names have_rails_artifact_files :#{name}, *names end alias_method :contain_#{name}_files, :have_#{name}_files } end def have_view_files *args have_rails_artifact_files :view, *args end alias_method :contain_view_files, :have_view_files end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rails-app-spec-0.2.10 | lib/rails_app_spec/matchers/artifact/have_rails_artifact_files.rb |