sprites 0.0.1.rc2 → 0.0.1.rc3
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/Gemfile +0 -8
- data/MIT-LICENSE +20 -0
- data/README.md +76 -1
- data/Rakefile +4 -39
- data/bin/sprites +5 -7
- data/features/cli.feature +1 -1
- data/features/step_definitions/common_steps.rb +10 -8
- data/lib/sprites.rb +123 -13
- data/lib/sprites/cli/cli_application.rb +6 -4
- data/lib/sprites/cli/command_line_option_parser.rb +16 -16
- data/lib/sprites/configuration.rb +26 -7
- data/lib/sprites/railtie.rb +56 -0
- data/lib/sprites/sprite.rb +80 -46
- data/lib/sprites/sprite_generators/chunky_png_generator.rb +14 -8
- data/lib/sprites/sprite_piece.rb +20 -9
- data/lib/sprites/sprite_pieces.rb +10 -10
- data/lib/sprites/test/sprite_generator_tester.rb +23 -12
- data/lib/sprites/version.rb +2 -2
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/bas/bar.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/bas/bas.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/bas/bkgd_main_copy.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/bas/foo.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/bas/fubar.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-default-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-default-cap-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-default-cap-long.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-onclick-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-onclick-cap-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-onclick-cap-long.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-rollover-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-rollover-cap-28.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-rollover-cap-long.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-black-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blackarrow-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blackarrow-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blackarrow-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-blue-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-green-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-red-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-trans-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-white-rollover.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-default-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-default-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-default-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-default.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-onclick-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-onclick-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-onclick-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-onclick.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-rollover-cap.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-rollover-drop.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-rollover-edge.png +0 -0
- data/spec/fixtures/{rails_project2 → fake_engine}/app/assets/images/sprite_images/buttons/btn-yellow-rollover.png +0 -0
- data/spec/fixtures/fake_engine/config/sprites.rb +91 -0
- data/spec/fixtures/fake_engine/lib/fake_engine.rb +5 -0
- data/spec/fixtures/project1/config/sprites.rb +143 -145
- data/spec/fixtures/rails_project1/config/application.rb +4 -3
- data/spec/fixtures/rails_project1/config/sprites.rb +90 -92
- data/spec/integration/rails/rails_spec.rb +46 -13
- data/spec/lib/sprites/configuration_spec.rb +11 -5
- data/spec/lib/sprites/sprite_generators/chunky_png_generator_spec.rb +10 -9
- data/spec/lib/sprites/sprite_piece_spec.rb +25 -24
- data/spec/lib/sprites/sprite_pieces_spec.rb +5 -2
- data/spec/lib/sprites/sprite_spec.rb +30 -33
- data/spec/lib/sprites/test/sprite_generator_tester_spec.rb +37 -9
- data/spec/lib/sprites_spec.rb +163 -8
- data/spec/spec_helper.rb +4 -4
- data/spec/support/sprites_helper.rb +1 -1
- data/sprites.gemspec +6 -5
- metadata +134 -660
- data/lib/sprites/application.rb +0 -60
- data/lib/sprites/autoload.rb +0 -1
- data/lib/sprites/autoloader.rb +0 -16
- data/lib/sprites/notifier.rb +0 -4
- data/lib/sprites/rails.rb +0 -20
- data/lib/sprites/rails/autoload.rb +0 -13
- data/lib/sprites/rails/sprites.rake +0 -15
- data/lib/sprites/sprites.rb +0 -47
- data/lib/sprites/stylesheet.rb +0 -26
- data/spec/fixtures/rails_project1/Rakefile +0 -5
- data/spec/fixtures/rails_project1/config/boot.rb +0 -6
- data/spec/fixtures/rails_project1/config/environment.rb +0 -7
- data/spec/fixtures/rails_project2/Rakefile +0 -5
- data/spec/fixtures/rails_project2/config/application.rb +0 -61
- data/spec/fixtures/rails_project2/config/boot.rb +0 -6
- data/spec/fixtures/rails_project2/config/environment.rb +0 -7
- data/spec/fixtures/rails_project2/config/sprites.rb +0 -93
- data/spec/lib/sprites/application_spec.rb +0 -50
- data/spec/lib/sprites/autoloader_spec.rb +0 -21
- data/spec/lib/sprites/cli/command_line_option_parser_spec.rb +0 -5
- data/spec/lib/sprites/notifier_spec.rb +0 -5
- data/spec/lib/sprites/sprites_spec.rb +0 -100
- data/spec/lib/sprites/stylesheet_spec.rb +0 -24
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
$: << File.expand_path('../../..', __FILE__)
|
2
2
|
|
3
3
|
# Pick the frameworks you want:
|
4
4
|
require "active_record/railtie"
|
@@ -6,8 +6,7 @@ require "action_controller/railtie"
|
|
6
6
|
# require "action_mailer/railtie"
|
7
7
|
# require "active_resource/railtie"
|
8
8
|
require "sprockets/railtie"
|
9
|
-
require '
|
10
|
-
require 'sprites/rails/autoload'
|
9
|
+
require 'fake_engine/lib/fake_engine'
|
11
10
|
|
12
11
|
if defined?(Bundler)
|
13
12
|
# If you precompile assets before deploying to production, use this line
|
@@ -55,6 +54,8 @@ module SpritesRailsTestApp
|
|
55
54
|
# Version of your assets, change this if you want to expire all your assets
|
56
55
|
config.assets.version = '1.0'
|
57
56
|
config.active_support.deprecation = :log
|
57
|
+
|
58
|
+
config.uses_sprites = true
|
58
59
|
end
|
59
60
|
end
|
60
61
|
|
@@ -1,93 +1,91 @@
|
|
1
|
-
|
2
|
-
sprite :bas
|
1
|
+
sprite :bas
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
end
|
3
|
+
sprite :buttons, :path => "buttons.png", :stylesheet_path => "buttons.css", :autoload => false do
|
4
|
+
sprite_piece 'buttons/btn-black-default-28.png', 'a.black.wf_button > span, button.black.wf_submit span'
|
5
|
+
sprite_piece 'buttons/btn-black-default-cap-28.png', 'a.black.wf_button, button.black.wf_submit', :x => 'right'
|
6
|
+
sprite_piece 'buttons/btn-black-rollover-28.png', 'a.black.wf_button:hover > span, button.black.wf_submit:hover span'
|
7
|
+
sprite_piece 'buttons/btn-black-rollover-cap-28.png', 'a.black.wf_button:hover, button.black.wf_submit:hover', :x => 'right'
|
8
|
+
sprite_piece 'buttons/btn-black-onclick-28.png', 'a.black.wf_button:active > span, button.black.wf_submit:active span, a.black.wf_button.active span'
|
9
|
+
sprite_piece 'buttons/btn-black-onclick-cap-28.png', 'a.black.wf_button:active, button.black.wf_submit:active, a.black.wf_button.active', :x => 'right'
|
10
|
+
sprite_piece 'buttons/btn-green-default.png', 'a.green.wf_button > span, button.green.wf_submit span'
|
11
|
+
sprite_piece 'buttons/btn-green-default-cap.png', 'a.green.wf_button, button.green.wf_submit', :x => 'right'
|
12
|
+
sprite_piece 'buttons/btn-green-rollover.png', 'a.green.wf_button:hover > span, button.green.wf_submit:hover span'
|
13
|
+
sprite_piece 'buttons/btn-green-rollover-cap.png', 'a.green.wf_button:hover, button.green.wf_submit:hover', :x => 'right'
|
14
|
+
sprite_piece 'buttons/btn-green-onclick.png', 'a.green.wf_button:active > span, button.green.wf_submit:active span'
|
15
|
+
sprite_piece 'buttons/btn-green-onclick-cap.png', 'a.green.wf_button:active, button.green.wf_submit:active', :x => 'right'
|
16
|
+
sprite_piece 'buttons/btn-green-default-edge.png', 'a.right_edge.green.wf_button, button.right_edge.green.wf_submit', :x => 'right'
|
17
|
+
sprite_piece 'buttons/btn-green-rollover-edge.png', 'a.right_edge.green.wf_button:hover button.right_edge.green.wf_submit:hover', :x => 'right'
|
18
|
+
sprite_piece 'buttons/btn-green-onclick-edge.png', 'a.right_edge.green.wf_button:active, button.right_edge.green.wf_submit:active', :x => 'right'
|
19
|
+
sprite_piece 'buttons/btn-green-default-drop.png', 'a.green.wf_menu_button'
|
20
|
+
sprite_piece 'buttons/btn-green-rollover-drop.png', 'a.green.wf_menu_button:hover'
|
21
|
+
sprite_piece 'buttons/btn-green-onclick-drop.png', 'a.green.wf_menu_button:active'
|
22
|
+
sprite_piece 'buttons/btn-black-default.png', 'a.tall.black.wf_button > span, button.tall.black.wf_submit span'
|
23
|
+
sprite_piece 'buttons/btn-black-default-cap-long.png', 'a.tall.black.wf_button, button.tall.black.wf_submit, a.black.back_arrow.wf_button', :x => 'right'
|
24
|
+
sprite_piece 'buttons/btn-black-rollover.png', 'a.tall.black.wf_button:hover > span, button.tall.black.wf_submit:hover span'
|
25
|
+
sprite_piece 'buttons/btn-black-rollover-cap-long.png', 'a.tall.black.wf_button:hover, button.tall.black.wf_submit:hover, a.black.back_arrow.wf_button:hover', :x => 'right'
|
26
|
+
sprite_piece 'buttons/btn-black-onclick.png', 'a.tall.black.wf_button:active > span, button.tall.black.wf_submit:active span, a.black.tall.wf_button.active span'
|
27
|
+
sprite_piece 'buttons/btn-black-onclick-cap-long.png', 'a.tall.black.wf_button:active, button.tall.black.wf_submit:active, a.black.back_arrow.wf_button:active, a.black.tall.wf_button.active', :x => 'right'
|
28
|
+
sprite_piece 'buttons/btn-red-default.png', 'a.red.wf_button > span, button.red.wf_submit span'
|
29
|
+
sprite_piece 'buttons/btn-red-default-cap.png', 'a.red.wf_button, button.red.wf_submit', :x => 'right'
|
30
|
+
sprite_piece 'buttons/btn-red-rollover.png', 'a.red.wf_button:hover > span, button.red.wf_submit:hover span'
|
31
|
+
sprite_piece 'buttons/btn-red-rollover-cap.png', 'a.red.wf_button:hover, button.red.wf_submit:hover', :x => 'right'
|
32
|
+
sprite_piece 'buttons/btn-red-onclick.png', 'a.red.wf_button:active > span, button.red.wf_submit:active span'
|
33
|
+
sprite_piece 'buttons/btn-red-onclick-cap.png', 'a.red.wf_button:active, button.red.wf_submit:active', :x => 'right'
|
34
|
+
sprite_piece 'buttons/btn-yellow-default.png', 'a.yellow.wf_button > span, button.yellow.wf_submit span'
|
35
|
+
sprite_piece 'buttons/btn-yellow-default-cap.png', 'a.yellow.wf_button, button.yellow.wf_submit', :x => 'right'
|
36
|
+
sprite_piece 'buttons/btn-yellow-rollover.png', 'a.yellow.wf_button:hover > span, button.yellow.wf_submit:hover span'
|
37
|
+
sprite_piece 'buttons/btn-yellow-rollover-cap.png', 'a.yellow.wf_button:hover, button.yellow.wf_submit:hover', :x => 'right'
|
38
|
+
sprite_piece 'buttons/btn-yellow-onclick.png', 'a.yellow.wf_button:active > span, button.yellow.wf_submit:active span'
|
39
|
+
sprite_piece 'buttons/btn-yellow-onclick-cap.png', 'a.yellow.wf_button:active, button.yellow.wf_submit:active', :x => 'right'
|
40
|
+
sprite_piece 'buttons/btn-white-default.png', 'a.white.wf_button > span, button.white.wf_submit span'
|
41
|
+
sprite_piece 'buttons/btn-white-default-cap.png', 'a.white.wf_button, button.white.wf_submit', :x => 'right'
|
42
|
+
sprite_piece 'buttons/btn-white-rollover.png', 'a.white.wf_button:hover > span, button.white.wf_submit:hover span'
|
43
|
+
sprite_piece 'buttons/btn-white-rollover-cap.png', 'a.white.wf_button:hover, button.white.wf_submit:hover', :x => 'right'
|
44
|
+
sprite_piece 'buttons/btn-white-onclick.png', 'a.white.wf_button:active > span, button.white.wf_submit:active span'
|
45
|
+
sprite_piece 'buttons/btn-white-onclick-cap.png', 'a.white.wf_button:active, button.white.wf_submit:active', :x => 'right'
|
46
|
+
sprite_piece 'buttons/btn-trans-default.png', 'a.trans.wf_button > span, button.trans.wf_submit span'
|
47
|
+
sprite_piece 'buttons/btn-trans-default-cap.png', 'a.trans.wf_button, button.trans.wf_submit', :x => 'right'
|
48
|
+
sprite_piece 'buttons/btn-trans-rollover.png', 'a.trans.wf_button:hover > span, button.trans.wf_submit:hover span'
|
49
|
+
sprite_piece 'buttons/btn-trans-rollover-cap.png', 'a.trans.wf_button:hover, button.trans.wf_submit:hover', :x => 'right'
|
50
|
+
sprite_piece 'buttons/btn-trans-onclick.png', 'a.trans.wf_button:active > span, button.trans.wf_submit:active span'
|
51
|
+
sprite_piece 'buttons/btn-trans-onclick-cap.png', 'a.trans.wf_button:active, button.trans.wf_submit:active', :x => 'right'
|
52
|
+
sprite_piece 'buttons/btn-blue-default.png', 'a.blue.wf_button > span, button.blue.wf_submit span'
|
53
|
+
sprite_piece 'buttons/btn-blue-default-cap.png', 'a.blue.wf_button, button.blue.wf_submit', :x => 'right'
|
54
|
+
sprite_piece 'buttons/btn-blue-rollover.png', 'a.blue.wf_button:hover > span, button.blue.wf_submit:hover span'
|
55
|
+
sprite_piece 'buttons/btn-blue-rollover-cap.png', 'a.blue.wf_button:hover, button.blue.wf_submit:hover', :x => 'right'
|
56
|
+
sprite_piece 'buttons/btn-blue-onclick.png', 'a.blue.wf_button:active > span, button.blue.wf_submit:active span'
|
57
|
+
sprite_piece 'buttons/btn-blue-onclick-cap.png', 'a.blue.wf_button:active, button.blue.wf_submit:active', :x => 'right'
|
58
|
+
sprite_piece 'buttons/btn-red-default-edge.png', 'a.right_edge.red.wf_button, button.right_edge.red.wf_submit', :x => 'right'
|
59
|
+
sprite_piece 'buttons/btn-red-rollover-edge.png', 'a.right_edge.red.wf_button:hover, button.right_edge.red.wf_submit:hover', :x => 'right'
|
60
|
+
sprite_piece 'buttons/btn-red-onclick-edge.png', 'a.right_edge.red.wf_button:active, button.right_edge.red.wf_submit:active', :x => 'right'
|
61
|
+
sprite_piece 'buttons/btn-red-default-drop.png', 'a.red.wf_menu_button'
|
62
|
+
sprite_piece 'buttons/btn-red-rollover-drop.png', 'a.red.wf_menu_button:hover'
|
63
|
+
sprite_piece 'buttons/btn-red-onclick-drop.png', 'a.red.wf_menu_button:active'
|
64
|
+
sprite_piece 'buttons/btn-yellow-default-edge.png', 'a.right_edge.yellow.wf_button, button.right_edge.yellow.wf_submit', :x => 'right'
|
65
|
+
sprite_piece 'buttons/btn-yellow-rollover-edge.png', 'a.right_edge.yellow.wf_button:hover, button.right_edge.yellow.wf_submit:hover', :x => 'right'
|
66
|
+
sprite_piece 'buttons/btn-yellow-onclick-edge.png', 'a.right_edge.yellow.wf_button:active, button.right_edge.yellow.wf_submit:active', :x => 'right'
|
67
|
+
sprite_piece 'buttons/btn-yellow-default-drop.png', 'a.yellow.wf_menu_button'
|
68
|
+
sprite_piece 'buttons/btn-yellow-rollover-drop.png', 'a.yellow.wf_menu_button:hover'
|
69
|
+
sprite_piece 'buttons/btn-yellow-onclick-drop.png', 'a.yellow.wf_menu_button:active'
|
70
|
+
sprite_piece 'buttons/btn-blue-default-edge.png', 'a.right_edge.blue.wf_button, button.right_edge.blue.wf_submit', :x => 'right'
|
71
|
+
sprite_piece 'buttons/btn-blue-rollover-edge.png', 'a.right_edge.blue.wf_button:hover, button.right_edge.blue.wf_submit:hover', :x => 'right'
|
72
|
+
sprite_piece 'buttons/btn-blue-onclick-edge.png', 'a.right_edge.blue.wf_button:active, button.right_edge.blue.wf_submit:active', :x => 'right'
|
73
|
+
sprite_piece 'buttons/btn-blue-default-drop.png', 'a.blue.wf_menu_button'
|
74
|
+
sprite_piece 'buttons/btn-blue-rollover-drop.png', 'a.blue.wf_menu_button:hover'
|
75
|
+
sprite_piece 'buttons/btn-blue-onclick-drop.png', 'a.blue.wf_menu_button:active'
|
76
|
+
sprite_piece 'buttons/btn-white-default-edge.png', 'a.right_edge.white.wf_button, button.right_edge.white.wf_submit', :x => 'right'
|
77
|
+
sprite_piece 'buttons/btn-white-rollover-edge.png', 'a.right_edge.white.wf_button:hover, button.right_edge.white.wf_submit:hover', :x => 'right'
|
78
|
+
sprite_piece 'buttons/btn-white-onclick-edge.png', 'a.right_edge.white.wf_button:active, button.right_edge.white.wf_submit:active', :x => 'right'
|
79
|
+
sprite_piece 'buttons/btn-white-default-drop.png', 'a.white.wf_menu_button'
|
80
|
+
sprite_piece 'buttons/btn-white-rollover-drop.png', 'a.white.wf_menu_button:hover'
|
81
|
+
sprite_piece 'buttons/btn-white-onclick-drop.png', 'a.white.wf_menu_button:active'
|
82
|
+
sprite_piece 'buttons/btn-trans-default-edge.png', 'a.right_edge.trans.wf_button, button.right_edge.trans.wf_submit', :x => 'right'
|
83
|
+
sprite_piece 'buttons/btn-trans-rollover-edge.png', 'a.right_edge.trans.wf_button:hover, button.right_edge.trans.wf_submit:hover', :x => 'right'
|
84
|
+
sprite_piece 'buttons/btn-trans-onclick-edge.png', 'a.right_edge.trans.wf_button:active, button.right_edge.trans.wf_submit:active', :x => 'right'
|
85
|
+
sprite_piece 'buttons/btn-trans-default-drop.png', 'a.trans.wf_menu_button'
|
86
|
+
sprite_piece 'buttons/btn-trans-rollover-drop.png', 'a.trans.wf_menu_button:hover'
|
87
|
+
sprite_piece 'buttons/btn-trans-onclick-drop.png', 'a.trans.wf_menu_button:active'
|
88
|
+
sprite_piece 'buttons/btn-blackarrow-default.png', 'a.black.back_arrow.wf_button > span'
|
89
|
+
sprite_piece 'buttons/btn-blackarrow-rollover.png', 'a.black.back_arrow.wf_button:hover > span'
|
90
|
+
sprite_piece 'buttons/btn-blackarrow-onclick.png', 'a.black.back_arrow.wf_button:active > span'
|
91
|
+
end
|
@@ -1,25 +1,58 @@
|
|
1
1
|
ENV['RAILS_ENV'] ||= 'test'
|
2
|
-
require 'rake'
|
3
2
|
require 'spec_helper'
|
4
|
-
require '
|
5
|
-
require 'fixtures/rails_project1/config/application'
|
6
|
-
require 'rspec-rails'
|
3
|
+
require 'rake'
|
7
4
|
require 'sprites/test/sprite_generator_tester'
|
5
|
+
require 'fixtures/rails_project1/config/application'
|
6
|
+
|
7
|
+
describe "When creating sprites and stylesheets in a rails app", :rails => true do
|
8
|
+
|
9
|
+
let(:application_sprites) { SpritesRailsTestApp::Application.config.sprites_for_sprites_rails_test_app_application }
|
10
|
+
|
11
|
+
let(:engine_sprites) { FakeEngine::Engine.config.sprites_for_fake_engine_engine }
|
12
|
+
|
13
|
+
before :all do
|
14
|
+
SpritesRailsTestApp::Application.initialize!
|
15
|
+
end
|
16
|
+
|
17
|
+
after :all do
|
18
|
+
# We only want to do this once, otherwise we get a new config that wasn't
|
19
|
+
# initialized by the rails initializers. It's excluded in the after filter
|
20
|
+
# in spec_helper for rails specs.
|
21
|
+
each_engine {|sprites| sprites.clear }
|
22
|
+
end
|
23
|
+
|
24
|
+
def each_engine
|
25
|
+
[engine_sprites, application_sprites].each do |sprites|
|
26
|
+
yield sprites
|
27
|
+
end
|
28
|
+
end
|
8
29
|
|
9
|
-
describe "When creating sprites and stylesheets in a rails app" do
|
10
30
|
it 'should create the sprites when rake is executed' do
|
31
|
+
ENV['ENGINES'] = "true"
|
11
32
|
Rake::Task["sprites"].invoke
|
12
33
|
|
13
|
-
|
14
|
-
|
34
|
+
each_engine do |sprites|
|
35
|
+
tester = Sprites::SpriteGeneratorTester.new(sprites[:buttons])
|
36
|
+
tester.should be_accurate
|
37
|
+
|
38
|
+
FileUtils.rm sprites[:buttons].path
|
39
|
+
FileUtils.rm sprites[:buttons].stylesheet_path
|
15
40
|
|
16
|
-
|
17
|
-
|
41
|
+
tester = Sprites::SpriteGeneratorTester.new(sprites[:bas])
|
42
|
+
tester.should be_accurate
|
43
|
+
|
44
|
+
FileUtils.rm sprites[:bas].path
|
45
|
+
FileUtils.rm sprites[:bas].stylesheet_path
|
46
|
+
end
|
47
|
+
end
|
18
48
|
|
19
|
-
|
20
|
-
|
49
|
+
it 'should autoload sprites' do
|
50
|
+
each_engine do |sprites|
|
51
|
+
sprites[:buttons].should_not be_nil
|
52
|
+
sprites[:bas].should_not be_nil
|
21
53
|
|
22
|
-
|
23
|
-
|
54
|
+
sprites[:buttons].sprite_pieces.count.should == 87
|
55
|
+
sprites[:bas].sprite_pieces.count.should == 5
|
56
|
+
end
|
24
57
|
end
|
25
58
|
end
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'sprites/configuration'
|
3
3
|
|
4
|
-
describe Configuration do
|
4
|
+
describe Sprites::Configuration do
|
5
5
|
let(:config) do
|
6
|
-
Configuration.new
|
6
|
+
Sprites::Configuration.new
|
7
7
|
end
|
8
8
|
|
9
9
|
context '#sprites_path' do
|
@@ -39,14 +39,20 @@ describe Configuration do
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
|
+
context "#generator" do
|
43
|
+
it 'should default to the ChunkyPngGenerator' do
|
44
|
+
config.generator.should == Sprites::ChunkyPngGenerator
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
42
48
|
context '#configured?' do
|
43
49
|
it 'should not be configured if no defaults have changed' do
|
44
|
-
Configuration.new.should_not be_configured
|
50
|
+
Sprites::Configuration.new.should_not be_configured
|
45
51
|
end
|
46
52
|
|
47
|
-
Configuration::FIELDS.each do |field|
|
53
|
+
Sprites::Configuration::FIELDS.each do |field|
|
48
54
|
it "should be configured if the #{field} has changed" do
|
49
|
-
config = Configuration.new
|
55
|
+
config = Sprites::Configuration.new
|
50
56
|
config.send(:"#{field}=", 'foo')
|
51
57
|
config.should be_configured
|
52
58
|
end
|
@@ -1,20 +1,21 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'sprites/test/sprite_generator_tester'
|
3
3
|
|
4
|
-
describe ChunkyPngGenerator do
|
4
|
+
describe Sprites::ChunkyPngGenerator do
|
5
|
+
let(:sprites) { Sprites.new }
|
5
6
|
it 'should generate a sprite and a stylesheet' do
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
7
|
+
sprites.configuration.configure(
|
8
|
+
:sprites_path => 'tmp/images/sprites/foo2/sprites',
|
9
|
+
:sprite_stylesheets_path => 'tmp/images/stylesheets/foo2/sprites',
|
10
|
+
:sprite_pieces_path => File.join(GEM_ROOT, 'spec/fixtures/known_good/sprite_images')
|
11
|
+
)
|
11
12
|
|
12
13
|
define_buttons_sprite
|
13
14
|
|
14
|
-
sprite_generator = ChunkyPngGenerator.new(
|
15
|
-
sprite_generator.generate
|
15
|
+
sprite_generator = Sprites::ChunkyPngGenerator.new(sprites)
|
16
|
+
sprite_generator.generate
|
16
17
|
|
17
|
-
tester = SpriteGeneratorTester.new(
|
18
|
+
tester = Sprites::SpriteGeneratorTester.new(sprites[:buttons])
|
18
19
|
tester.should be_accurate
|
19
20
|
end
|
20
21
|
end
|
@@ -1,40 +1,44 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'sprites/sprite_piece'
|
3
3
|
|
4
|
-
describe SpritePiece do
|
5
|
-
|
4
|
+
describe Sprites::SpritePiece do
|
5
|
+
|
6
|
+
let(:sprites) { Sprites.new }
|
7
|
+
|
8
|
+
context '#source_path' do
|
6
9
|
it 'should return the full sprite piece path' do
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
10
|
+
sprites.configuration.sprite_pieces_path = 'tmp/images/sprite_images'
|
11
|
+
|
12
|
+
sprites.sprite(:foo).configure do
|
13
|
+
sprite_piece 'foo/bar.png'
|
14
|
+
end
|
11
15
|
|
12
|
-
|
16
|
+
sprites[:foo].sprite_pieces.first.source_path.should == 'tmp/images/sprite_images/foo/bar.png'
|
13
17
|
end
|
14
18
|
end
|
15
19
|
|
16
20
|
context '#css' do
|
17
21
|
it 'should return the css for the sprite piece' do
|
18
|
-
|
19
|
-
|
22
|
+
pending "how make the heredoc a regexp for the timestamp?"
|
23
|
+
sprites.configuration.sprites_path = 'tmp/images/sprites'
|
20
24
|
|
21
|
-
sprite
|
25
|
+
sprites.sprite(:foo).configure do
|
22
26
|
sprite_piece 'foo/bar.png', '.foo'
|
23
27
|
end
|
24
28
|
|
25
|
-
sprite_piece =
|
29
|
+
sprite_piece = sprites[:foo].sprite_pieces['foo/bar.png']
|
26
30
|
sprite_piece.left = 0
|
27
31
|
sprite_piece.top = 345
|
28
32
|
sprite_piece.width = 40
|
29
33
|
sprite_piece.height = 50
|
30
34
|
|
31
|
-
sprite_piece.css
|
35
|
+
sprite_piece.css.should == <<-CSS
|
32
36
|
.foo
|
33
37
|
{
|
34
38
|
display:block;
|
35
39
|
width:40px;
|
36
40
|
height:50px;
|
37
|
-
background:url('/
|
41
|
+
background:url('/images/sprites/foo.png') no-repeat 0 -345px;
|
38
42
|
}
|
39
43
|
CSS
|
40
44
|
end
|
@@ -42,24 +46,21 @@ describe SpritePiece do
|
|
42
46
|
|
43
47
|
context 'when overriding the default x and y background-position settings' do
|
44
48
|
it 'should allow you to override the x setting' do
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
config.sprite_pieces_path = 'spec/fixtures/project1/public/images/sprite_images'
|
49
|
+
sprites.configuration.sprites_path ='tmp/images/sprites'
|
50
|
+
sprites.configuration.sprite_stylesheets_path = 'tmp/stylesheets/sprites'
|
51
|
+
sprites.configuration.sprite_pieces_path = 'spec/fixtures/project1/public/images/sprite_images'
|
49
52
|
|
50
|
-
sprite
|
53
|
+
sprites.sprite(:foo).configure do
|
51
54
|
sprite_piece 'foo/bar.png', '.foo', :x => 'right'
|
52
55
|
end
|
53
|
-
sprite_piece =
|
56
|
+
sprite_piece = sprites[:foo].sprite_pieces['foo/bar.png']
|
54
57
|
|
55
|
-
generator = ChunkyPngGenerator.new(
|
56
|
-
sprites = Sprites::Sprites.new(config)
|
57
|
-
sprites.add(sprite)
|
58
|
+
generator = Sprites::ChunkyPngGenerator.new(sprites)
|
58
59
|
|
59
|
-
generator.generate
|
60
|
+
generator.generate
|
60
61
|
|
61
62
|
sprite_piece.x.should == 'right'
|
62
|
-
sprite_piece.css
|
63
|
+
sprite_piece.css.should include('right')
|
63
64
|
end
|
64
65
|
end
|
65
66
|
end
|
@@ -1,10 +1,13 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
require 'sprites/sprite_pieces'
|
3
3
|
|
4
|
-
describe SpritePieces do
|
4
|
+
describe Sprites::SpritePieces do
|
5
|
+
|
6
|
+
let (:sprites) { Sprites.new }
|
5
7
|
|
6
8
|
before do
|
7
|
-
|
9
|
+
sprite = sprites.sprite(:foo)
|
10
|
+
@sprite_pieces = Sprites::SpritePieces.new(sprites, sprite)
|
8
11
|
|
9
12
|
sprite_pieces = [
|
10
13
|
['foo.png', 'foo.css'],
|