themes_for_rails 0.2.2 → 0.2.4
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/Gemfile.lock +1 -1
- data/README.textile +15 -0
- data/REVIEW_NOTES +0 -0
- data/RMU_REVIEW +26 -0
- data/TODO.textile +3 -0
- data/index.html +49 -0
- data/index.rss +16 -0
- data/lib/themes_for_rails/assets_controller.rb +8 -6
- data/lib/themes_for_rails/common_methods.rb +1 -1
- data/lib/themes_for_rails/routes.rb +3 -3
- data/lib/themes_for_rails/url_helpers.rb +3 -3
- data/lib/themes_for_rails/version.rb +1 -1
- data/lib/themes_for_rails/view_helpers.rb +3 -4
- data/test/assets_controller_test.rb +13 -6
- data/test/controller_methods_test.rb +2 -2
- data/test/dummy_app/config/environments/test.rb +0 -1
- data/test/dummy_app/themes/default/images/nested/logo.png +0 -0
- data/test/routes_test.rb +12 -6
- data/test/themes_for_rails_test.rb +1 -1
- data/themes_for_rails.gemspec +8 -2
- metadata +9 -3
data/Gemfile.lock
CHANGED
data/README.textile
CHANGED
@@ -143,6 +143,21 @@ KillerApp::Application.configure do
|
|
143
143
|
end
|
144
144
|
</pre>
|
145
145
|
|
146
|
+
h2. Notes and Warnings.
|
147
|
+
|
148
|
+
If you are running an app in production mode, and you get the static files with no content, is because you don't have X-senfile enabled at your web server.
|
149
|
+
|
150
|
+
You can do two things:
|
151
|
+
|
152
|
+
comment out this line in your production.rb file:
|
153
|
+
|
154
|
+
config.action_dispatch.x_sendfile_header = "X-Sendfile"
|
155
|
+
|
156
|
+
or
|
157
|
+
|
158
|
+
configure your web server to use it. :)
|
159
|
+
|
160
|
+
|
146
161
|
h2. Documentation
|
147
162
|
|
148
163
|
"Read it here":http://rubydoc.info/github/lucasefe/themes_for_rails/master/frames
|
data/REVIEW_NOTES
ADDED
File without changes
|
data/RMU_REVIEW
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
- Setup
|
2
|
+
|
3
|
+
Add themes_for_rails to your Gemfile.
|
4
|
+
|
5
|
+
gem 'themes_for_rails'
|
6
|
+
|
7
|
+
Add themes_for_rails to your config/routes.rb
|
8
|
+
|
9
|
+
Then follow the instructions provided in the README file.
|
10
|
+
|
11
|
+
- Accomplishments
|
12
|
+
|
13
|
+
I've accomplished several things:
|
14
|
+
|
15
|
+
* I got the chance to know a lot about the Raisl 3 public API. I have worked a lot on hooking the themes support cleanly, and not using monkey patching.
|
16
|
+
|
17
|
+
* I also learned about testing with the minimal. In this project I am not using rspec, but test_unit, so this was different from what I was used to.
|
18
|
+
|
19
|
+
* This time, I build the library step by step, one part at a time, which was pretty different from what I did with the twitter lib. Progressively built. I required to do design first and then coding. Leasson learned.
|
20
|
+
|
21
|
+
* Finally, coding style. Use vertical spaces.
|
22
|
+
|
23
|
+
---NOTE---
|
24
|
+
|
25
|
+
More information reading the specs, or the README.
|
26
|
+
|
data/TODO.textile
ADDED
data/index.html
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
|
2
|
+
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
|
3
|
+
<html xmlns=http://www.w3.org/1999/xhtml>
|
4
|
+
<head>
|
5
|
+
<title>Lucas Florio's Git Achievements</title>
|
6
|
+
<link rel="alternate" type="application/rss+xml" title"rss feed" href="index.rss"/>
|
7
|
+
<link rel="stylesheet" type="text/css" href="style.css"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
|
11
|
+
<h2>Lucas Florio's Git Achievements</h2>
|
12
|
+
Unlocked 7/ 0 <a href="http://github.com/icefox/git-achievements">Git Achievements</a> for 30 points<br>
|
13
|
+
<ul>
|
14
|
+
<li><div class="title">Apprentice Architect (Level 1)</div> <div class="info">Created a new repository with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-init.html">git-init</a>.</div></li>
|
15
|
+
<li><div class="title">Apprentice Author (Level 1)</div> <div class="info">Made 2^Level commits using <a href="http://www.kernel.org/pub/software/scm/git/docs/git-commit.html">git-commit</a>.</div></li>
|
16
|
+
<li><div class="title">Apprentice Goldsmith (Level 1)</div> <div class="info">Reviewed patches before committing with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-diff.html">git-diff</a> --cached.</div></li>
|
17
|
+
<li><div class="title">Apprentice Goldsmith (Level 2)</div> <div class="info">Reviewed patches before committing with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-diff.html">git-diff</a> --cached.</div></li>
|
18
|
+
<li><div class="title">Apprentice Goldsmith (Level 3)</div> <div class="info">Reviewed patches before committing with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-diff.html">git-diff</a> --cached.</div></li>
|
19
|
+
<li><div class="title">Apprentice Socialite (Level 1)</div> <div class="info">pushed a branch to a remote repository using <a href="http://www.kernel.org/pub/software/scm/git/docs/git-push.html">git-push</a></div></li>
|
20
|
+
<li><div class="title">Apprentice Stone Mason (Level 1)</div> <div class="info">Added files to the index area for inclusion in the next commit with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-add.html">git-add</a></div></li>
|
21
|
+
<li><div class="title">Garage Inventor</div> <div class="info">Used a custom alias for a Git command</div></li>
|
22
|
+
<li><div class="title">Goldsmith (Level 4)</div> <div class="info">Reviewed patches before committing with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-diff.html">git-diff</a> --cached.</div></li>
|
23
|
+
<li><div class="title">Goldsmith (Level 5)</div> <div class="info">Reviewed patches before committing with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-diff.html">git-diff</a> --cached.</div></li>
|
24
|
+
<li><div class="title">Student</div> <div class="info">Accessed the documentation for a command with <a href="http://www.kernel.org/pub/software/scm/git/docs/git-.html">git-</a>[command] --help</div></li>
|
25
|
+
</ul>
|
26
|
+
Git commands sorted by usage:
|
27
|
+
<pre style="text-align: left">
|
28
|
+
70 rev-parse
|
29
|
+
62 diff
|
30
|
+
7 st
|
31
|
+
5 achievements
|
32
|
+
2 push
|
33
|
+
2 init
|
34
|
+
2 ci
|
35
|
+
2 add
|
36
|
+
1 pull
|
37
|
+
</pre>
|
38
|
+
<script type="text/javascript">
|
39
|
+
function showLocked() {
|
40
|
+
document.getElementById('locked').style.visibility = 'visible';
|
41
|
+
document.getElementById('showlocked').style.visibility = 'hidden';
|
42
|
+
}
|
43
|
+
</script>
|
44
|
+
<a id="showlocked" href="javascript:showLocked()" >Show locked Achievements</a>
|
45
|
+
<div id="locked">
|
46
|
+
There are 0 Achievements. Some achievements can be leveled up depending on the number of times it is used (Used 2 times = level 1, 4 = level 2, 8 = level 3, 16 = level 4, 32 = level 5, etc)
|
47
|
+
<ul>
|
48
|
+
</ul></div>
|
49
|
+
</body></html>
|
data/index.rss
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel>
|
2
|
+
<title>Lucas Florio's Git Achievements</title>
|
3
|
+
<description></description>
|
4
|
+
<link></link>
|
5
|
+
<item><title>Apprentice Socialite (Level 1)</title><description>pushed a branch to a remote repository using git push</description></item>
|
6
|
+
<item><title>Goldsmith (Level 5)</title><description>Reviewed patches before committing with git diff --cached.</description></item>
|
7
|
+
<item><title>Apprentice Author (Level 1)</title><description>Made 2^Level commits using git commit.</description></item>
|
8
|
+
<item><title>Apprentice Stone Mason (Level 1)</title><description>Added files to the index area for inclusion in the next commit with git add</description></item>
|
9
|
+
<item><title>Goldsmith (Level 4)</title><description>Reviewed patches before committing with git diff --cached.</description></item>
|
10
|
+
<item><title>Apprentice Architect (Level 1)</title><description>Created a new repository with git init.</description></item>
|
11
|
+
<item><title>Garage Inventor</title><description>Used a custom alias for a Git command</description></item>
|
12
|
+
<item><title>Apprentice Goldsmith (Level 3)</title><description>Reviewed patches before committing with git diff --cached.</description></item>
|
13
|
+
<item><title>Apprentice Goldsmith (Level 2)</title><description>Reviewed patches before committing with git diff --cached.</description></item>
|
14
|
+
<item><title>Apprentice Goldsmith (Level 1)</title><description>Reviewed patches before committing with git diff --cached.</description></item>
|
15
|
+
<item><title>Student</title><description>Accessed the documentation for a command with git [command] --help</description></item>
|
16
|
+
</channel></rss>
|
@@ -5,13 +5,17 @@ module ThemesForRails
|
|
5
5
|
include ThemesForRails::CommonMethods
|
6
6
|
include ThemesForRails::UrlHelpers
|
7
7
|
def stylesheets
|
8
|
-
|
8
|
+
filename = File.basename(params[:asset], File.extname(params[:asset]))
|
9
|
+
render_asset theme_stylesheet_path_for(params[:theme], filename), 'text/css'
|
9
10
|
end
|
10
11
|
def javascripts
|
11
|
-
|
12
|
+
filename = File.basename(params[:asset], File.extname(params[:asset]))
|
13
|
+
render_asset theme_javascript_path_for(params[:theme], filename), 'text/javascript'
|
12
14
|
end
|
13
15
|
def images
|
14
|
-
|
16
|
+
extension = File.extname(params[:asset])
|
17
|
+
filename = params[:asset].gsub(extension, '')
|
18
|
+
render_asset theme_image_path_for(params[:theme], filename, extension), "image/#{extension.gsub('.', '')}"
|
15
19
|
end
|
16
20
|
private
|
17
21
|
def render_asset(asset, mime_type)
|
@@ -28,9 +32,7 @@ module ThemesForRails
|
|
28
32
|
def theme_javascript_path_for(name, asset)
|
29
33
|
File.join(theme_path_for(name), 'javascripts', "#{asset}.js")
|
30
34
|
end
|
31
|
-
def theme_image_path_for(name, asset, extension =
|
32
|
-
extension ||= "png"
|
33
|
-
extension = ".#{extension}"
|
35
|
+
def theme_image_path_for(name, asset, extension = ".png")
|
34
36
|
File.join(theme_path_for(name), 'images', "#{asset}#{extension}")
|
35
37
|
end
|
36
38
|
end
|
@@ -33,7 +33,7 @@ module ThemesForRails
|
|
33
33
|
end
|
34
34
|
# will add the view path for a given theme name
|
35
35
|
def add_theme_view_path_for(name)
|
36
|
-
self.view_paths
|
36
|
+
self.view_paths.insert 0, ActionView::FileSystemResolver.new(view_path_for(name))
|
37
37
|
end
|
38
38
|
def public_theme_path
|
39
39
|
theme_path("/")
|
@@ -1,9 +1,9 @@
|
|
1
1
|
module ThemesForRails
|
2
2
|
module Routes
|
3
3
|
def themes_for_rails
|
4
|
-
match 'themes/:theme/stylesheets
|
5
|
-
match 'themes/:theme/javascripts
|
6
|
-
match 'themes/:theme/images
|
4
|
+
match 'themes/:theme/stylesheets/*asset' => 'themes_for_rails/assets#stylesheets', :as => :base_theme_stylesheet
|
5
|
+
match 'themes/:theme/javascripts/*asset' => 'themes_for_rails/assets#javascripts', :as => :base_theme_javascript
|
6
|
+
match 'themes/:theme/images/*asset' => 'themes_for_rails/assets#images', :as => :base_theme_image
|
7
7
|
end
|
8
8
|
end
|
9
9
|
end
|
@@ -9,14 +9,14 @@ module ThemesForRails
|
|
9
9
|
end
|
10
10
|
module InstanceMethods
|
11
11
|
def current_theme_stylesheet_path(asset)
|
12
|
-
base_theme_stylesheet_path(:theme => self.theme_name, :asset => asset
|
12
|
+
base_theme_stylesheet_path(:theme => self.theme_name, :asset => "#{asset}.css")
|
13
13
|
end
|
14
14
|
def current_theme_javascript_path(asset)
|
15
|
-
base_theme_javascript_path(:theme => self.theme_name, :asset => asset
|
15
|
+
base_theme_javascript_path(:theme => self.theme_name, :asset => "#{asset}.js")
|
16
16
|
end
|
17
17
|
def current_theme_image_path(asset)
|
18
18
|
image, extension = asset.split(".")
|
19
|
-
base_theme_image_path(:theme => self.theme_name, :asset => image
|
19
|
+
base_theme_image_path(:theme => self.theme_name, :asset => "#{image}.#{extension}")
|
20
20
|
end
|
21
21
|
end
|
22
22
|
end
|
@@ -6,14 +6,13 @@ module ThemesForRails
|
|
6
6
|
end
|
7
7
|
module InstanceMethods
|
8
8
|
def current_theme_stylesheet_path(asset)
|
9
|
-
base_theme_stylesheet_path(:theme => self.theme_name, :asset => asset
|
9
|
+
base_theme_stylesheet_path(:theme => self.theme_name, :asset => "#{asset}.js")
|
10
10
|
end
|
11
11
|
def current_theme_javascript_path(asset)
|
12
|
-
base_theme_javascript_path(:theme => self.theme_name, :asset => asset
|
12
|
+
base_theme_javascript_path(:theme => self.theme_name, :asset => "#{asset}.js")
|
13
13
|
end
|
14
14
|
def current_theme_image_path(asset)
|
15
|
-
|
16
|
-
self.base_theme_image_path(:theme => self.theme_name, :asset => image, :extension => extension)
|
15
|
+
self.base_theme_image_path(:theme => self.theme_name, :asset => asset)
|
17
16
|
end
|
18
17
|
alias_method :theme_image_path, :current_theme_image_path
|
19
18
|
alias_method :theme_javascript_path, :current_theme_javascript_path
|
@@ -7,25 +7,26 @@ module ThemesForRails
|
|
7
7
|
assert @controller.respond_to?(:stylesheets)
|
8
8
|
end
|
9
9
|
should "respond with the right stylesheet file when requested" do
|
10
|
-
get 'stylesheets', { :theme => 'default', :asset => 'style
|
10
|
+
get 'stylesheets', { :theme => 'default', :asset => 'style.css'}
|
11
11
|
assert_response :success
|
12
12
|
assert_equal @response.content_type, 'text/css'
|
13
13
|
end
|
14
14
|
should "not be success when the stylesheet file is not found" do
|
15
|
-
get 'stylesheets', { :theme => 'default', :asset => 'oldstyle
|
15
|
+
get 'stylesheets', { :theme => 'default', :asset => 'oldstyle.css'}
|
16
16
|
assert_response :missing
|
17
17
|
end
|
18
|
+
|
18
19
|
# javascripts
|
19
20
|
should "respond to javascripts" do
|
20
21
|
assert @controller.respond_to?(:javascripts)
|
21
22
|
end
|
22
23
|
should "respond with the right javascript file when requested" do
|
23
|
-
get 'javascripts', { :theme => 'default', :asset => 'app
|
24
|
+
get 'javascripts', { :theme => 'default', :asset => 'app.js'}
|
24
25
|
assert_response :success
|
25
26
|
assert_equal @response.content_type, 'text/javascript'
|
26
27
|
end
|
27
28
|
should "not be success when the javascript file is not found" do
|
28
|
-
get 'javascripts', { :theme => 'default', :asset => 'oldapp
|
29
|
+
get 'javascripts', { :theme => 'default', :asset => 'oldapp.js'}
|
29
30
|
assert_response :missing
|
30
31
|
end
|
31
32
|
|
@@ -34,13 +35,19 @@ module ThemesForRails
|
|
34
35
|
assert @controller.respond_to?(:images)
|
35
36
|
end
|
36
37
|
should "respond with the right image file when requested" do
|
37
|
-
get 'images', { :theme => 'default', :asset => 'logo
|
38
|
+
get 'images', { :theme => 'default', :asset => 'logo.png'}
|
38
39
|
assert_response :success
|
39
40
|
assert_equal @response.content_type, 'image/png'
|
40
41
|
end
|
41
42
|
should "not be success when the image file is not found" do
|
42
|
-
get 'images', { :theme => 'default', :asset => 'i_am_not_here
|
43
|
+
get 'images', { :theme => 'default', :asset => 'i_am_not_here.jpg'}
|
43
44
|
assert_response :missing
|
44
45
|
end
|
46
|
+
|
47
|
+
should "respond with a nested asset" do
|
48
|
+
get 'images', { :theme => 'default', :asset => 'nested/logo.png'}
|
49
|
+
assert_response :success
|
50
|
+
assert_equal @response.content_type, 'image/png'
|
51
|
+
end
|
45
52
|
end
|
46
53
|
end
|
@@ -46,14 +46,14 @@ module ThemesForRails
|
|
46
46
|
end
|
47
47
|
context "when a theme has been set" do
|
48
48
|
tests ApplicationController
|
49
|
-
should "add the theme's view path to the
|
49
|
+
should "add the theme's view path to the front of the general view paths" do
|
50
50
|
antes = @controller.view_paths.size
|
51
51
|
@controller.theme 'default'
|
52
52
|
assert_equal antes + 1, @controller.view_paths.size
|
53
53
|
end
|
54
54
|
should "have a proper view path" do
|
55
55
|
@controller.theme 'default'
|
56
|
-
view_path = @controller.view_paths.
|
56
|
+
view_path = @controller.view_paths.first
|
57
57
|
theme_path = File.join(File.expand_path(File.dirname(__FILE__)), "dummy_app", "themes", "default", "views")
|
58
58
|
assert_equal view_path.to_s, theme_path
|
59
59
|
end
|
File without changes
|
data/test/routes_test.rb
CHANGED
@@ -7,8 +7,7 @@ module ThemesForRails
|
|
7
7
|
:controller => 'themes_for_rails/assets',
|
8
8
|
:action => 'stylesheets',
|
9
9
|
:theme => 'default',
|
10
|
-
:asset => 'app'
|
11
|
-
:extension => 'css'
|
10
|
+
:asset => 'app.css'
|
12
11
|
})
|
13
12
|
end
|
14
13
|
should "recognize javascripts route" do
|
@@ -16,8 +15,7 @@ module ThemesForRails
|
|
16
15
|
:controller => 'themes_for_rails/assets',
|
17
16
|
:action => 'javascripts',
|
18
17
|
:theme => 'default',
|
19
|
-
:asset => 'app'
|
20
|
-
:extension => 'js'
|
18
|
+
:asset => 'app.js'
|
21
19
|
})
|
22
20
|
end
|
23
21
|
should "recognize images route" do
|
@@ -25,8 +23,16 @@ module ThemesForRails
|
|
25
23
|
:controller => 'themes_for_rails/assets',
|
26
24
|
:action => 'images',
|
27
25
|
:theme => 'default',
|
28
|
-
:asset => 'logo'
|
29
|
-
|
26
|
+
:asset => 'logo.png'
|
27
|
+
})
|
28
|
+
end
|
29
|
+
|
30
|
+
should "recognize nested route" do
|
31
|
+
assert_generates('/themes/default/images/nested/logo.png', {
|
32
|
+
:controller => 'themes_for_rails/assets',
|
33
|
+
:action => 'images',
|
34
|
+
:theme => 'default',
|
35
|
+
:asset => 'nested/logo.png'
|
30
36
|
})
|
31
37
|
end
|
32
38
|
end
|
data/themes_for_rails.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{themes_for_rails}
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.4"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Lucas Florio"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-10-06}
|
13
13
|
s.description = %q{It allows an application to have many different ways of rendering static assets and dynamic views. }
|
14
14
|
s.email = %q{lucasefe@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -21,7 +21,12 @@ Gem::Specification.new do |s|
|
|
21
21
|
"Gemfile",
|
22
22
|
"Gemfile.lock",
|
23
23
|
"README.textile",
|
24
|
+
"REVIEW_NOTES",
|
25
|
+
"RMU_REVIEW",
|
24
26
|
"Rakefile",
|
27
|
+
"TODO.textile",
|
28
|
+
"index.html",
|
29
|
+
"index.rss",
|
25
30
|
"init.rb",
|
26
31
|
"lib/generators/theme_for_rails/install_generator.rb",
|
27
32
|
"lib/generators/theme_for_rails/templates/theme/images/.gitkeep",
|
@@ -80,6 +85,7 @@ Gem::Specification.new do |s|
|
|
80
85
|
"test/dummy_app/public/stylesheets/.gitkeep",
|
81
86
|
"test/dummy_app/script/rails",
|
82
87
|
"test/dummy_app/themes/default/images/logo.png",
|
88
|
+
"test/dummy_app/themes/default/images/nested/logo.png",
|
83
89
|
"test/dummy_app/themes/default/javascripts/app.js",
|
84
90
|
"test/dummy_app/themes/default/stylesheets/style.css",
|
85
91
|
"test/dummy_app/themes/default/stylesheets/style2.css",
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 2
|
8
|
-
-
|
9
|
-
version: 0.2.
|
8
|
+
- 4
|
9
|
+
version: 0.2.4
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Lucas Florio
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-10-06 00:00:00 -03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies: []
|
20
20
|
|
@@ -32,7 +32,12 @@ files:
|
|
32
32
|
- Gemfile
|
33
33
|
- Gemfile.lock
|
34
34
|
- README.textile
|
35
|
+
- REVIEW_NOTES
|
36
|
+
- RMU_REVIEW
|
35
37
|
- Rakefile
|
38
|
+
- TODO.textile
|
39
|
+
- index.html
|
40
|
+
- index.rss
|
36
41
|
- init.rb
|
37
42
|
- lib/generators/theme_for_rails/install_generator.rb
|
38
43
|
- lib/generators/theme_for_rails/templates/theme/images/.gitkeep
|
@@ -91,6 +96,7 @@ files:
|
|
91
96
|
- test/dummy_app/public/stylesheets/.gitkeep
|
92
97
|
- test/dummy_app/script/rails
|
93
98
|
- test/dummy_app/themes/default/images/logo.png
|
99
|
+
- test/dummy_app/themes/default/images/nested/logo.png
|
94
100
|
- test/dummy_app/themes/default/javascripts/app.js
|
95
101
|
- test/dummy_app/themes/default/stylesheets/style.css
|
96
102
|
- test/dummy_app/themes/default/stylesheets/style2.css
|