framework_identificator 1.1.0 → 1.2.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/README.md +9 -0
- data/lib/framework_identificator/frameworks/rails.rb +41 -11
- data/lib/framework_identificator/version.rb +1 -1
- data/lib/framework_identificator.rb +3 -1
- data/spec/framework_identificator/frameworks/rails_spec.rb +23 -0
- data/spec/framework_identificator/frameworks_spec.rb +11 -0
- data/spec/framework_identificator_spec.rb +109 -78
- metadata +11 -1
data/README.md
CHANGED
@@ -43,8 +43,17 @@ Or install it yourself as:
|
|
43
43
|
|
44
44
|
You can contribute to this gem by adding support for new [VCS](http://en.wikipedia.org/wiki/Concurrent_Versions_System) or new frameworks.
|
45
45
|
|
46
|
+
### Fork
|
47
|
+
|
46
48
|
1. Fork it
|
47
49
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
48
50
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
49
51
|
4. Push to the branch (`git push origin my-new-feature`)
|
50
52
|
5. Create new Pull Request
|
53
|
+
|
54
|
+
### New framework
|
55
|
+
|
56
|
+
This gem is built in order to allow easy contributions.
|
57
|
+
To add a new framework, just add the new class in the `lib/framework_identificator/frameworks/` that implement the method `self.recognized?(source)`.
|
58
|
+
|
59
|
+
Have a look at the [Rails framework class](/zedtux/framework_identificator/blob/master/lib/framework_identificator/frameworks/rails.rb).
|
@@ -1,43 +1,73 @@
|
|
1
1
|
module Frameworks
|
2
2
|
class Rails
|
3
|
-
|
3
|
+
# ~~~~ Attributes ~~~~
|
4
|
+
attr_accessor :source, :routes_path, :project_name
|
5
|
+
|
6
|
+
# ~~~~ Class Methods ~~~~
|
4
7
|
def self.recognized?(source)
|
5
8
|
@source = source
|
6
9
|
|
7
10
|
self.recognize_a_rails_project?
|
8
11
|
end
|
9
12
|
|
13
|
+
# ~~~~ Instance Methods ~~~~
|
14
|
+
def initialize(*source)
|
15
|
+
if self.source = source.first
|
16
|
+
self.parse_source
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
|
22
|
+
def parse_source
|
23
|
+
self.project_name = File.open(self.class.send(:routes_rb_path)) do |file|
|
24
|
+
file.readline.scan(/^([A-z]+).*do$/).flatten.first
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
10
28
|
private
|
11
29
|
|
12
30
|
def self.recognize_a_rails_project?
|
13
|
-
self.
|
31
|
+
(self.have_valid_rails_2_script_folder? ||
|
32
|
+
self.have_valid_rails_3_script_folder?) &&
|
14
33
|
self.have_valid_app_folder? &&
|
15
34
|
self.have_valid_config_folder? &&
|
16
35
|
self.have_rakefile?
|
17
36
|
end
|
18
37
|
|
19
|
-
def self.
|
38
|
+
def self.have_valid_rails_2_script_folder?
|
39
|
+
File.exists?(File.join(@source, "script", "console")) &&
|
40
|
+
File.exists?(File.join(@source, "script", "dbconsole")) &&
|
41
|
+
File.exists?(File.join(@source, "script", "generate")) &&
|
42
|
+
File.exists?(File.join(@source, "script", "plugin")) &&
|
43
|
+
File.exists?(File.join(@source, "script", "runner")) &&
|
44
|
+
File.exists?(File.join(@source, "script", "server"))
|
45
|
+
end
|
46
|
+
|
47
|
+
def self.have_valid_rails_3_script_folder?
|
20
48
|
File.exists?(File.join(@source, "script", "rails"))
|
21
49
|
end
|
22
50
|
|
23
51
|
def self.have_valid_app_folder?
|
24
|
-
File.exists?(File.join(@source, "app", "controllers"))
|
25
|
-
File.exists?(File.join(@source, "app", "models"))
|
52
|
+
File.exists?(File.join(@source, "app", "controllers")) &&
|
53
|
+
File.exists?(File.join(@source, "app", "models")) &&
|
26
54
|
File.exists?(File.join(@source, "app", "views"))
|
27
55
|
end
|
28
56
|
|
29
57
|
def self.have_valid_config_folder?
|
30
|
-
File.exists?(File.join(@source, "config", "environments"))
|
31
|
-
File.exists?(File.join(@source, "config", "environments", "development.rb"))
|
32
|
-
File.exists?(File.join(@source, "config", "
|
33
|
-
File.exists?(File.join(@source, "config", "
|
34
|
-
File.exists?(
|
35
|
-
File.exists?(File.join(@source, "config", "routes.rb"))
|
58
|
+
File.exists?(File.join(@source, "config", "environments")) &&
|
59
|
+
File.exists?(File.join(@source, "config", "environments", "development.rb")) &&
|
60
|
+
File.exists?(File.join(@source, "config", "boot.rb")) &&
|
61
|
+
File.exists?(File.join(@source, "config", "environment.rb")) &&
|
62
|
+
File.exists?(self.send(:routes_rb_path))
|
36
63
|
end
|
37
64
|
|
38
65
|
def self.have_rakefile?
|
39
66
|
File.exists?(File.join(@source, "Rakefile"))
|
40
67
|
end
|
41
68
|
|
69
|
+
def self.routes_rb_path
|
70
|
+
File.join(@source, "config", "routes.rb")
|
71
|
+
end
|
42
72
|
end
|
43
73
|
end
|
@@ -12,6 +12,8 @@ module FrameworkIdentificator
|
|
12
12
|
source = source.is_a?(Git::Base) ? source.dir.path : source
|
13
13
|
|
14
14
|
# Try to detect a Framework using the source
|
15
|
-
Frameworks.available.detect
|
15
|
+
Frameworks.available.detect do |framework|
|
16
|
+
return framework.new(source) if framework.recognized?(source)
|
17
|
+
end
|
16
18
|
end
|
17
19
|
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Frameworks::Rails do
|
4
|
+
|
5
|
+
describe "Attributes" do
|
6
|
+
it "should have an attribute :source" do
|
7
|
+
subject.should respond_to(:source)
|
8
|
+
subject.should respond_to(:source=)
|
9
|
+
end
|
10
|
+
it "should have an attribute :routes_path" do
|
11
|
+
subject.should respond_to(:routes_path)
|
12
|
+
subject.should respond_to(:routes_path=)
|
13
|
+
end
|
14
|
+
it "should have an attribute :project_name" do
|
15
|
+
subject.should respond_to(:project_name)
|
16
|
+
subject.should respond_to(:project_name=)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
describe "Class Methods" do
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
@@ -3,14 +3,14 @@ require "spec_helper"
|
|
3
3
|
describe FrameworkIdentificator do
|
4
4
|
|
5
5
|
describe "#from" do
|
6
|
-
|
6
|
+
context "with a nil" do
|
7
7
|
it "should raise an ArgumentError" do
|
8
8
|
lambda {
|
9
9
|
subject.from
|
10
10
|
}.should raise_error(ArgumentError)
|
11
11
|
end
|
12
12
|
end
|
13
|
-
|
13
|
+
context "with an empty string" do
|
14
14
|
it "should raise an ArgumentError" do
|
15
15
|
lambda {
|
16
16
|
subject.from("")
|
@@ -20,39 +20,54 @@ describe FrameworkIdentificator do
|
|
20
20
|
describe "with a Pathname object" do
|
21
21
|
before { @repository_path = Pathname.new(File.join("projects", "my_rails_project")) }
|
22
22
|
describe "for a Rails framework" do
|
23
|
-
|
24
|
-
before { Frameworks::Rails.stub(:
|
25
|
-
|
23
|
+
context "with script/rails" do
|
24
|
+
before { Frameworks::Rails.stub(:have_valid_rails_3_script_folder?).and_return(true) }
|
25
|
+
context "with valid app/ folder" do
|
26
26
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(true) }
|
27
|
-
|
27
|
+
context "with valid config/ folder" do
|
28
28
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
29
|
-
|
30
|
-
before
|
29
|
+
context "with a Rakefile" do
|
30
|
+
before do
|
31
|
+
Frameworks::Rails.stub(:have_rakefile?).and_return(true)
|
32
|
+
Frameworks::Rails.any_instance.stub(:parse_source).and_return(true)
|
33
|
+
@framework = subject.from(@repository_path)
|
34
|
+
end
|
31
35
|
it "should return not return a nil" do
|
32
|
-
framework
|
33
|
-
framework.should_not be_nil
|
36
|
+
@framework.should_not be_nil
|
34
37
|
end
|
35
38
|
it "should return an instance of Frameworks::Rails" do
|
36
|
-
framework
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
39
|
+
@framework.class.should be Frameworks::Rails
|
40
|
+
end
|
41
|
+
describe "instance" do
|
42
|
+
describe "project_name" do
|
43
|
+
before { @framework.stub(:project_name).and_return("MyRailsProject") }
|
44
|
+
it "should respond to project_name" do
|
45
|
+
@framework.should respond_to(:project_name)
|
46
|
+
end
|
47
|
+
context "with a project name \"MyRailsProject\"" do
|
48
|
+
it "should return the \"MyRailsProject\"" do
|
49
|
+
@framework.project_name.should == "MyRailsProject"
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
context "without Rakefile" do
|
41
56
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
42
57
|
it "should return false" do
|
43
58
|
subject.from(@repository_path).should be_false
|
44
59
|
end
|
45
60
|
end
|
46
61
|
end
|
47
|
-
|
62
|
+
context "without valid config/ folder" do
|
48
63
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
49
|
-
|
64
|
+
context "with a Rakefile" do
|
50
65
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
51
66
|
it "should return false" do
|
52
67
|
subject.from(@repository_path).should be_false
|
53
68
|
end
|
54
69
|
end
|
55
|
-
|
70
|
+
context "without Rakefile" do
|
56
71
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
57
72
|
it "should return false" do
|
58
73
|
subject.from(@repository_path).should be_false
|
@@ -60,32 +75,32 @@ describe FrameworkIdentificator do
|
|
60
75
|
end
|
61
76
|
end
|
62
77
|
end
|
63
|
-
|
78
|
+
context "without valid app/ folder" do
|
64
79
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(false) }
|
65
|
-
|
80
|
+
context "with valid config/ folder" do
|
66
81
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
67
|
-
|
82
|
+
context "with a Rakefile" do
|
68
83
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
69
84
|
it "should return false" do
|
70
85
|
subject.from(@repository_path).should be_false
|
71
86
|
end
|
72
87
|
end
|
73
|
-
|
88
|
+
context "without Rakefile" do
|
74
89
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
75
90
|
it "should return false" do
|
76
91
|
subject.from(@repository_path).should be_false
|
77
92
|
end
|
78
93
|
end
|
79
94
|
end
|
80
|
-
|
95
|
+
context "without valid config/ folder" do
|
81
96
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
82
|
-
|
97
|
+
context "with a Rakefile" do
|
83
98
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
84
99
|
it "should return false" do
|
85
100
|
subject.from(@repository_path).should be_false
|
86
101
|
end
|
87
102
|
end
|
88
|
-
|
103
|
+
context "without Rakefile" do
|
89
104
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
90
105
|
it "should return false" do
|
91
106
|
subject.from(@repository_path).should be_false
|
@@ -94,34 +109,34 @@ describe FrameworkIdentificator do
|
|
94
109
|
end
|
95
110
|
end
|
96
111
|
end
|
97
|
-
|
112
|
+
context "with script/rails" do
|
98
113
|
before { Frameworks::Rails.stub(:have_valid_script_folder?).and_return(false) }
|
99
|
-
|
114
|
+
context "with valid app/ folder" do
|
100
115
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(true) }
|
101
|
-
|
116
|
+
context "with valid config/ folder" do
|
102
117
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
103
|
-
|
118
|
+
context "with a Rakefile" do
|
104
119
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
105
120
|
it "should return false" do
|
106
121
|
subject.from(@repository_path).should be_false
|
107
122
|
end
|
108
123
|
end
|
109
|
-
|
124
|
+
context "without Rakefile" do
|
110
125
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
111
126
|
it "should return false" do
|
112
127
|
subject.from(@repository_path).should be_false
|
113
128
|
end
|
114
129
|
end
|
115
130
|
end
|
116
|
-
|
131
|
+
context "without valid config/ folder" do
|
117
132
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
118
|
-
|
133
|
+
context "with a Rakefile" do
|
119
134
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
120
135
|
it "should return false" do
|
121
136
|
subject.from(@repository_path).should be_false
|
122
137
|
end
|
123
138
|
end
|
124
|
-
|
139
|
+
context "without Rakefile" do
|
125
140
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
126
141
|
it "should return false" do
|
127
142
|
subject.from(@repository_path).should be_false
|
@@ -129,32 +144,32 @@ describe FrameworkIdentificator do
|
|
129
144
|
end
|
130
145
|
end
|
131
146
|
end
|
132
|
-
|
147
|
+
context "without valid app/ folder" do
|
133
148
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(false) }
|
134
|
-
|
149
|
+
context "with valid config/ folder" do
|
135
150
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
136
|
-
|
151
|
+
context "with a Rakefile" do
|
137
152
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
138
153
|
it "should return false" do
|
139
154
|
subject.from(@repository_path).should be_false
|
140
155
|
end
|
141
156
|
end
|
142
|
-
|
157
|
+
context "without Rakefile" do
|
143
158
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
144
159
|
it "should return false" do
|
145
160
|
subject.from(@repository_path).should be_false
|
146
161
|
end
|
147
162
|
end
|
148
163
|
end
|
149
|
-
|
164
|
+
context "without valid config/ folder" do
|
150
165
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
151
|
-
|
166
|
+
context "with a Rakefile" do
|
152
167
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
153
168
|
it "should return false" do
|
154
169
|
subject.from(@repository_path).should be_false
|
155
170
|
end
|
156
171
|
end
|
157
|
-
|
172
|
+
context "without Rakefile" do
|
158
173
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
159
174
|
it "should return false" do
|
160
175
|
subject.from(@repository_path).should be_false
|
@@ -178,39 +193,55 @@ describe FrameworkIdentificator do
|
|
178
193
|
@git_repository.stub_chain(:dir, :path).and_return(File.join("projects", "my_rails_project"))
|
179
194
|
end
|
180
195
|
describe "for a Rails framework" do
|
181
|
-
|
182
|
-
before { Frameworks::Rails.stub(:
|
183
|
-
|
196
|
+
context "with script/ folder" do
|
197
|
+
before { Frameworks::Rails.stub(:have_valid_rails_3_script_folder?).and_return(true) }
|
198
|
+
context "with valid app/ folder" do
|
184
199
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(true) }
|
185
|
-
|
200
|
+
context "with valid config/ folder" do
|
186
201
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
187
|
-
|
188
|
-
before
|
202
|
+
context "with a Rakefile" do
|
203
|
+
before do
|
204
|
+
Frameworks::Rails.stub(:have_rakefile?).and_return(true)
|
205
|
+
Frameworks::Rails.any_instance.stub(:parse_source).and_return(true)
|
206
|
+
@framework = subject.from(@git_repository)
|
207
|
+
end
|
189
208
|
it "should return not return a nil" do
|
190
|
-
framework
|
191
|
-
framework.should_not be_nil
|
209
|
+
@framework.should_not be_nil
|
192
210
|
end
|
193
211
|
it "should return an instance of Frameworks::Rails" do
|
194
|
-
framework
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
212
|
+
@framework.class.should be Frameworks::Rails
|
213
|
+
end
|
214
|
+
describe "instance" do
|
215
|
+
it "should respond to project_name" do
|
216
|
+
@framework.should respond_to(:project_name)
|
217
|
+
puts "Project name: \"#{@framework.project_name}\""
|
218
|
+
end
|
219
|
+
describe "project_name" do
|
220
|
+
context "with a project name \"MyRailsProject\"" do
|
221
|
+
before { @framework.stub(:project_name).and_return("MyRailsProject") }
|
222
|
+
it "should return the \"MyRailsProject\"" do
|
223
|
+
@framework.project_name.should == "MyRailsProject"
|
224
|
+
end
|
225
|
+
end
|
226
|
+
end
|
227
|
+
end
|
228
|
+
end
|
229
|
+
context "without Rakefile" do
|
199
230
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
200
231
|
it "should return false" do
|
201
232
|
subject.from(@git_repository).should be_false
|
202
233
|
end
|
203
234
|
end
|
204
235
|
end
|
205
|
-
|
236
|
+
context "without valid config/ folder" do
|
206
237
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
207
|
-
|
238
|
+
context "with a Rakefile" do
|
208
239
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
209
240
|
it "should return false" do
|
210
241
|
subject.from(@git_repository).should be_false
|
211
242
|
end
|
212
243
|
end
|
213
|
-
|
244
|
+
context "without Rakefile" do
|
214
245
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
215
246
|
it "should return false" do
|
216
247
|
subject.from(@git_repository).should be_false
|
@@ -218,32 +249,32 @@ describe FrameworkIdentificator do
|
|
218
249
|
end
|
219
250
|
end
|
220
251
|
end
|
221
|
-
|
252
|
+
context "without valid app/ folder" do
|
222
253
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(false) }
|
223
|
-
|
254
|
+
context "with valid config/ folder" do
|
224
255
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
225
|
-
|
256
|
+
context "with a Rakefile" do
|
226
257
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
227
258
|
it "should return false" do
|
228
259
|
subject.from(@git_repository).should be_false
|
229
260
|
end
|
230
261
|
end
|
231
|
-
|
262
|
+
context "without Rakefile" do
|
232
263
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
233
264
|
it "should return false" do
|
234
265
|
subject.from(@git_repository).should be_false
|
235
266
|
end
|
236
267
|
end
|
237
268
|
end
|
238
|
-
|
269
|
+
context "without valid config/ folder" do
|
239
270
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
240
|
-
|
271
|
+
context "with a Rakefile" do
|
241
272
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
242
273
|
it "should return false" do
|
243
274
|
subject.from(@git_repository).should be_false
|
244
275
|
end
|
245
276
|
end
|
246
|
-
|
277
|
+
context "without Rakefile" do
|
247
278
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
248
279
|
it "should return false" do
|
249
280
|
subject.from(@git_repository).should be_false
|
@@ -252,34 +283,34 @@ describe FrameworkIdentificator do
|
|
252
283
|
end
|
253
284
|
end
|
254
285
|
end
|
255
|
-
|
286
|
+
context "with script/rails" do
|
256
287
|
before { Frameworks::Rails.stub(:have_valid_script_folder?).and_return(false) }
|
257
|
-
|
288
|
+
context "with valid app/ folder" do
|
258
289
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(true) }
|
259
|
-
|
290
|
+
context "with valid config/ folder" do
|
260
291
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
261
|
-
|
292
|
+
context "with a Rakefile" do
|
262
293
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
263
294
|
it "should return false" do
|
264
295
|
subject.from(@git_repository).should be_false
|
265
296
|
end
|
266
297
|
end
|
267
|
-
|
298
|
+
context "without Rakefile" do
|
268
299
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
269
300
|
it "should return false" do
|
270
301
|
subject.from(@git_repository).should be_false
|
271
302
|
end
|
272
303
|
end
|
273
304
|
end
|
274
|
-
|
305
|
+
context "without valid config/ folder" do
|
275
306
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
276
|
-
|
307
|
+
context "with a Rakefile" do
|
277
308
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
278
309
|
it "should return false" do
|
279
310
|
subject.from(@git_repository).should be_false
|
280
311
|
end
|
281
312
|
end
|
282
|
-
|
313
|
+
context "without Rakefile" do
|
283
314
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
284
315
|
it "should return false" do
|
285
316
|
subject.from(@git_repository).should be_false
|
@@ -287,32 +318,32 @@ describe FrameworkIdentificator do
|
|
287
318
|
end
|
288
319
|
end
|
289
320
|
end
|
290
|
-
|
321
|
+
context "without valid app/ folder" do
|
291
322
|
before { Frameworks::Rails.stub(:have_valid_app_folder?).and_return(false) }
|
292
|
-
|
323
|
+
context "with valid config/ folder" do
|
293
324
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(true) }
|
294
|
-
|
325
|
+
context "with a Rakefile" do
|
295
326
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
296
327
|
it "should return false" do
|
297
328
|
subject.from(@git_repository).should be_false
|
298
329
|
end
|
299
330
|
end
|
300
|
-
|
331
|
+
context "without Rakefile" do
|
301
332
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
302
333
|
it "should return false" do
|
303
334
|
subject.from(@git_repository).should be_false
|
304
335
|
end
|
305
336
|
end
|
306
337
|
end
|
307
|
-
|
338
|
+
context "without valid config/ folder" do
|
308
339
|
before { Frameworks::Rails.stub(:have_valid_config_folder?).and_return(false) }
|
309
|
-
|
340
|
+
context "with a Rakefile" do
|
310
341
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(true) }
|
311
342
|
it "should return false" do
|
312
343
|
subject.from(@git_repository).should be_false
|
313
344
|
end
|
314
345
|
end
|
315
|
-
|
346
|
+
context "without Rakefile" do
|
316
347
|
before { Frameworks::Rails.stub(:have_rakefile?).and_return(false) }
|
317
348
|
it "should return false" do
|
318
349
|
subject.from(@git_repository).should be_false
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: framework_identificator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -34,6 +34,8 @@ files:
|
|
34
34
|
- lib/framework_identificator/version.rb
|
35
35
|
- spec/fixtures/basic_folders_and_files/backup/main.sh
|
36
36
|
- spec/fixtures/basic_folders_and_files/main.sh
|
37
|
+
- spec/framework_identificator/frameworks/rails_spec.rb
|
38
|
+
- spec/framework_identificator/frameworks_spec.rb
|
37
39
|
- spec/framework_identificator_spec.rb
|
38
40
|
- spec/spec_helper.rb
|
39
41
|
- spec/support/webmocks.rb
|
@@ -49,12 +51,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
49
51
|
- - ! '>='
|
50
52
|
- !ruby/object:Gem::Version
|
51
53
|
version: '0'
|
54
|
+
segments:
|
55
|
+
- 0
|
56
|
+
hash: -1867397364544472375
|
52
57
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
53
58
|
none: false
|
54
59
|
requirements:
|
55
60
|
- - ! '>='
|
56
61
|
- !ruby/object:Gem::Version
|
57
62
|
version: '0'
|
63
|
+
segments:
|
64
|
+
- 0
|
65
|
+
hash: -1867397364544472375
|
58
66
|
requirements: []
|
59
67
|
rubyforge_project:
|
60
68
|
rubygems_version: 1.8.24
|
@@ -65,6 +73,8 @@ summary: This gem will identify the framework of a given project based on existi
|
|
65
73
|
test_files:
|
66
74
|
- spec/fixtures/basic_folders_and_files/backup/main.sh
|
67
75
|
- spec/fixtures/basic_folders_and_files/main.sh
|
76
|
+
- spec/framework_identificator/frameworks/rails_spec.rb
|
77
|
+
- spec/framework_identificator/frameworks_spec.rb
|
68
78
|
- spec/framework_identificator_spec.rb
|
69
79
|
- spec/spec_helper.rb
|
70
80
|
- spec/support/webmocks.rb
|