project_scout 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --colour
2
+ --drb
3
+ --format documentation
data/Gemfile ADDED
@@ -0,0 +1,11 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Add dependencies to develop your gem here.
4
+ # Include everything needed to run rake, tests, features, etc.
5
+ group :development do
6
+ gem "rspec", "~> 2.3.0"
7
+ gem "bundler", "~> 1.0.0"
8
+ gem "jeweler", "~> 1.5.1"
9
+ gem "rcov", ">= 0"
10
+ gem "autotest"
11
+ end
@@ -0,0 +1,30 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ autotest (4.4.4)
5
+ diff-lcs (1.1.2)
6
+ git (1.2.5)
7
+ jeweler (1.5.1)
8
+ bundler (~> 1.0.0)
9
+ git (>= 1.2.5)
10
+ rake
11
+ rake (0.8.7)
12
+ rcov (0.9.9)
13
+ rspec (2.3.0)
14
+ rspec-core (~> 2.3.0)
15
+ rspec-expectations (~> 2.3.0)
16
+ rspec-mocks (~> 2.3.0)
17
+ rspec-core (2.3.1)
18
+ rspec-expectations (2.3.0)
19
+ diff-lcs (~> 1.1.2)
20
+ rspec-mocks (2.3.0)
21
+
22
+ PLATFORMS
23
+ ruby
24
+
25
+ DEPENDENCIES
26
+ autotest
27
+ bundler (~> 1.0.0)
28
+ jeweler (~> 1.5.1)
29
+ rcov
30
+ rspec (~> 2.3.0)
data/Rakefile CHANGED
@@ -1,37 +1,31 @@
1
1
  require 'rubygems'
2
+ require 'bundler'
2
3
  require 'rake'
3
4
 
4
- begin
5
- require 'jeweler'
6
- Jeweler::Tasks.new do |gem|
7
- gem.name = "project_scout"
8
- gem.summary = %Q{scan directories to find the root directory of a project}
9
- gem.description = %Q{scan directories to find the root directory of a project}
10
- gem.email = "rick@lee-morlang.com"
11
- gem.homepage = "http://github.com/rleemorlang/project_scout"
12
- gem.authors = ["Rick Lee-Morlang"]
13
- gem.add_development_dependency "rspec", ">= 1.2.9"
14
- # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
- end
16
- Jeweler::GemcutterTasks.new
17
- rescue LoadError
18
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "project_scout"
8
+ gem.summary = %Q{scan directories to find the root directory of a project}
9
+ gem.description = %Q{scan directories to find the root directory of a project}
10
+ gem.email = "rick@lee-morlang.com"
11
+ gem.homepage = "http://github.com/rleemorlang/project_scout"
12
+ gem.authors = ["Rick Lee-Morlang"]
13
+ gem.add_development_dependency "rspec", ">= 2.1.0"
14
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
19
15
  end
16
+ Jeweler::RubygemsDotOrgTasks.new
20
17
 
21
- require 'spec/rake/spectask'
22
- Spec::Rake::SpecTask.new(:spec) do |spec|
23
- spec.libs << 'lib' << 'spec'
24
- spec.spec_files = FileList['spec/**/*_spec.rb']
18
+ require 'rspec/core'
19
+ require 'rspec/core/rake_task'
20
+ RSpec::Core::RakeTask.new(:spec) do |spec|
21
+ spec.pattern = FileList['spec/**/*_spec.rb']
25
22
  end
26
23
 
27
- Spec::Rake::SpecTask.new(:rcov) do |spec|
28
- spec.libs << 'lib' << 'spec'
24
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
29
25
  spec.pattern = 'spec/**/*_spec.rb'
30
26
  spec.rcov = true
31
27
  end
32
28
 
33
- task :spec => :check_dependencies
34
-
35
29
  task :default => :spec
36
30
 
37
31
  require 'rake/rdoctask'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.1
1
+ 0.0.2
@@ -1,6 +1,6 @@
1
1
  module ProjectScout
2
2
 
3
- # This is a helper class with a bit of syntactical magic. Want to know if
3
+ # This is a helper class with a bit of syntactical magic. Want to know if
4
4
  # /home/user/bubbles is a Rails project?
5
5
  #
6
6
  # ProjectScout::Dir("/home/user/bubbles").ruby_rails_project?
@@ -16,6 +16,10 @@ module ProjectScout
16
16
  self.path = path
17
17
  end
18
18
 
19
+ def git_repository?
20
+ contains? ".git"
21
+ end
22
+
19
23
  def ruby_cucumber?
20
24
  contains? "features/env.rb"
21
25
  end
@@ -33,15 +37,15 @@ module ProjectScout
33
37
  end
34
38
 
35
39
  # Explanation of magic:
36
- #
40
+ #
37
41
  # 1) if a method is invoked with a "_project?" suffix, strip "_project"
38
- # and call with the same arguments. Thus calling foo_bar_project?
42
+ # and call with the same arguments. Thus calling foo_bar_project?
39
43
  # invokes foo_bar?
40
44
  #
41
45
  # 2) if a method invoked has no underscores in it, and local methods
42
- # exist that start with the same string, invoke all of them and
43
- # return true if and return true. Thus calling foo_project? when
44
- # foo_bar_project? and foo_baz_project? exist will return true
46
+ # exist that start with the same string, invoke all of them and
47
+ # return true if and return true. Thus calling foo_project? when
48
+ # foo_bar_project? and foo_baz_project? exist will return true
45
49
  # only if any of foo_bar_project? and foo_baz_project? return true.
46
50
  #
47
51
  def method_missing(method, *args)
@@ -0,0 +1,77 @@
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{project_scout}
8
+ s.version = "0.0.2"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Rick Lee-Morlang"]
12
+ s.date = %q{2010-12-19}
13
+ s.default_executable = %q{ruby-project-root}
14
+ s.description = %q{scan directories to find the root directory of a project}
15
+ s.email = %q{rick@lee-morlang.com}
16
+ s.executables = ["ruby-project-root"]
17
+ s.extra_rdoc_files = [
18
+ "LICENSE",
19
+ "README.rdoc"
20
+ ]
21
+ s.files = [
22
+ ".document",
23
+ ".rspec",
24
+ "Gemfile",
25
+ "Gemfile.lock",
26
+ "LICENSE",
27
+ "README.rdoc",
28
+ "Rakefile",
29
+ "VERSION",
30
+ "bin/ruby-project-root",
31
+ "lib/project_scout.rb",
32
+ "lib/project_scout/dir.rb",
33
+ "project_scout.gemspec",
34
+ "spec/project_scout/dir_spec.rb",
35
+ "spec/project_scout_spec.rb",
36
+ "spec/spec.opts",
37
+ "spec/spec_helper.rb"
38
+ ]
39
+ s.homepage = %q{http://github.com/rleemorlang/project_scout}
40
+ s.require_paths = ["lib"]
41
+ s.rubygems_version = %q{1.3.7}
42
+ s.summary = %q{scan directories to find the root directory of a project}
43
+ s.test_files = [
44
+ "spec/project_scout/dir_spec.rb",
45
+ "spec/project_scout_spec.rb",
46
+ "spec/spec_helper.rb"
47
+ ]
48
+
49
+ if s.respond_to? :specification_version then
50
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
51
+ s.specification_version = 3
52
+
53
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
54
+ s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
55
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
56
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
57
+ s.add_development_dependency(%q<rcov>, [">= 0"])
58
+ s.add_development_dependency(%q<autotest>, [">= 0"])
59
+ s.add_development_dependency(%q<rspec>, [">= 2.1.0"])
60
+ else
61
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
62
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
63
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
64
+ s.add_dependency(%q<rcov>, [">= 0"])
65
+ s.add_dependency(%q<autotest>, [">= 0"])
66
+ s.add_dependency(%q<rspec>, [">= 2.1.0"])
67
+ end
68
+ else
69
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
70
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
71
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
72
+ s.add_dependency(%q<rcov>, [">= 0"])
73
+ s.add_dependency(%q<autotest>, [">= 0"])
74
+ s.add_dependency(%q<rspec>, [">= 2.1.0"])
75
+ end
76
+ end
77
+
@@ -1,4 +1,4 @@
1
- require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
1
+ require "spec_helper"
2
2
 
3
3
  module ProjectScout
4
4
  describe Dir do
@@ -12,12 +12,19 @@ module ProjectScout
12
12
  end
13
13
  subject { Dir.new "/parent" }
14
14
 
15
+ describe "#git_repository?" do
16
+ it "should be true if the directory contains a .git directory" do
17
+ File.should_receive(:exists?).with("/parent/.git").and_return true
18
+ subject.should be_a_git_repository
19
+ end
20
+ end
21
+
15
22
  describe "#ruby_rails?" do
16
23
  it "should be true if the directory is the root of a rails project" do
17
24
  File.should_receive(:exists?).with("/parent/config/environment.rb").and_return true
18
25
  subject.should be_a_ruby_rails_project
19
26
  end
20
-
27
+
21
28
  it "should be false if the directory is not the root of a rails project" do
22
29
  File.should_receive(:exists?).with("/parent/config/environment.rb").and_return false
23
30
  subject.should_not be_a_ruby_rails_project
@@ -33,7 +40,7 @@ module ProjectScout
33
40
  subject.should_receive(:contains?).with("features/env.rb")
34
41
  subject.ruby_cucumber_project?
35
42
  end
36
-
43
+
37
44
  specify "#ruby_spec? should check if the path contains spec/spec_helper.rb" do
38
45
  subject.should_receive(:contains?).with("spec/spec_helper.rb")
39
46
  subject.ruby_rspec_project?
@@ -1,9 +1,8 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
3
  require 'project_scout'
4
- require 'spec'
5
- require 'spec/autorun'
4
+ require 'rspec/core'
5
+
6
+ RSpec.configure do |config|
6
7
 
7
- Spec::Runner.configure do |config|
8
-
9
8
  end
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: project_scout
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ hash: 27
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 2
10
+ version: 0.0.2
5
11
  platform: ruby
6
12
  authors:
7
13
  - Rick Lee-Morlang
@@ -9,19 +15,101 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-12-07 00:00:00 -08:00
18
+ date: 2010-12-19 00:00:00 -08:00
13
19
  default_executable: ruby-project-root
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
22
+ prerelease: false
23
+ version_requirements: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 2
31
+ - 3
32
+ - 0
33
+ version: 2.3.0
16
34
  name: rspec
35
+ requirement: *id001
36
+ type: :development
37
+ - !ruby/object:Gem::Dependency
38
+ prerelease: false
39
+ version_requirements: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ hash: 23
45
+ segments:
46
+ - 1
47
+ - 0
48
+ - 0
49
+ version: 1.0.0
50
+ name: bundler
51
+ requirement: *id002
52
+ type: :development
53
+ - !ruby/object:Gem::Dependency
54
+ prerelease: false
55
+ version_requirements: &id003 !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ~>
59
+ - !ruby/object:Gem::Version
60
+ hash: 1
61
+ segments:
62
+ - 1
63
+ - 5
64
+ - 1
65
+ version: 1.5.1
66
+ name: jeweler
67
+ requirement: *id003
68
+ type: :development
69
+ - !ruby/object:Gem::Dependency
70
+ prerelease: false
71
+ version_requirements: &id004 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ hash: 3
77
+ segments:
78
+ - 0
79
+ version: "0"
80
+ name: rcov
81
+ requirement: *id004
82
+ type: :development
83
+ - !ruby/object:Gem::Dependency
84
+ prerelease: false
85
+ version_requirements: &id005 !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ hash: 3
91
+ segments:
92
+ - 0
93
+ version: "0"
94
+ name: autotest
95
+ requirement: *id005
17
96
  type: :development
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
97
+ - !ruby/object:Gem::Dependency
98
+ prerelease: false
99
+ version_requirements: &id006 !ruby/object:Gem::Requirement
100
+ none: false
20
101
  requirements:
21
102
  - - ">="
22
103
  - !ruby/object:Gem::Version
23
- version: 1.2.9
24
- version:
104
+ hash: 11
105
+ segments:
106
+ - 2
107
+ - 1
108
+ - 0
109
+ version: 2.1.0
110
+ name: rspec
111
+ requirement: *id006
112
+ type: :development
25
113
  description: scan directories to find the root directory of a project
26
114
  email: rick@lee-morlang.com
27
115
  executables:
@@ -33,7 +121,9 @@ extra_rdoc_files:
33
121
  - README.rdoc
34
122
  files:
35
123
  - .document
36
- - .gitignore
124
+ - .rspec
125
+ - Gemfile
126
+ - Gemfile.lock
37
127
  - LICENSE
38
128
  - README.rdoc
39
129
  - Rakefile
@@ -41,6 +131,7 @@ files:
41
131
  - bin/ruby-project-root
42
132
  - lib/project_scout.rb
43
133
  - lib/project_scout/dir.rb
134
+ - project_scout.gemspec
44
135
  - spec/project_scout/dir_spec.rb
45
136
  - spec/project_scout_spec.rb
46
137
  - spec/spec.opts
@@ -50,26 +141,32 @@ homepage: http://github.com/rleemorlang/project_scout
50
141
  licenses: []
51
142
 
52
143
  post_install_message:
53
- rdoc_options:
54
- - --charset=UTF-8
144
+ rdoc_options: []
145
+
55
146
  require_paths:
56
147
  - lib
57
148
  required_ruby_version: !ruby/object:Gem::Requirement
149
+ none: false
58
150
  requirements:
59
151
  - - ">="
60
152
  - !ruby/object:Gem::Version
153
+ hash: 3
154
+ segments:
155
+ - 0
61
156
  version: "0"
62
- version:
63
157
  required_rubygems_version: !ruby/object:Gem::Requirement
158
+ none: false
64
159
  requirements:
65
160
  - - ">="
66
161
  - !ruby/object:Gem::Version
162
+ hash: 3
163
+ segments:
164
+ - 0
67
165
  version: "0"
68
- version:
69
166
  requirements: []
70
167
 
71
168
  rubyforge_project:
72
- rubygems_version: 1.3.5
169
+ rubygems_version: 1.3.7
73
170
  signing_key:
74
171
  specification_version: 3
75
172
  summary: scan directories to find the root directory of a project
data/.gitignore DELETED
@@ -1,21 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## PROJECT::GENERAL
17
- coverage
18
- rdoc
19
- pkg
20
-
21
- ## PROJECT::SPECIFIC