wriggle 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore CHANGED
@@ -1,4 +1,5 @@
1
- coverage
2
- rdoc
3
- pkg
1
+ pkg/*
2
+ *.gem
3
+ .bundle
4
4
  .yardoc/
5
+ tmp/
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in wriggle.gemspec
4
+ gemspec
@@ -0,0 +1,26 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ wriggle (1.3.0)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ diff-lcs (1.1.2)
10
+ rspec (2.5.0)
11
+ rspec-core (~> 2.5.0)
12
+ rspec-expectations (~> 2.5.0)
13
+ rspec-mocks (~> 2.5.0)
14
+ rspec-core (2.5.1)
15
+ rspec-expectations (2.5.0)
16
+ diff-lcs (~> 1.1.2)
17
+ rspec-mocks (2.5.0)
18
+ yard (0.6.3)
19
+
20
+ PLATFORMS
21
+ ruby
22
+
23
+ DEPENDENCIES
24
+ rspec (~> 2.5)
25
+ wriggle!
26
+ yard (~> 0.6)
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2009 rspeicher
1
+ Copyright (c) 2011 Robert Speicher
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -7,23 +7,38 @@ A simple directory crawler DSL.
7
7
  require 'wriggle'
8
8
 
9
9
  wriggle '/path/to/files' do |w|
10
+ # Print a list of files
11
+ w.file { |path| puts path }
12
+
13
+ # Build a list of Rails controller files
14
+ controllers = []
15
+ w.files /_controller\.rb/ do |path|
16
+ controllers << path
17
+ end
18
+
19
+ # Print the path of any file named "spec_helper.rb"
20
+ w.file 'spec_helper.rb' { |path| puts path }
10
21
 
11
22
  # Build an array of Ruby code files
12
23
  ruby_files = []
13
- w.file :rb do |path|
24
+ w.extension :rb do |path|
14
25
  ruby_files << path
15
26
  end
16
27
 
17
28
  # Build an array of video files
18
29
  video_files = []
19
- w.file %w(mpg mpeg wmv avi mkv) do |path|
30
+ w.extensions %w(mpg mpeg wmv avi mkv) do |path|
20
31
  video_files << path
21
32
  end
22
33
 
23
34
  # Delete directories that are empty
24
- w.directory do |path|
35
+ w.directories do |path|
25
36
  Dir.rmdir(path) unless Dir.entries(path).length > 2
26
37
  end
38
+
39
+ # Print a list of directories matching "foo"
40
+ # NOTE: Matches "/baz/bar/foo" and "/foo" but not "/foo/bar/baz"
41
+ w.directory /foo/ { |path| puts path }
27
42
  end
28
43
 
29
44
  ## Note on Patches/Pull Requests
data/Rakefile CHANGED
@@ -1,21 +1,5 @@
1
- require 'rubygems'
2
- require 'rake'
3
-
4
- begin
5
- require 'jeweler'
6
- Jeweler::Tasks.new do |gem|
7
- gem.name = "wriggle"
8
- gem.summary = %Q{A simple directory crawler DSL.}
9
- gem.description = %Q{A simple directory crawler DSL.}
10
- gem.email = "rspeicher@gmail.com"
11
- gem.homepage = "http://github.com/tsigo/wriggle"
12
- gem.authors = ["Robert Speicher"]
13
- gem.add_development_dependency "rspec", "~> 2.0.0"
14
- end
15
- Jeweler::GemcutterTasks.new
16
- rescue LoadError
17
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
18
- end
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
19
3
 
20
4
  require 'rspec/core/rake_task'
21
5
  RSpec::Core::RakeTask.new(:spec)
@@ -25,7 +9,7 @@ begin
25
9
  require 'yard'
26
10
  YARD::Rake::YardocTask.new
27
11
  rescue LoadError
28
- task :yardoc do
29
- abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
12
+ task :yard do
13
+ abort "YARD is not available. In order to run yard, you must: sudo gem install yard"
30
14
  end
31
15
  end
@@ -9,23 +9,38 @@ require 'find'
9
9
  # require 'wriggle'
10
10
  #
11
11
  # wriggle '/path/to/files' do |w|
12
+ # # Print a list of files
13
+ # w.file { |path| puts path }
14
+ #
15
+ # # Build a list of Rails controller files
16
+ # controllers = []
17
+ # w.files /_controller\.rb/ do |path|
18
+ # controllers << path
19
+ # end
20
+ #
21
+ # # Print the path of any file named "spec_helper.rb"
22
+ # w.file 'spec_helper.rb' { |path| puts path }
12
23
  #
13
24
  # # Build an array of Ruby code files
14
25
  # ruby_files = []
15
- # w.file :rb do |path|
26
+ # w.extension :rb do |path|
16
27
  # ruby_files << path
17
28
  # end
18
29
  #
19
30
  # # Build an array of video files
20
31
  # video_files = []
21
- # w.file %w(mpg mpeg wmv avi mkv) do |path|
32
+ # w.extensions %w(mpg mpeg wmv avi mkv) do |path|
22
33
  # video_files << path
23
34
  # end
24
35
  #
25
36
  # # Delete directories that are empty
26
- # w.directory do |path|
37
+ # w.directories do |path|
27
38
  # Dir.rmdir(path) unless Dir.entries(path).length > 2
28
39
  # end
40
+ #
41
+ # # Print a list of directories matching "foo"
42
+ # # NOTE: Matches "/baz/bar/foo" and "/foo" but not "/foo/bar/baz"
43
+ # w.directory /foo/ { |path| puts path }
29
44
  # end
30
45
  module Wriggle
31
46
  # Crawl the given +path+
@@ -38,72 +53,124 @@ module Wriggle
38
53
  end
39
54
 
40
55
  class Wriggle
41
- attr_accessor :root, :file_blocks, :directory_blocks
42
-
43
56
  def initialize(root, &block)
44
57
  @root = root
45
58
  @file_blocks = []
46
59
  @directory_blocks = []
60
+ @extension_blocks = []
47
61
 
48
62
  crawl(&block)
49
63
  end
50
64
 
51
- def crawl(&block)
52
- yield self
53
-
54
- Find.find(root) do |current|
55
- if File.file?(current)
56
- dispatch_file(current)
57
- elsif File.directory?(current)
58
- dispatch_directory(current)
59
- end
60
- end
65
+ # Define a block to be called when a file is encountered
66
+ #
67
+ # @example All files
68
+ # file { |file| ... }
69
+ #
70
+ # @yield [path] Full, absolute file path
71
+ # @raise ArgumentError When no block provided
72
+ def file(*names, &block)
73
+ raise ArgumentError, "a block is required" unless block_given?
74
+ @file_blocks << {:names => names.flatten, :block => block}
61
75
  end
62
76
 
63
- # Define a block to be called when a file is encountered
77
+ # Define a block to be called when a directory is encountered
64
78
  #
65
- # Provide one or more extensions to limit the files yielded.
79
+ # Provide one or more patterns to match the directory's basename against
66
80
  #
67
- # == Examples:
68
- # file :rb { |file| ... }
69
- # file :rb, :rdoc { |file| ... }
70
- # file %w(mpeg mpeg wmv avi mkv) { |file| ... }
81
+ # @example All directories
82
+ # directory { |dir| ... }
83
+ # @example Directories matching <tt>/lib/</tt>
84
+ # directory /lib/ { |dir| ... }
85
+ # @example Directories matching <tt>/lib/</tt> or <tt>/spec/</tt>
86
+ # directories /lib/, /spec/ { |dir| ... }
71
87
  #
88
+ # @param [Array] patterns Limit the yielded directory paths only to those matching the provided pattern(s)
89
+ # @yield [path] Full, absolute directory path
72
90
  # @raise ArgumentError When no block provided
73
- def file(*extensions, &block)
91
+ def directory(*patterns, &block)
74
92
  raise ArgumentError, "a block is required" unless block_given?
75
- file_blocks << {:ext => extensions.flatten, :block => block}
93
+ @directory_blocks << {:pattern => patterns.flatten, :block => block}
76
94
  end
77
95
 
78
- # Define a block to be called when a directory is encountered
96
+ # Define a block to be called when a file of a certain extension is encountered
97
+ #
98
+ # @example All <tt>.rb</tt> files
99
+ # extension '.rb' { |file| ... }
100
+ # @example All <tt>.rb</tt> or <tt>.erb</tt> files
101
+ # extensions :rb, :erb { |file| ... }
102
+ # @example All video files
103
+ # extensions %w(mpeg mpeg wmv avi mkv) { |file| ... }
79
104
  #
105
+ # @param [Array] extensions Limit the yielded file paths to the provided extensions
106
+ # @yield [path] Full, absolute file path
80
107
  # @raise ArgumentError When no block provided
81
- def directory(&block)
108
+ # @raise ArgumentError When no extension argument provided
109
+ def extension(*extensions, &block)
82
110
  raise ArgumentError, "a block is required" unless block_given?
83
- directory_blocks << {:block => block}
111
+ raise ArgumentError, "at least one extension is required" unless extensions.length > 0
112
+ @extension_blocks << {:ext => extensions.flatten, :block => block}
84
113
  end
85
114
 
115
+ alias_method :files, :file
116
+ alias_method :directories, :directory
117
+ alias_method :extensions, :extension
118
+
86
119
  private
87
120
 
121
+ # Yields <tt>self</tt> to allow the user to define file/directory blocks, and then
122
+ # crawl the root directory, dispatching the user's defined blocks as each
123
+ # file type is encountered
124
+ def crawl(&block)
125
+ yield self
126
+
127
+ Find.find(@root) do |current|
128
+ if File.file?(current)
129
+ dispatch_file(current)
130
+ elsif File.directory?(current)
131
+ dispatch_directory(current)
132
+ end
133
+ end
134
+ end
135
+
136
+ # Called whenever <tt>crawl</tt> encounters a file
137
+ #
138
+ # Handles both <tt>file_blocks</tt> and <tt>extension_blocks</tt>.
88
139
  def dispatch_file(path)
89
140
  extension = File.extname(path)
90
141
 
91
- file_blocks.each do |group|
92
- if group[:ext].empty?
142
+ @file_blocks.each do |group|
143
+ if group[:names].empty?
93
144
  group[:block].call(path)
94
145
  else
95
- # Requested specific extensions only
96
- # Check if any of the extensions match the current file's extension (with or without the period)
97
- if group[:ext].any? { |v| v.to_s == extension or v.to_s == extension[1..-1] }
146
+ filename = File.basename(path)
147
+ if group[:names].any? { |v| (v.is_a?(String) and filename == v) or (v.is_a?(Regexp) and filename =~ v) }
98
148
  group[:block].call(path)
99
149
  end
100
150
  end
101
151
  end
152
+
153
+ @extension_blocks.each do |group|
154
+ # Check if any of the extensions match the current file's extension (with or without the period)
155
+ if group[:ext].any? { |v| v.to_s == extension or v.to_s == extension[1..-1] }
156
+ group[:block].call(path)
157
+ end
158
+ end
102
159
  end
103
160
 
161
+ # Called whenever <tt>crawl</tt> encounters a file
104
162
  def dispatch_directory(path)
105
- directory_blocks.each do |group|
106
- group[:block].call(path)
163
+ @directory_blocks.each do |group|
164
+ if group[:pattern].empty?
165
+ group[:block].call(path)
166
+ else
167
+ # User requested only directories matching a certain pattern
168
+ # Check if any of the patterns match the directory name
169
+ base = File.basename(path)
170
+ if group[:pattern].any? { |v| base =~ v }
171
+ group[:block].call(path)
172
+ end
173
+ end
107
174
  end
108
175
  end
109
176
  end
@@ -0,0 +1,3 @@
1
+ module Wriggle
2
+ VERSION = "1.3.0"
3
+ end
@@ -3,5 +3,9 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
3
 
4
4
  require 'wriggle'
5
5
 
6
+ Dir[File.expand_path('../support/**/*.rb', __FILE__)].each { |f| require f }
7
+
6
8
  RSpec.configure do |config|
9
+ config.before(:all) { TemporaryFiles.setup }
10
+ config.after(:all) { TemporaryFiles.teardown }
7
11
  end
@@ -0,0 +1,79 @@
1
+ require 'fileutils'
2
+
3
+ module TemporaryFiles
4
+ def self.path
5
+ File.expand_path("../../../tmp", __FILE__)
6
+ end
7
+
8
+ def self.setup
9
+ path = self.path
10
+
11
+ files = %w(app/views/wishlists/index.html.haml
12
+ app/views/shared/_moderation.html.haml
13
+ app/views/shared/_maintitle.html.haml
14
+ app/views/shared/_form_errors.html.haml
15
+ app/views/shared/_contextual_search.html.haml
16
+ app/views/members/wishlists/update.js.rjs
17
+ app/views/members/wishlists/new.html.haml
18
+ app/views/members/wishlists/index.lua.erb
19
+ app/views/members/wishlists/index.html.haml
20
+ app/views/members/wishlists/edit.html.haml
21
+ app/views/members/wishlists/create.js.rjs
22
+ app/views/members/wishlists/_wishlist_row.html.haml
23
+ app/views/members/wishlists/_form.html.haml
24
+ app/views/members/show.html.haml
25
+ app/views/members/new.html.haml
26
+ app/views/members/index.lua.erb
27
+ app/views/members/index.html.haml
28
+ app/views/members/edit.html.haml
29
+ app/views/members/_form.html.haml
30
+ app/views/layouts/application.lua.erb
31
+ app/views/layouts/application.html.haml
32
+ app/views/items/show.html.haml
33
+ app/views/items/new.html.haml
34
+ app/views/items/index.html.haml
35
+ app/views/items/edit.html.haml
36
+ app/views/items/_form.html.haml
37
+ app/sweepers/index_sweeper.rb
38
+ app/models/zone.rb
39
+ app/models/wishlist.rb
40
+ app/models/user_session.rb
41
+ app/models/user.rb
42
+ app/models/session.rb
43
+ app/models/raid.rb
44
+ app/models/member_rank.rb
45
+ app/models/member.rb
46
+ app/models/loot_table.rb
47
+ app/models/loot.rb
48
+ app/models/live_raid.rb
49
+ app/models/live_loot.rb
50
+ app/models/live_attendee.rb
51
+ app/models/item_price.rb
52
+ app/models/item.rb
53
+ app/models/completed_achievement.rb
54
+ app/models/boss.rb
55
+ app/models/attendee.rb
56
+ app/models/achievement.rb
57
+ app/helpers/members_helper.rb
58
+ app/helpers/members/wishlists_helper.rb
59
+ app/helpers/items_helper.rb
60
+ app/helpers/application_helper.rb
61
+ app/controllers/wishlists_controller.rb
62
+ app/controllers/user_sessions_controller.rb
63
+ app/controllers/searches_controller.rb
64
+ app/controllers/members_controller.rb
65
+ app/controllers/members/wishlists_controller.rb
66
+ app/controllers/items_controller.rb
67
+ app/controllers/application_controller.rb)
68
+
69
+ files.each do |file|
70
+ file = File.join(path, file)
71
+ FileUtils.mkdir_p(File.dirname(file))
72
+ FileUtils.touch(file)
73
+ end
74
+ end
75
+
76
+ def self.teardown
77
+ FileUtils.rm_rf(self.path)
78
+ end
79
+ end
@@ -1,73 +1,152 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Wriggle do
4
- # 1.8.7's Find uses relative paths, while 1.9.2's uses absolutes,
5
- # so we'll call expand_path and make sure our specs use this method
6
- def valid_dir
7
- File.expand_path(File.dirname(__FILE__))
8
- end
9
-
10
4
  it "should require a path argument" do
11
- lambda { wriggle() {} }.should raise_error(ArgumentError)
5
+ expect { wriggle() {} }.to raise_error(ArgumentError)
12
6
  end
13
7
 
14
8
  it "should raise an ArgumentError when given an invalid path" do
15
- lambda { wriggle('/path/to/nothing') {} }.should raise_error(ArgumentError, /does not exist/)
9
+ expect { wriggle('/path/to/nothing') {} }.to raise_error(ArgumentError, /does not exist/)
16
10
  end
17
11
 
18
12
  it "should raise an ArgumentError when given a non-directory" do
19
- lambda { wriggle(__FILE__) {} }.should raise_error(ArgumentError, /is not a directory/)
13
+ expect { wriggle(__FILE__) {} }.to raise_error(ArgumentError, /is not a directory/)
14
+ end
15
+
16
+ it "should alias 'files' to 'file'" do
17
+ expect { wriggle(TemporaryFiles.path) { |w| w.files } }.to_not raise_error(NoMethodError)
18
+ end
19
+
20
+ it "should alias 'directories' to 'directory'" do
21
+ expect { wriggle(TemporaryFiles.path) { |w| w.directories } }.to_not raise_error(NoMethodError)
20
22
  end
21
23
 
22
- context "given a valid path" do
23
- describe "#file" do
24
- it "should raise an ArgumentError when not given a block" do
25
- lambda { wriggle(valid_dir) { |w| w.file } }.should raise_error(ArgumentError, /a block is required/)
24
+ it "should alias 'extensions' to 'extension'" do
25
+ expect { wriggle(TemporaryFiles.path) { |w| w.extensions } }.to_not raise_error(NoMethodError)
26
+ end
27
+ end
28
+
29
+ describe Wriggle, "#file" do
30
+ it "should raise an ArgumentError when not given a block" do
31
+ expect { wriggle(TemporaryFiles.path) { |w| w.file } }.to raise_error(ArgumentError, /a block is required/)
32
+ end
33
+
34
+ it "should only include files matching a pattern when given a regex argument" do
35
+ actual = []
36
+ wriggle(TemporaryFiles.path) do |w|
37
+ w.file /controller/ do |path|
38
+ actual << path
26
39
  end
40
+ end
41
+
42
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members_controller.rb")
43
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members/wishlists_controller.rb")
44
+ actual.should_not include("#{TemporaryFiles.path}/app/controllers")
45
+ actual.should_not include("#{TemporaryFiles.path}/app/helpers/items_helper.rb")
46
+ end
47
+
48
+ it "should only include files matching a string when given a string argument" do
49
+ actual = []
50
+ wriggle(TemporaryFiles.path) do |w|
51
+ w.file 'members_controller.rb', 'wishlists_controller.rb' do |path|
52
+ actual << path
53
+ end
54
+ end
55
+
56
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members_controller.rb")
57
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members/wishlists_controller.rb")
58
+ actual.should include("#{TemporaryFiles.path}/app/controllers/wishlists_controller.rb")
59
+ actual.should_not include("#{TemporaryFiles.path}/app/controllers")
60
+ actual.should_not include("#{TemporaryFiles.path}/app/helpers/items_helper.rb")
61
+ end
27
62
 
28
- it "should not include directories when only a file block is provided" do
29
- actual = []
30
- wriggle(valid_dir) do |w|
31
- w.file do |path|
32
- actual << path
33
- end
34
- end
35
-
36
- actual.should include("#{valid_dir}/empty.txt")
37
- actual.should include("#{valid_dir}/wriggle_spec.rb")
38
- actual.should_not include("#{valid_dir}/spec")
63
+ it "should not include directories when only a file block is provided" do
64
+ actual = []
65
+ wriggle(TemporaryFiles.path) do |w|
66
+ w.file do |path|
67
+ actual << path
39
68
  end
69
+ end
70
+
71
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members_controller.rb")
72
+ actual.should include("#{TemporaryFiles.path}/app/models/item.rb")
73
+ actual.should include("#{TemporaryFiles.path}/app/views/layouts/application.lua.erb")
74
+ actual.should include("#{TemporaryFiles.path}/app/views/layouts/application.html.haml")
75
+ actual.should include("#{TemporaryFiles.path}/app/views/members/wishlists/create.js.rjs")
76
+ actual.should_not include("#{TemporaryFiles.path}/app/views/")
77
+ end
78
+ end
79
+
80
+ describe Wriggle, "#directory" do
81
+ it "should raise an ArgumentError when not given a block" do
82
+ expect { wriggle(TemporaryFiles.path) { |w| w.directory } }.to raise_error(ArgumentError, /a block is required/)
83
+ end
40
84
 
41
- it "should only include files of the type specified" do
42
- actual = []
43
- wriggle(valid_dir) do |w|
44
- w.file :rb do |path|
45
- actual << path
46
- end
47
- end
48
-
49
- actual.should include("#{valid_dir}/wriggle_spec.rb")
50
- actual.should_not include("#{valid_dir}/empty.txt")
51
- actual.should_not include("#{valid_dir}")
85
+ it "should not include files when only a directory block is provided" do
86
+ actual = []
87
+ wriggle(TemporaryFiles.path) do |w|
88
+ w.directory do |path|
89
+ actual << path
52
90
  end
53
91
  end
54
92
 
55
- describe "#directory" do
56
- it "should raise an ArgumentError when not given a block" do
57
- lambda { wriggle(valid_dir) { |w| w.directory } }.should raise_error(ArgumentError, /a block is required/)
93
+ actual.should include("#{TemporaryFiles.path}")
94
+ actual.should include("#{TemporaryFiles.path}/app")
95
+ actual.should include("#{TemporaryFiles.path}/app/models")
96
+ actual.should_not include("#{TemporaryFiles.path}/models/member.rb")
97
+ end
98
+
99
+ it "should only include directories matching a pattern when given an argument" do
100
+ actual = []
101
+ wriggle(TemporaryFiles.path) do |w|
102
+ w.directory /member/, /model/ do |path|
103
+ actual << path
58
104
  end
105
+ end
59
106
 
60
- it "should not include files when only a directory block is provided" do
61
- actual = []
62
- wriggle(valid_dir) do |w|
63
- w.directory do |path|
64
- actual << path
65
- end
66
- end
107
+ actual.should include("#{TemporaryFiles.path}/app/controllers/members")
108
+ actual.should include("#{TemporaryFiles.path}/app/helpers/members")
109
+ actual.should include("#{TemporaryFiles.path}/app/views/members")
110
+ actual.should_not include("#{TemporaryFiles.path}/app/views/members/wishlists")
111
+ actual.should include("#{TemporaryFiles.path}/app/models")
112
+ actual.should_not include("#{TemporaryFiles.path}/app/views/items")
113
+ actual.should_not include("#{TemporaryFiles.path}/app/views/layouts")
114
+ end
115
+ end
116
+
117
+ describe Wriggle, "#extension" do
118
+ it "should raise an ArgumentError when not given a block" do
119
+ expect { wriggle(TemporaryFiles.path) { |w| w.extension(:rb) } }.to raise_error(ArgumentError, /a block is required/)
120
+ end
121
+
122
+ it "should raise an ArgumentError when not given any extensions to match" do
123
+ expect { wriggle(TemporaryFiles.path) { |w| w.extension {} } }.to raise_error(ArgumentError, /at least one extension is required/)
124
+ end
67
125
 
68
- actual.should include("#{valid_dir}")
69
- actual.should_not include("#{valid_dir}/wriggle_spec.rb")
126
+ it "should only include files of the extension specified" do
127
+ ruby, view = [], []
128
+ wriggle(TemporaryFiles.path) do |w|
129
+ w.extension :rb, :erb do |path|
130
+ ruby << path
131
+ end
132
+
133
+ w.extension %w(rjs haml) do |path|
134
+ view << path
70
135
  end
71
136
  end
137
+
138
+ ruby.should include("#{TemporaryFiles.path}/app/controllers/members_controller.rb")
139
+ ruby.should include("#{TemporaryFiles.path}/app/models/item.rb")
140
+ ruby.should include("#{TemporaryFiles.path}/app/views/layouts/application.lua.erb")
141
+ ruby.should_not include("#{TemporaryFiles.path}/app/views/layouts/application.html.haml")
142
+ ruby.should_not include("#{TemporaryFiles.path}/app/views/members/wishlists/create.js.rjs")
143
+ ruby.should_not include("#{TemporaryFiles.path}/app/views/")
144
+
145
+ view.should_not include("#{TemporaryFiles.path}/app/controllers/members_controller.rb")
146
+ view.should_not include("#{TemporaryFiles.path}/app/models/item.rb")
147
+ view.should_not include("#{TemporaryFiles.path}/app/views/layouts/application.lua.erb")
148
+ view.should include("#{TemporaryFiles.path}/app/views/layouts/application.html.haml")
149
+ view.should include("#{TemporaryFiles.path}/app/views/members/wishlists/create.js.rjs")
150
+ view.should_not include("#{TemporaryFiles.path}/app/views/")
72
151
  end
73
152
  end
@@ -1,55 +1,21 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
1
  # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "wriggle/version"
5
4
 
6
5
  Gem::Specification.new do |s|
7
- s.name = %q{wriggle}
8
- s.version = "1.2.0"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Robert Speicher"]
12
- s.date = %q{2010-12-14}
6
+ s.name = "wriggle"
7
+ s.version = Wriggle::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Robert Speicher"]
10
+ s.email = ["rspeicher@gmail.com"]
11
+ s.homepage = "http://github.com/tsigo/wriggle"
12
+ s.summary = %q{A simple directory crawler DSL}
13
13
  s.description = %q{A simple directory crawler DSL.}
14
- s.email = %q{rspeicher@gmail.com}
15
- s.extra_rdoc_files = [
16
- "LICENSE",
17
- "README.md"
18
- ]
19
- s.files = [
20
- ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.md",
24
- "Rakefile",
25
- "VERSION",
26
- "lib/wriggle.rb",
27
- "spec/empty.txt",
28
- "spec/spec_helper.rb",
29
- "spec/wriggle_spec.rb",
30
- "wriggle.gemspec"
31
- ]
32
- s.homepage = %q{http://github.com/tsigo/wriggle}
33
- s.rdoc_options = ["--charset=UTF-8"]
34
- s.require_paths = ["lib"]
35
- s.rubygems_version = %q{1.3.7}
36
- s.summary = %q{A simple directory crawler DSL.}
37
- s.test_files = [
38
- "spec/spec_helper.rb",
39
- "spec/wriggle_spec.rb"
40
- ]
41
14
 
42
- if s.respond_to? :specification_version then
43
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
44
- s.specification_version = 3
15
+ s.files = `git ls-files`.split("\n")
16
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
+ s.require_paths = ["lib"]
45
18
 
46
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
47
- s.add_development_dependency(%q<rspec>, ["~> 2.0.0"])
48
- else
49
- s.add_dependency(%q<rspec>, ["~> 2.0.0"])
50
- end
51
- else
52
- s.add_dependency(%q<rspec>, ["~> 2.0.0"])
53
- end
19
+ s.add_development_dependency "rspec", "~> 2.5"
20
+ s.add_development_dependency "yard", "~> 0.6"
54
21
  end
55
-
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wriggle
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 2
9
- - 0
10
- version: 1.2.0
4
+ prerelease:
5
+ version: 1.3.0
11
6
  platform: ruby
12
7
  authors:
13
8
  - Robert Speicher
@@ -15,7 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2010-12-14 00:00:00 -05:00
13
+ date: 2011-03-09 00:00:00 -05:00
19
14
  default_executable:
20
15
  dependencies:
21
16
  - !ruby/object:Gem::Dependency
@@ -26,33 +21,41 @@ dependencies:
26
21
  requirements:
27
22
  - - ~>
28
23
  - !ruby/object:Gem::Version
29
- hash: 15
30
- segments:
31
- - 2
32
- - 0
33
- - 0
34
- version: 2.0.0
24
+ version: "2.5"
35
25
  type: :development
36
26
  version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: yard
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
31
+ none: false
32
+ requirements:
33
+ - - ~>
34
+ - !ruby/object:Gem::Version
35
+ version: "0.6"
36
+ type: :development
37
+ version_requirements: *id002
37
38
  description: A simple directory crawler DSL.
38
- email: rspeicher@gmail.com
39
+ email:
40
+ - rspeicher@gmail.com
39
41
  executables: []
40
42
 
41
43
  extensions: []
42
44
 
43
- extra_rdoc_files:
44
- - LICENSE
45
- - README.md
45
+ extra_rdoc_files: []
46
+
46
47
  files:
47
48
  - .document
48
49
  - .gitignore
50
+ - Gemfile
51
+ - Gemfile.lock
49
52
  - LICENSE
50
53
  - README.md
51
54
  - Rakefile
52
- - VERSION
53
55
  - lib/wriggle.rb
54
- - spec/empty.txt
56
+ - lib/wriggle/version.rb
55
57
  - spec/spec_helper.rb
58
+ - spec/support/temporary_files.rb
56
59
  - spec/wriggle_spec.rb
57
60
  - wriggle.gemspec
58
61
  has_rdoc: true
@@ -60,8 +63,8 @@ homepage: http://github.com/tsigo/wriggle
60
63
  licenses: []
61
64
 
62
65
  post_install_message:
63
- rdoc_options:
64
- - --charset=UTF-8
66
+ rdoc_options: []
67
+
65
68
  require_paths:
66
69
  - lib
67
70
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -69,26 +72,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
69
72
  requirements:
70
73
  - - ">="
71
74
  - !ruby/object:Gem::Version
72
- hash: 3
73
- segments:
74
- - 0
75
75
  version: "0"
76
76
  required_rubygems_version: !ruby/object:Gem::Requirement
77
77
  none: false
78
78
  requirements:
79
79
  - - ">="
80
80
  - !ruby/object:Gem::Version
81
- hash: 3
82
- segments:
83
- - 0
84
81
  version: "0"
85
82
  requirements: []
86
83
 
87
84
  rubyforge_project:
88
- rubygems_version: 1.3.7
85
+ rubygems_version: 1.6.1
89
86
  signing_key:
90
87
  specification_version: 3
91
- summary: A simple directory crawler DSL.
88
+ summary: A simple directory crawler DSL
92
89
  test_files:
93
90
  - spec/spec_helper.rb
91
+ - spec/support/temporary_files.rb
94
92
  - spec/wriggle_spec.rb
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 1.2.0
File without changes