project_scout 0.0.1 → 0.0.2

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/.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