rails_real_favicon 0.0.1

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.
Files changed (47) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +34 -0
  5. data/lib/generators/favicon_generator.rb +90 -0
  6. data/lib/rails_real_favicon.rb +2 -0
  7. data/lib/rails_real_favicon/version.rb +3 -0
  8. data/test/dummy/README.rdoc +28 -0
  9. data/test/dummy/Rakefile +6 -0
  10. data/test/dummy/app/assets/javascripts/application.js +13 -0
  11. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  12. data/test/dummy/app/controllers/application_controller.rb +5 -0
  13. data/test/dummy/app/helpers/application_helper.rb +2 -0
  14. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  15. data/test/dummy/bin/bundle +3 -0
  16. data/test/dummy/bin/rails +4 -0
  17. data/test/dummy/bin/rake +4 -0
  18. data/test/dummy/bin/setup +29 -0
  19. data/test/dummy/config.ru +4 -0
  20. data/test/dummy/config/application.rb +26 -0
  21. data/test/dummy/config/boot.rb +5 -0
  22. data/test/dummy/config/database.yml +25 -0
  23. data/test/dummy/config/environment.rb +5 -0
  24. data/test/dummy/config/environments/development.rb +41 -0
  25. data/test/dummy/config/environments/production.rb +79 -0
  26. data/test/dummy/config/environments/test.rb +42 -0
  27. data/test/dummy/config/initializers/assets.rb +11 -0
  28. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  29. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  30. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  31. data/test/dummy/config/initializers/inflections.rb +16 -0
  32. data/test/dummy/config/initializers/mime_types.rb +4 -0
  33. data/test/dummy/config/initializers/session_store.rb +3 -0
  34. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  35. data/test/dummy/config/locales/en.yml +23 -0
  36. data/test/dummy/config/routes.rb +56 -0
  37. data/test/dummy/config/secrets.yml +22 -0
  38. data/test/dummy/db/test.sqlite3 +0 -0
  39. data/test/dummy/log/test.log +210 -0
  40. data/test/dummy/public/404.html +67 -0
  41. data/test/dummy/public/422.html +67 -0
  42. data/test/dummy/public/500.html +66 -0
  43. data/test/dummy/public/favicon.ico +0 -0
  44. data/test/lib/generators/favicon_generator_test.rb +112 -0
  45. data/test/rails_real_favicon_test.rb +7 -0
  46. data/test/test_helper.rb +20 -0
  47. metadata +184 -0
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
@@ -0,0 +1,112 @@
1
+ require 'test_helper'
2
+ require 'generators/favicon_generator'
3
+
4
+ class FaviconGeneratorTest < Rails::Generators::TestCase
5
+ tests FaviconGenerator
6
+ destination Rails.root.join('tmp/generators')
7
+ setup :prepare_destination
8
+
9
+ test "replace URLs by asset_path in XML" do
10
+ original = <<EOF
11
+ <?xml version="1.0" encoding="utf-8"?>
12
+ <browserconfig>
13
+ <msapplication>
14
+ <tile>
15
+ <square70x70logo src="Dfv87ZbNh2/mstile-70x70.png"/>
16
+ <square150x150logo src="Dfv87ZbNh2/mstile-150x150.png"/>
17
+ <square310x310logo src="Dfv87ZbNh2/mstile-310x310.png"/>
18
+ <wide310x150logo src="Dfv87ZbNh2/mstile-310x150.png"/>
19
+ <TileColor>#da532c</TileColor>
20
+ </tile>
21
+ </msapplication>
22
+ </browserconfig>
23
+ EOF
24
+
25
+ expected = <<EOF
26
+ <?xml version="1.0" encoding="utf-8"?>
27
+ <browserconfig>
28
+ <msapplication>
29
+ <tile>
30
+ <square70x70logo src="<%= asset_path 'favicon/mstile-70x70.png' %>"/>
31
+ <square150x150logo src="<%= asset_path 'favicon/mstile-150x150.png' %>"/>
32
+ <square310x310logo src="<%= asset_path 'favicon/mstile-310x310.png' %>"/>
33
+ <wide310x150logo src="<%= asset_path 'favicon/mstile-310x150.png' %>"/>
34
+ <TileColor>#da532c</TileColor>
35
+ </tile>
36
+ </msapplication>
37
+ </browserconfig>
38
+ EOF
39
+ gen = FaviconGenerator.new
40
+ assert_equal expected, gen.send(:replace_url_by_asset_path, original)
41
+ end
42
+
43
+ test "replace URLs by asset_path in JSON" do
44
+ original = <<EOF
45
+ {
46
+ "name": "The app",
47
+ "icons": [
48
+ {
49
+ "src": "Dfv87ZbNh2\\/android-chrome-36x36.png",
50
+ "sizes": "36x36",
51
+ "type": "image\\/png",
52
+ "density": "0.75"
53
+ },
54
+ {
55
+ "src": "Dfv87ZbNh2\\/android-chrome-48x48.png",
56
+ "sizes": "48x48",
57
+ "type": "image\\/png",
58
+ "density": "1.0"
59
+ }
60
+ ]
61
+ }
62
+ EOF
63
+
64
+ expected = <<EOF
65
+ {
66
+ "name": "The app",
67
+ "icons": [
68
+ {
69
+ "src": "<%= asset_path 'favicon/android-chrome-36x36.png' %>",
70
+ "sizes": "36x36",
71
+ "type": "image\\/png",
72
+ "density": "0.75"
73
+ },
74
+ {
75
+ "src": "<%= asset_path 'favicon/android-chrome-48x48.png' %>",
76
+ "sizes": "48x48",
77
+ "type": "image\\/png",
78
+ "density": "1.0"
79
+ }
80
+ ]
81
+ }
82
+ EOF
83
+ gen = FaviconGenerator.new
84
+ assert_equal expected, gen.send(:replace_url_by_asset_path, original)
85
+ end
86
+
87
+ test "replace URLs by asset_path in HTML" do
88
+ original = <<EOF
89
+ <link rel="apple-touch-icon" sizes="180x180" href="Dfv87ZbNh2/apple-touch-icon-180x180.png">
90
+ <link rel="icon" type="image/png" href="Dfv87ZbNh2/favicon-16x16.png" sizes="16x16">
91
+ <link rel="manifest" href="Dfv87ZbNh2/manifest.json">
92
+ <link rel="shortcut icon" href="Dfv87ZbNh2/favicon.ico">
93
+ <meta name="msapplication-TileColor" content="#da532c">
94
+ <meta name="msapplication-TileImage" content="Dfv87ZbNh2/mstile-144x144.png">
95
+ <meta name="msapplication-config" content="Dfv87ZbNh2/browserconfig.xml">
96
+ <meta name="theme-color" content="#ffffff">
97
+ EOF
98
+
99
+ expected = <<EOF
100
+ <link rel="apple-touch-icon" sizes="180x180" href="<%= asset_path 'favicon/apple-touch-icon-180x180.png' %>">
101
+ <link rel="icon" type="image/png" href="<%= asset_path 'favicon/favicon-16x16.png' %>" sizes="16x16">
102
+ <link rel="manifest" href="<%= asset_path 'favicon/manifest.json' %>">
103
+ <link rel="shortcut icon" href="<%= asset_path 'favicon/favicon.ico' %>">
104
+ <meta name="msapplication-TileColor" content="#da532c">
105
+ <meta name="msapplication-TileImage" content="<%= asset_path 'favicon/mstile-144x144.png' %>">
106
+ <meta name="msapplication-config" content="<%= asset_path 'favicon/browserconfig.xml' %>">
107
+ <meta name="theme-color" content="#ffffff">
108
+ EOF
109
+ gen = FaviconGenerator.new
110
+ assert_equal expected, gen.send(:replace_url_by_asset_path, original)
111
+ end
112
+ end
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class RailsRealFaviconTest < ActiveSupport::TestCase
4
+ test "truth" do
5
+ assert_kind_of Module, RailsRealFavicon
6
+ end
7
+ end
@@ -0,0 +1,20 @@
1
+ # Configure Rails Environment
2
+ ENV["RAILS_ENV"] = "test"
3
+
4
+ require File.expand_path("../../test/dummy/config/environment.rb", __FILE__)
5
+ ActiveRecord::Migrator.migrations_paths = [File.expand_path("../../test/dummy/db/migrate", __FILE__)]
6
+ require "rails/test_help"
7
+
8
+ # Filter out Minitest backtrace while allowing backtrace from other libraries
9
+ # to be shown.
10
+ Minitest.backtrace_filter = Minitest::BacktraceFilter.new
11
+
12
+ # Load support files
13
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
14
+
15
+ # Load fixtures from the engine
16
+ if ActiveSupport::TestCase.respond_to?(:fixture_path=)
17
+ ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures", __FILE__)
18
+ ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
19
+ ActiveSupport::TestCase.fixtures :all
20
+ end
metadata ADDED
@@ -0,0 +1,184 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rails_real_favicon
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Philippe Bernard
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-11-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rest-client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.8'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.8'
41
+ - !ruby/object:Gem::Dependency
42
+ name: json
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.7'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.7'
55
+ - !ruby/object:Gem::Dependency
56
+ name: zip
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2'
69
+ description: Generate and install a favicon for all platforms with RealFaviconGenerator.
70
+ email:
71
+ - philippe@realfavicongenerator.net
72
+ executables: []
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - MIT-LICENSE
77
+ - README.rdoc
78
+ - Rakefile
79
+ - lib/generators/favicon_generator.rb
80
+ - lib/rails_real_favicon.rb
81
+ - lib/rails_real_favicon/version.rb
82
+ - test/dummy/README.rdoc
83
+ - test/dummy/Rakefile
84
+ - test/dummy/app/assets/javascripts/application.js
85
+ - test/dummy/app/assets/stylesheets/application.css
86
+ - test/dummy/app/controllers/application_controller.rb
87
+ - test/dummy/app/helpers/application_helper.rb
88
+ - test/dummy/app/views/layouts/application.html.erb
89
+ - test/dummy/bin/bundle
90
+ - test/dummy/bin/rails
91
+ - test/dummy/bin/rake
92
+ - test/dummy/bin/setup
93
+ - test/dummy/config.ru
94
+ - test/dummy/config/application.rb
95
+ - test/dummy/config/boot.rb
96
+ - test/dummy/config/database.yml
97
+ - test/dummy/config/environment.rb
98
+ - test/dummy/config/environments/development.rb
99
+ - test/dummy/config/environments/production.rb
100
+ - test/dummy/config/environments/test.rb
101
+ - test/dummy/config/initializers/assets.rb
102
+ - test/dummy/config/initializers/backtrace_silencers.rb
103
+ - test/dummy/config/initializers/cookies_serializer.rb
104
+ - test/dummy/config/initializers/filter_parameter_logging.rb
105
+ - test/dummy/config/initializers/inflections.rb
106
+ - test/dummy/config/initializers/mime_types.rb
107
+ - test/dummy/config/initializers/session_store.rb
108
+ - test/dummy/config/initializers/wrap_parameters.rb
109
+ - test/dummy/config/locales/en.yml
110
+ - test/dummy/config/routes.rb
111
+ - test/dummy/config/secrets.yml
112
+ - test/dummy/db/test.sqlite3
113
+ - test/dummy/log/test.log
114
+ - test/dummy/public/404.html
115
+ - test/dummy/public/422.html
116
+ - test/dummy/public/500.html
117
+ - test/dummy/public/favicon.ico
118
+ - test/lib/generators/favicon_generator_test.rb
119
+ - test/rails_real_favicon_test.rb
120
+ - test/test_helper.rb
121
+ homepage: https://github.com/RealFaviconGenerator/rails_real_favicon
122
+ licenses:
123
+ - MIT
124
+ metadata: {}
125
+ post_install_message:
126
+ rdoc_options: []
127
+ require_paths:
128
+ - lib
129
+ required_ruby_version: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ required_rubygems_version: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ requirements: []
140
+ rubyforge_project:
141
+ rubygems_version: 2.2.2
142
+ signing_key:
143
+ specification_version: 4
144
+ summary: Manage the favicon of your RoR project with RealFaviconGenerator
145
+ test_files:
146
+ - test/dummy/app/assets/javascripts/application.js
147
+ - test/dummy/app/assets/stylesheets/application.css
148
+ - test/dummy/app/controllers/application_controller.rb
149
+ - test/dummy/app/helpers/application_helper.rb
150
+ - test/dummy/app/views/layouts/application.html.erb
151
+ - test/dummy/bin/bundle
152
+ - test/dummy/bin/rails
153
+ - test/dummy/bin/rake
154
+ - test/dummy/bin/setup
155
+ - test/dummy/config/application.rb
156
+ - test/dummy/config/boot.rb
157
+ - test/dummy/config/database.yml
158
+ - test/dummy/config/environment.rb
159
+ - test/dummy/config/environments/development.rb
160
+ - test/dummy/config/environments/production.rb
161
+ - test/dummy/config/environments/test.rb
162
+ - test/dummy/config/initializers/assets.rb
163
+ - test/dummy/config/initializers/backtrace_silencers.rb
164
+ - test/dummy/config/initializers/cookies_serializer.rb
165
+ - test/dummy/config/initializers/filter_parameter_logging.rb
166
+ - test/dummy/config/initializers/inflections.rb
167
+ - test/dummy/config/initializers/mime_types.rb
168
+ - test/dummy/config/initializers/session_store.rb
169
+ - test/dummy/config/initializers/wrap_parameters.rb
170
+ - test/dummy/config/locales/en.yml
171
+ - test/dummy/config/routes.rb
172
+ - test/dummy/config/secrets.yml
173
+ - test/dummy/config.ru
174
+ - test/dummy/db/test.sqlite3
175
+ - test/dummy/log/test.log
176
+ - test/dummy/public/404.html
177
+ - test/dummy/public/422.html
178
+ - test/dummy/public/500.html
179
+ - test/dummy/public/favicon.ico
180
+ - test/dummy/Rakefile
181
+ - test/dummy/README.rdoc
182
+ - test/lib/generators/favicon_generator_test.rb
183
+ - test/rails_real_favicon_test.rb
184
+ - test/test_helper.rb