rabl 0.6.2 → 0.6.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +5 -0
- data/Rakefile +2 -2
- data/fixtures/ashared/NOTES +9 -0
- data/fixtures/ashared/README +4 -0
- data/fixtures/rails3_2/.gitignore +15 -0
- data/fixtures/rails3_2/Gemfile +40 -0
- data/fixtures/rails3_2/README.rdoc +261 -0
- data/fixtures/rails3_2/Rakefile +12 -0
- data/fixtures/rails3_2/app/assets/images/rails.png +0 -0
- data/fixtures/rails3_2/app/assets/javascripts/application.js +15 -0
- data/fixtures/rails3_2/app/assets/javascripts/posts.js.coffee +3 -0
- data/fixtures/rails3_2/app/assets/javascripts/users.js.coffee +3 -0
- data/fixtures/rails3_2/app/assets/stylesheets/application.css +13 -0
- data/fixtures/rails3_2/app/assets/stylesheets/posts.css.scss +3 -0
- data/fixtures/rails3_2/app/assets/stylesheets/users.css.scss +3 -0
- data/fixtures/rails3_2/app/controllers/application_controller.rb +14 -0
- data/fixtures/rails3_2/app/controllers/posts_controller.rb +11 -0
- data/fixtures/rails3_2/app/controllers/users_controller.rb +11 -0
- data/fixtures/rails3_2/app/helpers/application_helper.rb +2 -0
- data/fixtures/rails3_2/app/helpers/posts_helper.rb +2 -0
- data/fixtures/rails3_2/app/helpers/users_helper.rb +2 -0
- data/fixtures/rails3_2/app/mailers/.gitkeep +0 -0
- data/fixtures/rails3_2/config.ru +4 -0
- data/fixtures/rails3_2/config/application.rb +59 -0
- data/fixtures/rails3_2/config/boot.rb +6 -0
- data/fixtures/rails3_2/config/database.yml +25 -0
- data/fixtures/rails3_2/config/environment.rb +5 -0
- data/fixtures/rails3_2/config/environments/development.rb +37 -0
- data/fixtures/rails3_2/config/environments/production.rb +67 -0
- data/fixtures/rails3_2/config/environments/test.rb +37 -0
- data/fixtures/rails3_2/config/initializers/backtrace_silencers.rb +7 -0
- data/fixtures/rails3_2/config/initializers/inflections.rb +15 -0
- data/fixtures/rails3_2/config/initializers/mime_types.rb +5 -0
- data/fixtures/rails3_2/config/initializers/secret_token.rb +7 -0
- data/fixtures/rails3_2/config/initializers/session_store.rb +8 -0
- data/fixtures/rails3_2/config/initializers/wrap_parameters.rb +14 -0
- data/fixtures/rails3_2/config/locales/en.yml +5 -0
- data/fixtures/rails3_2/config/routes.rb +60 -0
- data/fixtures/rails3_2/db/schema.rb +42 -0
- data/fixtures/rails3_2/db/seeds.rb +7 -0
- data/fixtures/rails3_2/doc/README_FOR_APP +2 -0
- data/fixtures/rails3_2/lib/assets/.gitkeep +0 -0
- data/fixtures/rails3_2/lib/tasks/.gitkeep +0 -0
- data/fixtures/rails3_2/log/.gitkeep +0 -0
- data/fixtures/rails3_2/public/404.html +26 -0
- data/fixtures/rails3_2/public/422.html +26 -0
- data/fixtures/rails3_2/public/500.html +25 -0
- data/fixtures/rails3_2/public/favicon.ico +0 -0
- data/fixtures/rails3_2/public/index.html +241 -0
- data/fixtures/rails3_2/public/robots.txt +5 -0
- data/fixtures/rails3_2/script/rails +6 -0
- data/fixtures/rails3_2/test/fixtures/.gitkeep +0 -0
- data/fixtures/rails3_2/test/fixtures/phone_numbers.yml +11 -0
- data/fixtures/rails3_2/test/fixtures/posts.yml +11 -0
- data/fixtures/rails3_2/test/fixtures/users.yml +11 -0
- data/fixtures/rails3_2/test/functional/.gitkeep +0 -0
- data/fixtures/rails3_2/test/functional/posts_controller_test.rb +108 -0
- data/fixtures/rails3_2/test/functional/users_controller_test.rb +87 -0
- data/fixtures/rails3_2/test/integration/.gitkeep +0 -0
- data/fixtures/rails3_2/test/performance/browsing_test.rb +12 -0
- data/fixtures/rails3_2/test/test_helper.rb +26 -0
- data/fixtures/rails3_2/test/unit/.gitkeep +0 -0
- data/fixtures/rails3_2/test/unit/helpers/posts_helper_test.rb +4 -0
- data/fixtures/rails3_2/test/unit/helpers/users_helper_test.rb +4 -0
- data/fixtures/rails3_2/test/unit/phone_number_test.rb +7 -0
- data/fixtures/rails3_2/test/unit/post_test.rb +7 -0
- data/fixtures/rails3_2/test/unit/user_test.rb +7 -0
- data/fixtures/rails3_2/vendor/assets/javascripts/.gitkeep +0 -0
- data/fixtures/rails3_2/vendor/assets/stylesheets/.gitkeep +0 -0
- data/fixtures/rails3_2/vendor/plugins/.gitkeep +0 -0
- data/lib/rabl/builder.rb +6 -0
- data/lib/rabl/partials.rb +17 -13
- data/lib/rabl/version.rb +1 -1
- data/test/partials_test.rb +9 -12
- metadata +68 -2
@@ -0,0 +1,87 @@
|
|
1
|
+
# Lives in <rabl>/test/integration/users_controller_test.rb
|
2
|
+
# Symlinked to fixture applications
|
3
|
+
|
4
|
+
begin # Sinatra
|
5
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../test_config.rb')
|
6
|
+
rescue LoadError # Rails
|
7
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper.rb')
|
8
|
+
end
|
9
|
+
|
10
|
+
context "UsersController" do
|
11
|
+
helper(:json_output) { JSON.parse(last_response.body) }
|
12
|
+
|
13
|
+
setup do
|
14
|
+
create_users!
|
15
|
+
end
|
16
|
+
|
17
|
+
context "for index action" do
|
18
|
+
# Tests `collection @users` extending from 'show' template
|
19
|
+
|
20
|
+
setup do
|
21
|
+
get "/users"
|
22
|
+
end
|
23
|
+
|
24
|
+
# Attributes (regular)
|
25
|
+
asserts("contains user usernames") do
|
26
|
+
json_output.map { |u| u["user"]["username"] }
|
27
|
+
end.equals { @users.map(&:username) }
|
28
|
+
asserts("contains email") do
|
29
|
+
json_output.map { |u| u["user"]["email"] }
|
30
|
+
end.equals { @users.map(&:email) }
|
31
|
+
asserts("contains location") do
|
32
|
+
json_output.map { |u| u["user"]["location"] }
|
33
|
+
end.equals { @users.map(&:location) }
|
34
|
+
|
35
|
+
# Attributes (custom name)
|
36
|
+
asserts("contains registered_at") do
|
37
|
+
json_output.map { |u| u["user"]["registered_at"] }
|
38
|
+
end.equals { @users.map(&:created_at).map(&:iso8601) }
|
39
|
+
|
40
|
+
# Node (renders based on attribute)
|
41
|
+
asserts("contains role") do
|
42
|
+
json_output.map { |u| u["user"]["role"] }
|
43
|
+
end.equals ['normal', 'normal', 'admin']
|
44
|
+
|
45
|
+
# Child (custom collection name)
|
46
|
+
asserts("contains formatted phone numbers") do
|
47
|
+
json_output.map { |u| u["user"]["pnumbers"].map { |n| n["pnumber"]["formatted"] } }
|
48
|
+
end.equals { @users.map { |u| u.phone_numbers.map(&:formatted) } }
|
49
|
+
|
50
|
+
# Node (renders collection partial)
|
51
|
+
asserts("contains formatted node numbers") do
|
52
|
+
json_output.map { |u| u["user"]["node_numbers"].map { |n| n["formatted"] } }
|
53
|
+
end.equals { @users.map { |u| u.phone_numbers.map(&:formatted) } }
|
54
|
+
end # index
|
55
|
+
|
56
|
+
context "for show action" do
|
57
|
+
# Tests `object :user => :person` custom parent node name
|
58
|
+
setup do
|
59
|
+
get "/users/#{@user1.id}"
|
60
|
+
end
|
61
|
+
|
62
|
+
# Attributes (regular)
|
63
|
+
asserts("contains username") { json_output["person"]["username"] }.equals { @user1.username }
|
64
|
+
asserts("contains email") { json_output["person"]["email"] }.equals { @user1.email }
|
65
|
+
asserts("contains location") { json_output["person"]["location"] }.equals { @user1.location }
|
66
|
+
# Attributes (custom name)
|
67
|
+
asserts("contains registered_at") { json_output["person"]["registered_at"] }.equals { @user1.created_at.iso8601 }
|
68
|
+
# Node (renders based on attribute)
|
69
|
+
asserts("contains role node") { json_output["person"]["role"] }.equals "normal"
|
70
|
+
|
71
|
+
# Child (custom collection name)
|
72
|
+
asserts("contains first phone number") {
|
73
|
+
json_output["person"]["pnumbers"][0]["pnumber"]["formatted"]
|
74
|
+
}.equals { @user1.phone_numbers[0].formatted }
|
75
|
+
asserts("contains second phone number") {
|
76
|
+
json_output["person"]["pnumbers"][1]["pnumber"]["formatted"]
|
77
|
+
}.equals { @user1.phone_numbers[1].formatted }
|
78
|
+
|
79
|
+
# Node (renders collection partial)
|
80
|
+
asserts("contains first node number") {
|
81
|
+
json_output["person"]["node_numbers"][0]["formatted"]
|
82
|
+
}.equals { @user1.phone_numbers[0].formatted }
|
83
|
+
asserts("contains second node number") {
|
84
|
+
json_output["person"]["node_numbers"][1]["formatted"]
|
85
|
+
}.equals { @user1.phone_numbers[1].formatted }
|
86
|
+
end # show
|
87
|
+
end
|
File without changes
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'rails/performance_test_help'
|
3
|
+
|
4
|
+
class BrowsingTest < ActionDispatch::PerformanceTest
|
5
|
+
# Refer to the documentation for all available options
|
6
|
+
# self.profile_options = { :runs => 5, :metrics => [:wall_time, :memory]
|
7
|
+
# :output => 'tmp/performance', :formats => [:flat] }
|
8
|
+
|
9
|
+
def test_homepage
|
10
|
+
get '/'
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# Load Silence Functionality
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + "/../../../test/silence.rb")
|
3
|
+
|
4
|
+
# Load Environment
|
5
|
+
silence_warnings do
|
6
|
+
ENV["RAILS_ENV"] = "test"
|
7
|
+
require File.expand_path('../../config/environment', __FILE__)
|
8
|
+
require 'rails/test_help'
|
9
|
+
end
|
10
|
+
|
11
|
+
# Load Riot Test Environment
|
12
|
+
require File.expand_path(File.dirname(__FILE__) + "/../../../test/integration/test_init.rb")
|
13
|
+
|
14
|
+
# Run Migrations
|
15
|
+
silence_stream(STDOUT) do
|
16
|
+
dbconf = YAML::load(File.open('config/database.yml'))[Rails.env]
|
17
|
+
ActiveRecord::Base.establish_connection(dbconf)
|
18
|
+
ActiveRecord::Base.logger = Logger.new(File.open('log/database.log', 'a'))
|
19
|
+
silence_stream(STDOUT) { ActiveRecord::Migrator.up('db/migrate') }
|
20
|
+
end
|
21
|
+
|
22
|
+
class Riot::Situation
|
23
|
+
def app
|
24
|
+
Rails.application
|
25
|
+
end
|
26
|
+
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/rabl/builder.rb
CHANGED
@@ -124,6 +124,12 @@ module Rabl
|
|
124
124
|
|
125
125
|
private
|
126
126
|
|
127
|
+
# Returns a guess at the format in this scope
|
128
|
+
# request_format => "xml"
|
129
|
+
def request_format
|
130
|
+
@options[:format] if @options[:format] != "hash"
|
131
|
+
end
|
132
|
+
|
127
133
|
# Caches the results of the block based on object cache_key
|
128
134
|
# cache_results { compile_hash(options) }
|
129
135
|
def cache_results(&block)
|
data/lib/rabl/partials.rb
CHANGED
@@ -32,27 +32,31 @@ module Rabl
|
|
32
32
|
def fetch_source(file, options={})
|
33
33
|
Rabl.source_cache(file, options[:view_path]) do
|
34
34
|
if defined? Padrino
|
35
|
-
|
35
|
+
view_path = Array(options[:view_path] || context_scope.settings.views)
|
36
36
|
# use Padrino's own template resolution mechanism
|
37
|
-
file_path, _ =
|
37
|
+
file_path, _ = context_scope.instance_eval { resolve_template(file) }
|
38
38
|
# Padrino chops the extension, stitch it back on
|
39
|
-
file_path = File.join(
|
40
|
-
elsif defined?
|
41
|
-
if
|
42
|
-
|
43
|
-
|
39
|
+
file_path = File.join(view_path.first.to_s, (file_path.to_s + ".rabl"))
|
40
|
+
elsif defined?(Rails) && context_scope
|
41
|
+
# use Rails template resolution mechanism if possible (find_template)
|
42
|
+
source_format = request_format if defined?(request_format)
|
43
|
+
view_path = Array(options[:view_path] || context_scope.view_paths.to_a)
|
44
|
+
if source_format && context_scope.respond_to?(:lookup_context) # Rails 3
|
45
|
+
lookup_proc = lambda { |partial| context_scope.lookup_context.find_template(file, [], partial) }
|
44
46
|
template = lookup_proc.call(false) rescue lookup_proc.call(true)
|
45
|
-
file_path =
|
47
|
+
file_path = template.identifier if template
|
48
|
+
elsif source_format && context_scope.respond_to?(:view_paths) # Rails 2
|
49
|
+
template = context_scope.view_paths.find_template(file, source_format, false)
|
50
|
+
file_path = template.filename if template
|
46
51
|
else # fallback to manual
|
47
|
-
|
48
|
-
view_path = options[:view_path] || File.join(root_path, "app/views/")
|
49
|
-
file_path = Dir[File.join(view_path, file + ".{*.,}rabl")].first
|
52
|
+
file_path = Dir[File.join("{#{view_path.join(",")}}", file + ".{*.,}rabl")].first
|
50
53
|
end
|
51
54
|
elsif defined? Sinatra
|
52
|
-
view_path = options[:view_path] ||
|
53
|
-
file_path = Dir[File.join(view_path, file + ".{*.,}rabl")].first
|
55
|
+
view_path = Array(options[:view_path] || context_scope.settings.views)
|
56
|
+
file_path = Dir[File.join("{#{view_path.join(",")}}", file + ".{*.,}rabl")].first
|
54
57
|
end
|
55
58
|
|
59
|
+
raise "Cannot find rabl template '#{file}' within registered views!" unless File.exist?(file_path.to_s)
|
56
60
|
[File.read(file_path.to_s), file_path.to_s] if file_path
|
57
61
|
end
|
58
62
|
end
|
data/lib/rabl/version.rb
CHANGED
data/test/partials_test.rb
CHANGED
@@ -7,12 +7,11 @@ class TestPartial
|
|
7
7
|
end
|
8
8
|
|
9
9
|
context "Rabl::Partials" do
|
10
|
-
context "fetch_source" do
|
10
|
+
context "fetch_source with json" do
|
11
11
|
helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
|
12
12
|
|
13
13
|
setup do
|
14
|
-
::
|
15
|
-
::Rails.root.returns(tmp_path)
|
14
|
+
::Sinatra = stub(Class.new)
|
16
15
|
File.open(tmp_path + "test.json.rabl", "w") do |f|
|
17
16
|
f.puts "content"
|
18
17
|
end
|
@@ -26,15 +25,14 @@ context "Rabl::Partials" do
|
|
26
25
|
|
27
26
|
asserts(:first).equals {["content\n", (tmp_path + "test.json.rabl").to_s ]}
|
28
27
|
asserts(:last).equals {["content_v1\n", (tmp_path + "test_v1.json.rabl").to_s ]}
|
29
|
-
teardown { Object.send(:remove_const, :
|
28
|
+
teardown { Object.send(:remove_const, :Sinatra) }
|
30
29
|
end
|
31
30
|
|
32
|
-
context "fetch_source" do
|
31
|
+
context "fetch_source with rabl" do
|
33
32
|
helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
|
34
33
|
|
35
34
|
setup do
|
36
|
-
::
|
37
|
-
::Rails.root.returns(tmp_path)
|
35
|
+
::Sinatra = stub(Class.new)
|
38
36
|
File.open(tmp_path + "test.rabl", "w") do |f|
|
39
37
|
f.puts "content"
|
40
38
|
end
|
@@ -43,15 +41,14 @@ context "Rabl::Partials" do
|
|
43
41
|
asserts('detects file.rabl') { topic }.equals do
|
44
42
|
["content\n", (tmp_path + 'test.rabl').to_s]
|
45
43
|
end
|
46
|
-
teardown { Object.send(:remove_const, :
|
44
|
+
teardown { Object.send(:remove_const, :Sinatra) }
|
47
45
|
end
|
48
46
|
|
49
|
-
context "fetch_source" do
|
47
|
+
context "fetch_source with view_path" do
|
50
48
|
helper(:tmp_path) { @tmp_path ||= Pathname.new(Dir.mktmpdir) }
|
51
49
|
|
52
50
|
setup do
|
53
|
-
::
|
54
|
-
::Rails.root.returns(tmp_path)
|
51
|
+
::Sinatra = stub(Class.new)
|
55
52
|
File.open(tmp_path + "test.rabl", "w") do |f|
|
56
53
|
f.puts "content"
|
57
54
|
end
|
@@ -63,6 +60,6 @@ context "Rabl::Partials" do
|
|
63
60
|
asserts('detects file.json.rabl first') { topic }.equals do
|
64
61
|
["content2\n", (tmp_path + 'test.json.rabl').to_s]
|
65
62
|
end
|
66
|
-
teardown { Object.send(:remove_const, :
|
63
|
+
teardown { Object.send(:remove_const, :Sinatra) }
|
67
64
|
end
|
68
65
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: rabl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.6.
|
5
|
+
version: 0.6.3
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Nathan Esquenazi
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2012-03-
|
13
|
+
date: 2012-03-27 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: multi_json
|
@@ -255,6 +255,72 @@ files:
|
|
255
255
|
- fixtures/rails3/test/functional/posts_controller_test.rb
|
256
256
|
- fixtures/rails3/test/functional/users_controller_test.rb
|
257
257
|
- fixtures/rails3/test/test_helper.rb
|
258
|
+
- fixtures/rails3_2/.gitignore
|
259
|
+
- fixtures/rails3_2/Gemfile
|
260
|
+
- fixtures/rails3_2/README.rdoc
|
261
|
+
- fixtures/rails3_2/Rakefile
|
262
|
+
- fixtures/rails3_2/app/assets/images/rails.png
|
263
|
+
- fixtures/rails3_2/app/assets/javascripts/application.js
|
264
|
+
- fixtures/rails3_2/app/assets/javascripts/posts.js.coffee
|
265
|
+
- fixtures/rails3_2/app/assets/javascripts/users.js.coffee
|
266
|
+
- fixtures/rails3_2/app/assets/stylesheets/application.css
|
267
|
+
- fixtures/rails3_2/app/assets/stylesheets/posts.css.scss
|
268
|
+
- fixtures/rails3_2/app/assets/stylesheets/users.css.scss
|
269
|
+
- fixtures/rails3_2/app/controllers/application_controller.rb
|
270
|
+
- fixtures/rails3_2/app/controllers/posts_controller.rb
|
271
|
+
- fixtures/rails3_2/app/controllers/users_controller.rb
|
272
|
+
- fixtures/rails3_2/app/helpers/application_helper.rb
|
273
|
+
- fixtures/rails3_2/app/helpers/posts_helper.rb
|
274
|
+
- fixtures/rails3_2/app/helpers/users_helper.rb
|
275
|
+
- fixtures/rails3_2/app/mailers/.gitkeep
|
276
|
+
- fixtures/rails3_2/config.ru
|
277
|
+
- fixtures/rails3_2/config/application.rb
|
278
|
+
- fixtures/rails3_2/config/boot.rb
|
279
|
+
- fixtures/rails3_2/config/database.yml
|
280
|
+
- fixtures/rails3_2/config/environment.rb
|
281
|
+
- fixtures/rails3_2/config/environments/development.rb
|
282
|
+
- fixtures/rails3_2/config/environments/production.rb
|
283
|
+
- fixtures/rails3_2/config/environments/test.rb
|
284
|
+
- fixtures/rails3_2/config/initializers/backtrace_silencers.rb
|
285
|
+
- fixtures/rails3_2/config/initializers/inflections.rb
|
286
|
+
- fixtures/rails3_2/config/initializers/mime_types.rb
|
287
|
+
- fixtures/rails3_2/config/initializers/secret_token.rb
|
288
|
+
- fixtures/rails3_2/config/initializers/session_store.rb
|
289
|
+
- fixtures/rails3_2/config/initializers/wrap_parameters.rb
|
290
|
+
- fixtures/rails3_2/config/locales/en.yml
|
291
|
+
- fixtures/rails3_2/config/routes.rb
|
292
|
+
- fixtures/rails3_2/db/schema.rb
|
293
|
+
- fixtures/rails3_2/db/seeds.rb
|
294
|
+
- fixtures/rails3_2/doc/README_FOR_APP
|
295
|
+
- fixtures/rails3_2/lib/assets/.gitkeep
|
296
|
+
- fixtures/rails3_2/lib/tasks/.gitkeep
|
297
|
+
- fixtures/rails3_2/log/.gitkeep
|
298
|
+
- fixtures/rails3_2/public/404.html
|
299
|
+
- fixtures/rails3_2/public/422.html
|
300
|
+
- fixtures/rails3_2/public/500.html
|
301
|
+
- fixtures/rails3_2/public/favicon.ico
|
302
|
+
- fixtures/rails3_2/public/index.html
|
303
|
+
- fixtures/rails3_2/public/robots.txt
|
304
|
+
- fixtures/rails3_2/script/rails
|
305
|
+
- fixtures/rails3_2/test/fixtures/.gitkeep
|
306
|
+
- fixtures/rails3_2/test/fixtures/phone_numbers.yml
|
307
|
+
- fixtures/rails3_2/test/fixtures/posts.yml
|
308
|
+
- fixtures/rails3_2/test/fixtures/users.yml
|
309
|
+
- fixtures/rails3_2/test/functional/.gitkeep
|
310
|
+
- fixtures/rails3_2/test/functional/posts_controller_test.rb
|
311
|
+
- fixtures/rails3_2/test/functional/users_controller_test.rb
|
312
|
+
- fixtures/rails3_2/test/integration/.gitkeep
|
313
|
+
- fixtures/rails3_2/test/performance/browsing_test.rb
|
314
|
+
- fixtures/rails3_2/test/test_helper.rb
|
315
|
+
- fixtures/rails3_2/test/unit/.gitkeep
|
316
|
+
- fixtures/rails3_2/test/unit/helpers/posts_helper_test.rb
|
317
|
+
- fixtures/rails3_2/test/unit/helpers/users_helper_test.rb
|
318
|
+
- fixtures/rails3_2/test/unit/phone_number_test.rb
|
319
|
+
- fixtures/rails3_2/test/unit/post_test.rb
|
320
|
+
- fixtures/rails3_2/test/unit/user_test.rb
|
321
|
+
- fixtures/rails3_2/vendor/assets/javascripts/.gitkeep
|
322
|
+
- fixtures/rails3_2/vendor/assets/stylesheets/.gitkeep
|
323
|
+
- fixtures/rails3_2/vendor/plugins/.gitkeep
|
258
324
|
- fixtures/sinatra_test/Gemfile
|
259
325
|
- fixtures/sinatra_test/Rakefile
|
260
326
|
- fixtures/sinatra_test/app.rb
|