kicker 2.4.0 → 2.5.0

Sign up to get free protection for your applications and to get access to all the features.
data/.kick DELETED
@@ -1,37 +0,0 @@
1
- recipe :ignore
2
- recipe :ruby
3
-
4
- process do |files|
5
- test_files = files.take_and_map do |file|
6
- case file
7
- when %r{^lib/kicker(\.rb|/validate\.rb|/growl\.rb)$}
8
- ["test/initialization_test.rb", ("test/filesystem_change_test.rb" if $1 == '.rb')]
9
- when %r{^lib/kicker/(.+)\.rb$}
10
- "test/#{$1}_test.rb"
11
- end
12
- end
13
-
14
- Ruby.run_tests test_files
15
- end
16
-
17
- process do |files|
18
- execute("rake docs:generate && open -a Safari html/index.html") if files.delete("README.rdoc")
19
- end
20
-
21
- startup do
22
- log "Good choice mate!"
23
- end
24
-
25
- # process do
26
- # execute "ls -l" do |status|
27
- # if status.before?
28
- # status.stdout? ? "Here we go!: #{status.command}" : "Here we go! GROWL"
29
- # elsif status.after?
30
- # if status.success?
31
- # status.stdout? ? "Nice!\n\n#{status.output}" : "Nice!"
32
- # else
33
- # status.stdout? ? "Damn brow!\n\n#{status.output}" : "Damn bro!"
34
- # end
35
- # end
36
- # end
37
- # end
data/.travis.yml DELETED
@@ -1,6 +0,0 @@
1
- rvm:
2
- - 1.9.3
3
- - 1.9.2
4
- - 1.8.7
5
-
6
- script: "rake"
data/Gemfile DELETED
@@ -1,11 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- gem 'rake'
4
-
5
- group :development do
6
- gem 'mocha'
7
- gem 'test-spec'
8
- gem 'activesupport'
9
- gem 'rb-fsevent'
10
- gem 'jeweler'
11
- end
data/Gemfile.lock DELETED
@@ -1,34 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- activesupport (3.2.1)
5
- i18n (~> 0.6)
6
- multi_json (~> 1.0)
7
- git (1.2.5)
8
- i18n (0.6.0)
9
- jeweler (1.8.3)
10
- bundler (~> 1.0)
11
- git (>= 1.2.5)
12
- rake
13
- rdoc
14
- json (1.6.5)
15
- metaclass (0.0.1)
16
- mocha (0.10.3)
17
- metaclass (~> 0.0.1)
18
- multi_json (1.0.4)
19
- rake (0.9.2.2)
20
- rb-fsevent (0.9.0)
21
- rdoc (3.12)
22
- json (~> 1.4)
23
- test-spec (0.10.0)
24
-
25
- PLATFORMS
26
- ruby
27
-
28
- DEPENDENCIES
29
- activesupport
30
- jeweler
31
- mocha
32
- rake
33
- rb-fsevent
34
- test-spec
data/Rakefile DELETED
@@ -1,37 +0,0 @@
1
- require 'rubygems'
2
- require 'rake'
3
- require 'rake/testtask'
4
- require 'rake/rdoctask'
5
-
6
- begin
7
- require 'jeweler'
8
- Jeweler::Tasks.new do |gem|
9
- gem.name = "kicker"
10
- gem.summary = %Q{A lean, agnostic, flexible file-change watcher, using OS X FSEvents.}
11
- gem.email = "eloy.de.enige@gmail.com"
12
- gem.homepage = "http://github.com/alloy/kicker"
13
- gem.authors = ["Eloy Duran"]
14
- gem.files.concat FileList['vendor/**/*']
15
- gem.require_paths = ["lib", "vendor"]
16
- gem.has_rdoc = true
17
- gem.add_dependency 'rb-fsevent'
18
- end
19
- rescue LoadError
20
- puts "Jeweler not available. Install it with: sudo gem install jeweler -s http://gems.github.com"
21
- end
22
-
23
- Rake::TestTask.new do |t|
24
- t.libs << "test"
25
- t.test_files = FileList['test/**/*_test.rb']
26
- t.options = '-rs'
27
- end
28
-
29
- namespace :docs do
30
- Rake::RDocTask.new('generate') do |t|
31
- t.main = "README.rdoc"
32
- t.rdoc_files.include("README.rdoc", "lib/**/*.rb")
33
- t.options << '--charset=utf8'
34
- end
35
- end
36
-
37
- task :default => :test
data/TODO.rdoc DELETED
@@ -1,5 +0,0 @@
1
- * Move larger parts of README to the GitHub wiki so the README is to the point.
2
- * Add a recipe which implements the basic autotest mapping API.
3
- * Make the loggers, stdout and growl, work in a chain so one can add others.
4
- This should improve portability as well, as people can easily insert growl
5
- alternatives for their platform.
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 2.4.0
data/kicker.gemspec DELETED
@@ -1,106 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{kicker}
8
- s.version = "2.4.0"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Eloy Duran"]
12
- s.date = %q{2012-02-03}
13
- s.default_executable = %q{kicker}
14
- s.email = %q{eloy.de.enige@gmail.com}
15
- s.executables = ["kicker"]
16
- s.extra_rdoc_files = [
17
- "LICENSE",
18
- "README.rdoc"
19
- ]
20
- s.files = [
21
- ".kick",
22
- ".travis.yml",
23
- "Gemfile",
24
- "Gemfile.lock",
25
- "LICENSE",
26
- "README.rdoc",
27
- "Rakefile",
28
- "TODO.rdoc",
29
- "VERSION",
30
- "bin/kicker",
31
- "html/images/kikker.jpg",
32
- "kicker.gemspec",
33
- "lib/kicker.rb",
34
- "lib/kicker/callback_chain.rb",
35
- "lib/kicker/core_ext.rb",
36
- "lib/kicker/fsevents.rb",
37
- "lib/kicker/growl.rb",
38
- "lib/kicker/log_status_helper.rb",
39
- "lib/kicker/options.rb",
40
- "lib/kicker/recipes.rb",
41
- "lib/kicker/recipes/could_not_handle_file.rb",
42
- "lib/kicker/recipes/dot_kick.rb",
43
- "lib/kicker/recipes/execute_cli_command.rb",
44
- "lib/kicker/recipes/ignore.rb",
45
- "lib/kicker/recipes/jstest.rb",
46
- "lib/kicker/recipes/rails.rb",
47
- "lib/kicker/recipes/ruby.rb",
48
- "lib/kicker/utils.rb",
49
- "test/callback_chain_test.rb",
50
- "test/core_ext_test.rb",
51
- "test/filesystem_change_test.rb",
52
- "test/fixtures/a_file_thats_reloaded.rb",
53
- "test/fsevents_test.rb",
54
- "test/growl_test.rb",
55
- "test/initialization_test.rb",
56
- "test/log_status_helper_test.rb",
57
- "test/options_test.rb",
58
- "test/recipes/could_not_handle_file_test.rb",
59
- "test/recipes/dot_kick_test.rb",
60
- "test/recipes/execute_cli_command_test.rb",
61
- "test/recipes/ignore_test.rb",
62
- "test/recipes/jstest_test.rb",
63
- "test/recipes/rails_test.rb",
64
- "test/recipes/ruby_test.rb",
65
- "test/recipes_test.rb",
66
- "test/test_helper.rb",
67
- "test/utils_test.rb",
68
- "vendor/growlnotifier/growl.rb",
69
- "vendor/growlnotifier/growl_helpers.rb"
70
- ]
71
- s.homepage = %q{http://github.com/alloy/kicker}
72
- s.require_paths = ["lib", "vendor"]
73
- s.rubygems_version = %q{1.6.2}
74
- s.summary = %q{A lean, agnostic, flexible file-change watcher, using OS X FSEvents.}
75
-
76
- if s.respond_to? :specification_version then
77
- s.specification_version = 3
78
-
79
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
80
- s.add_runtime_dependency(%q<rake>, [">= 0"])
81
- s.add_development_dependency(%q<mocha>, [">= 0"])
82
- s.add_development_dependency(%q<test-spec>, [">= 0"])
83
- s.add_development_dependency(%q<activesupport>, [">= 0"])
84
- s.add_development_dependency(%q<rb-fsevent>, [">= 0"])
85
- s.add_development_dependency(%q<jeweler>, [">= 0"])
86
- s.add_runtime_dependency(%q<rb-fsevent>, [">= 0"])
87
- else
88
- s.add_dependency(%q<rake>, [">= 0"])
89
- s.add_dependency(%q<mocha>, [">= 0"])
90
- s.add_dependency(%q<test-spec>, [">= 0"])
91
- s.add_dependency(%q<activesupport>, [">= 0"])
92
- s.add_dependency(%q<rb-fsevent>, [">= 0"])
93
- s.add_dependency(%q<jeweler>, [">= 0"])
94
- s.add_dependency(%q<rb-fsevent>, [">= 0"])
95
- end
96
- else
97
- s.add_dependency(%q<rake>, [">= 0"])
98
- s.add_dependency(%q<mocha>, [">= 0"])
99
- s.add_dependency(%q<test-spec>, [">= 0"])
100
- s.add_dependency(%q<activesupport>, [">= 0"])
101
- s.add_dependency(%q<rb-fsevent>, [">= 0"])
102
- s.add_dependency(%q<jeweler>, [">= 0"])
103
- s.add_dependency(%q<rb-fsevent>, [">= 0"])
104
- end
105
- end
106
-
@@ -1,165 +0,0 @@
1
- require File.expand_path('../test_helper', __FILE__)
2
-
3
- describe "Kicker, concerning its callback chains" do
4
- before do
5
- @chains = [:startup_chain, :pre_process_chain, :process_chain, :post_process_chain, :full_chain]
6
- end
7
-
8
- it "should return the callback chain instances" do
9
- @chains.each do |chain|
10
- Kicker.send(chain).should.be.instance_of Kicker::CallbackChain
11
- end
12
- end
13
-
14
- it "should be accessible by an instance" do
15
- kicker = Kicker.new
16
-
17
- @chains.each do |chain|
18
- kicker.send(chain).should == Kicker.send(chain)
19
- end
20
- end
21
-
22
- it "should provide a shortcut method which appends a callback to the startup chain" do
23
- Kicker.startup_chain.expects(:append_callback).with do |callback|
24
- callback.call == :from_callback
25
- end
26
-
27
- startup { :from_callback }
28
- end
29
-
30
- it "should provide a shortcut method which appends a callback to the pre-process chain" do
31
- Kicker.pre_process_chain.expects(:append_callback).with do |callback|
32
- callback.call == :from_callback
33
- end
34
-
35
- pre_process { :from_callback }
36
- end
37
-
38
- it "should provide a shortcut method which appends a callback to the process chain" do
39
- Kicker.process_chain.expects(:append_callback).with do |callback|
40
- callback.call == :from_callback
41
- end
42
-
43
- process { :from_callback }
44
- end
45
-
46
- it "should provide a shortcut method which prepends a callback to the post-process chain" do
47
- Kicker.post_process_chain.expects(:prepend_callback).with do |callback|
48
- callback.call == :from_callback
49
- end
50
-
51
- post_process { :from_callback }
52
- end
53
-
54
- it "should have assigned the chains to the `full_chain' (except startup_chain)" do
55
- Kicker.full_chain.length.should == 3
56
- Kicker.full_chain.each_with_index do |chain, index|
57
- chain.should.be Kicker.send(@chains[index + 1])
58
- end
59
- end
60
- end
61
-
62
- describe "Kicker::CallbackChain" do
63
- it "should be a subclass of Array" do
64
- Kicker::CallbackChain.superclass.should.be Array
65
- end
66
- end
67
-
68
- describe "An instance of Kicker::CallbackChain, concerning it's API" do
69
- before do
70
- @chain = Kicker::CallbackChain.new
71
-
72
- @callback1 = lambda {}
73
- @callback2 = lambda {}
74
- end
75
-
76
- it "should append a callback" do
77
- @chain << @callback1
78
- @chain.append_callback(@callback2)
79
-
80
- @chain.should == [@callback1, @callback2]
81
- end
82
-
83
- it "should prepend a callback" do
84
- @chain << @callback1
85
- @chain.prepend_callback(@callback2)
86
-
87
- @chain.should == [@callback2, @callback1]
88
- end
89
- end
90
-
91
- describe "An instance of Kicker::CallbackChain, when calling the chain" do
92
- before do
93
- @chain = Kicker::CallbackChain.new
94
- @result = []
95
- end
96
-
97
- it "should call the callbacks from first to last" do
98
- @chain.append_callback lambda { @result << 1 }
99
- @chain.append_callback lambda { @result << 2 }
100
- @chain.call(%w{ file })
101
- @result.should == [1, 2]
102
- end
103
-
104
- it "should pass the files array given to #call to each callback in the chain" do
105
- array = %w{ /file/1 }
106
-
107
- @chain.append_callback lambda { |files|
108
- files.should.be array
109
- files.concat(%w{ /file/2 })
110
- }
111
-
112
- @chain.append_callback lambda { |files|
113
- files.should.be array
114
- @result.concat(files)
115
- }
116
-
117
- @chain.call(array)
118
- @result.should == %w{ /file/1 /file/2 }
119
- end
120
-
121
- it "should halt the callback chain once the given array is empty" do
122
- @chain.append_callback lambda { |files| @result << 1; files.clear }
123
- @chain.append_callback lambda { |files| @result << 2 }
124
- @chain.call(%w{ /file/1 /file/2 })
125
- @result.should == [1]
126
- end
127
-
128
- it "should not halt the chain if the array is empty if specified" do
129
- @chain.append_callback lambda { |files| @result << 1; files.clear }
130
- @chain.append_callback lambda { |files| @result << 2 }
131
- @chain.call(%w{ /file/1 /file/2 }, false)
132
- @result.should == [1, 2]
133
- end
134
-
135
- it "should not call any callback if the given array is empty" do
136
- @chain.append_callback lambda { |files| @result << 1 }
137
- @chain.call([])
138
- @result.should == []
139
- end
140
-
141
- it "should work with a chain of chains as well" do
142
- array = %w{ file }
143
-
144
- kicker_and_files = lambda do |kicker, files|
145
- kicker.should.be @kicker
146
- files.should.be array
147
- end
148
-
149
- chain1 = Kicker::CallbackChain.new([
150
- lambda { |files| files.should.be array; @result << 1 },
151
- lambda { |files| files.should.be array; @result << 2 }
152
- ])
153
-
154
- chain2 = Kicker::CallbackChain.new([
155
- lambda { |files| files.should.be array; @result << 3 },
156
- lambda { |files| files.should.be array; @result << 4 }
157
- ])
158
-
159
- @chain.append_callback chain1
160
- @chain.append_callback chain2
161
-
162
- @chain.call(array)
163
- @result.should == [1, 2, 3, 4]
164
- end
165
- end
@@ -1,38 +0,0 @@
1
- require File.expand_path('../test_helper', __FILE__)
2
-
3
- describe "Array#take_and_map" do
4
- before do
5
- @array = %w{ foo bar baz foo/bar.baz foo/bar/baz }
6
- end
7
-
8
- it "should remove elements from the array for which the block evaluates to true" do
9
- @array.take_and_map { |x| x =~ /^ba/ }
10
- @array.should == %w{ foo foo/bar.baz foo/bar/baz }
11
- end
12
-
13
- it "should return a new array of the return values of each block call that evaluates to true" do
14
- @array.take_and_map { |x| $1 if x =~ /^ba(\w)/ }.should == %w{ r z }
15
- end
16
-
17
- it "should flatten and compact the result array" do
18
- @array.take_and_map do |x|
19
- x =~ /^ba/ ? %w{ f o o } : [nil]
20
- end.should == %w{ f o o f o o }
21
- end
22
-
23
- it "should not flatten and compact the result array if specified" do
24
- @array.take_and_map(nil, false) do |x|
25
- x =~ /^ba/ ? %w{ f o o } : [nil]
26
- end.should == [[nil], %w{ f o o }, %w{ f o o }, [nil], [nil]]
27
- end
28
-
29
- it "should take only files matching the pattern" do
30
- @array.take_and_map('**/*') { |x| x.reverse }.should ==
31
- %w{ foo/bar.baz foo/bar/baz }.map { |s| s.reverse }
32
- end
33
-
34
- it "should not remove files not matching the pattern" do
35
- @array.take_and_map('**/*') { |x| x }
36
- @array.should == %w{ foo bar baz }
37
- end
38
- end