evax 0.0.7 → 0.0.9

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.
@@ -17,7 +17,8 @@ class Evax
17
17
  end
18
18
 
19
19
  def config
20
- YAML::load_file( @config_file )
20
+ default_opts = { "compress" => true }
21
+ default_opts.merge(YAML::load_file( @config_file ))
21
22
  end
22
23
 
23
24
  def join( type, group_name )
@@ -33,19 +34,19 @@ class Evax
33
34
 
34
35
  def build_js
35
36
  config["javascripts"].each_key do |group_name|
36
- join_string = join( :javascripts, group_name )
37
- compress_string = Evax.compress_js( join_string )
37
+ result_string = join( :javascripts, group_name )
38
+ result_string = Evax.compress_js( result_string ) if config["compress"]
38
39
 
39
- write_output( "#{group_name}.js", compress_string )
40
+ write_output( "#{group_name}.js", result_string )
40
41
  end
41
42
  end
42
43
 
43
44
  def build_css
44
45
  config["stylesheets"].each_key do |group_name|
45
- join_string = join( :stylesheets, group_name )
46
- compress_string = Evax.compress_css( join_string )
46
+ result_string = join( :stylesheets, group_name )
47
+ result_string = Evax.compress_css( result_string ) if config["compress"]
47
48
 
48
- write_output( "#{group_name}.css", compress_string )
49
+ write_output( "#{group_name}.css", result_string )
49
50
  end
50
51
  end
51
52
 
@@ -1,3 +1,3 @@
1
1
  class Evax
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.9"
3
3
  end
@@ -14,9 +14,20 @@ class EvaxTest < Test::Unit::TestCase
14
14
  def test_read_config_file
15
15
  evax = Evax.new( "#{FIXTURES}/assets.yml")
16
16
  assert_equal( "tmp/", evax.config["output_path"] )
17
+ assert_equal( true, evax.config["compress"] )
17
18
  assert_equal( 2, evax.config["javascripts"].size )
18
19
  end
19
20
 
21
+ def test_read_config_file_compress_on
22
+ evax = Evax.new( "#{FIXTURES}/assets_compress_on.yml")
23
+ assert_equal( true, evax.config["compress"] )
24
+ end
25
+
26
+ def test_read_config_file_compress_off
27
+ evax = Evax.new( "#{FIXTURES}/assets_compress_off.yml")
28
+ assert_equal( false, evax.config["compress"] )
29
+ end
30
+
20
31
  def test_join
21
32
  evax = Evax.new( "#{FIXTURES}/assets.yml", "/wadus" )
22
33
 
@@ -71,6 +82,15 @@ class EvaxTest < Test::Unit::TestCase
71
82
  evax.build_js
72
83
  end
73
84
 
85
+ def test_build_js_compress_off
86
+ evax = Evax.new( "#{FIXTURES}/assets_compress_off.yml", "#{File.dirname(__FILE__)}/.." )
87
+ Evax.expects( :compress_js ).never
88
+ evax.expects( :write_output ).with( "js_one.js", File.read( "#{FIXTURES}/js_one.compress_off.js" ) )
89
+ evax.expects( :write_output ).with( "js_two.js", File.read( "#{FIXTURES}/js_two.compress_off.js" ) )
90
+
91
+ evax.build_js
92
+ end
93
+
74
94
  def test_build_css
75
95
  evax = Evax.new( "#{FIXTURES}/assets.yml", "#{File.dirname(__FILE__)}/.." )
76
96
  evax.expects( :write_output ).with( "css_one.css", File.read( "#{FIXTURES}/css_one.compress.css" ) )
@@ -79,6 +99,15 @@ class EvaxTest < Test::Unit::TestCase
79
99
  evax.build_css
80
100
  end
81
101
 
102
+ def test_build_css_off
103
+ evax = Evax.new( "#{FIXTURES}/assets_compress_off.yml", "#{File.dirname(__FILE__)}/.." )
104
+ Evax.expects( :compress_css ).never
105
+ evax.expects( :write_output ).with( "css_one.css", File.read( "#{FIXTURES}/css_one.compress_off.css" ) )
106
+ evax.expects( :write_output ).with( "css_two.css", File.read( "#{FIXTURES}/css_two.compress_off.css" ) )
107
+
108
+ evax.build_css
109
+ end
110
+
82
111
  def test_build_only_css_if_js_not_configured
83
112
  evax = Evax.new( "#{FIXTURES}/assets_without_javascripts.yml", "#{File.dirname(__FILE__)}/.." )
84
113
 
@@ -7,7 +7,7 @@ javascripts:
7
7
  - test/fixtures/javascripts/three.js
8
8
  js_two:
9
9
  - test/fixtures/javascripts/four.js
10
-
10
+
11
11
  stylesheets:
12
12
  css_one:
13
13
  - test/fixtures/stylesheets/one.css
@@ -0,0 +1,18 @@
1
+ compress: off
2
+ output_path: tmp/
3
+
4
+ javascripts:
5
+ js_one:
6
+ - test/fixtures/javascripts/one.js
7
+ - test/fixtures/javascripts/two.js
8
+ - test/fixtures/javascripts/three.js
9
+ js_two:
10
+ - test/fixtures/javascripts/four.js
11
+
12
+ stylesheets:
13
+ css_one:
14
+ - test/fixtures/stylesheets/one.css
15
+ - test/fixtures/stylesheets/two.css
16
+ css_two:
17
+ - test/fixtures/stylesheets/three.css
18
+ - test/fixtures/stylesheets/four.css
@@ -0,0 +1,18 @@
1
+ compress: on
2
+ output_path: tmp/
3
+
4
+ javascripts:
5
+ js_one:
6
+ - test/fixtures/javascripts/one.js
7
+ - test/fixtures/javascripts/two.js
8
+ - test/fixtures/javascripts/three.js
9
+ js_two:
10
+ - test/fixtures/javascripts/four.js
11
+
12
+ stylesheets:
13
+ css_one:
14
+ - test/fixtures/stylesheets/one.css
15
+ - test/fixtures/stylesheets/two.css
16
+ css_two:
17
+ - test/fixtures/stylesheets/three.css
18
+ - test/fixtures/stylesheets/four.css
@@ -0,0 +1,9 @@
1
+ /* CSS ONE */
2
+ #my-id-one{
3
+ background-color: pink;
4
+ }
5
+
6
+ /* CSS TWO */
7
+ #my-id-two{
8
+ background-color: pink;
9
+ }
@@ -0,0 +1,8 @@
1
+ /* CSS THREE */
2
+ #my-id-three{
3
+ background-color: pink;
4
+ }
5
+ /* CSS FOUR */
6
+ #my-id-four{
7
+ background-color: pink;
8
+ }
@@ -1,3 +1,3 @@
1
1
  /* This is the JS FOUR */
2
- function js_four(){
2
+ function js_four(){
3
3
  }
@@ -1,3 +1,3 @@
1
1
  /* This is the JS ONE */
2
- function js_one(){
2
+ function js_one(){
3
3
  }
@@ -1,3 +1,3 @@
1
1
  /* This is the JS THREE */
2
- function js_three(){
2
+ function js_three(){
3
3
  }
@@ -1,3 +1,3 @@
1
1
  /* This is the JS TWO */
2
- function js_two(){
2
+ function js_two(){
3
3
  }
@@ -0,0 +1,9 @@
1
+ /* This is the JS ONE */
2
+ function js_one(){
3
+ }
4
+ /* This is the JS TWO */
5
+ function js_two(){
6
+ }
7
+ /* This is the JS THREE */
8
+ function js_three(){
9
+ }
@@ -1,9 +1,9 @@
1
1
  /* This is the JS ONE */
2
- function js_one(){
2
+ function js_one(){
3
3
  }
4
4
  /* This is the JS TWO */
5
- function js_two(){
5
+ function js_two(){
6
6
  }
7
7
  /* This is the JS THREE */
8
- function js_three(){
8
+ function js_three(){
9
9
  }
@@ -0,0 +1,3 @@
1
+ /* This is the JS FOUR */
2
+ function js_four(){
3
+ }
metadata CHANGED
@@ -1,112 +1,83 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: evax
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 7
9
- version: 0.0.7
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.9
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - Fernando Guillen
13
9
  - Juan Vidal
14
10
  autorequire:
15
11
  bindir: bin
16
12
  cert_chain: []
17
-
18
- date: 2011-12-14 00:00:00 +01:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
13
+ date: 2011-12-22 00:00:00.000000000Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
22
16
  name: bundler
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &70293863557040 !ruby/object:Gem::Requirement
25
18
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- segments:
30
- - 1
31
- - 0
32
- - 0
33
- - rc
34
- - 6
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
35
22
  version: 1.0.0.rc.6
36
23
  type: :development
37
- version_requirements: *id001
38
- - !ruby/object:Gem::Dependency
39
- name: rake
40
24
  prerelease: false
41
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *70293863557040
26
+ - !ruby/object:Gem::Dependency
27
+ name: rake
28
+ requirement: &70293863554720 !ruby/object:Gem::Requirement
42
29
  none: false
43
- requirements:
44
- - - "="
45
- - !ruby/object:Gem::Version
46
- segments:
47
- - 0
48
- - 9
49
- - 2
50
- - 2
30
+ requirements:
31
+ - - =
32
+ - !ruby/object:Gem::Version
51
33
  version: 0.9.2.2
52
34
  type: :development
53
- version_requirements: *id002
54
- - !ruby/object:Gem::Dependency
55
- name: mocha
56
35
  prerelease: false
57
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *70293863554720
37
+ - !ruby/object:Gem::Dependency
38
+ name: mocha
39
+ requirement: &70293863552720 !ruby/object:Gem::Requirement
58
40
  none: false
59
- requirements:
60
- - - "="
61
- - !ruby/object:Gem::Version
62
- segments:
63
- - 0
64
- - 10
65
- - 0
41
+ requirements:
42
+ - - =
43
+ - !ruby/object:Gem::Version
66
44
  version: 0.10.0
67
45
  type: :development
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
- name: delorean
71
46
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
47
+ version_requirements: *70293863552720
48
+ - !ruby/object:Gem::Dependency
49
+ name: delorean
50
+ requirement: &70293863550860 !ruby/object:Gem::Requirement
73
51
  none: false
74
- requirements:
75
- - - "="
76
- - !ruby/object:Gem::Version
77
- segments:
78
- - 1
79
- - 1
80
- - 1
52
+ requirements:
53
+ - - =
54
+ - !ruby/object:Gem::Version
81
55
  version: 1.1.1
82
56
  type: :development
83
- version_requirements: *id004
84
- - !ruby/object:Gem::Dependency
85
- name: uglifier
86
57
  prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
58
+ version_requirements: *70293863550860
59
+ - !ruby/object:Gem::Dependency
60
+ name: uglifier
61
+ requirement: &70293863541740 !ruby/object:Gem::Requirement
88
62
  none: false
89
- requirements:
90
- - - "="
91
- - !ruby/object:Gem::Version
92
- segments:
93
- - 1
94
- - 1
95
- - 0
63
+ requirements:
64
+ - - =
65
+ - !ruby/object:Gem::Version
96
66
  version: 1.1.0
97
67
  type: :runtime
98
- version_requirements: *id005
99
- description: " Evax is a simple asset packaging library for Ruby,\n providing JavaScript/CSS concatenation and compression\n using UglifyJS and a really simple regex based CSS\n compressor. Just because enough is enough.\n"
100
- email:
68
+ prerelease: false
69
+ version_requirements: *70293863541740
70
+ description: ! " Evax is a simple asset packaging library for Ruby,\n providing
71
+ JavaScript/CSS concatenation and compression\n using UglifyJS and a really simple
72
+ regex based CSS\n compressor. Just because enough is enough.\n"
73
+ email:
101
74
  - fguillen.mail@gmail.com
102
75
  - juanjicho@gmail.com
103
- executables:
76
+ executables:
104
77
  - evax
105
78
  extensions: []
106
-
107
79
  extra_rdoc_files: []
108
-
109
- files:
80
+ files:
110
81
  - .gitignore
111
82
  - .rvmrc.example
112
83
  - Gemfile
@@ -122,71 +93,75 @@ files:
122
93
  - lib/evax/version.rb
123
94
  - test/evax_test.rb
124
95
  - test/fixtures/assets.yml
96
+ - test/fixtures/assets_compress_off.yml
97
+ - test/fixtures/assets_compress_on.yml
125
98
  - test/fixtures/assets_without_javascripts.yml
126
99
  - test/fixtures/assets_without_stylesheets.yml
127
100
  - test/fixtures/css_one.compress.css
101
+ - test/fixtures/css_one.compress_off.css
128
102
  - test/fixtures/css_one.css
129
103
  - test/fixtures/css_two.compress.css
104
+ - test/fixtures/css_two.compress_off.css
130
105
  - test/fixtures/javascripts/four.js
131
106
  - test/fixtures/javascripts/one.js
132
107
  - test/fixtures/javascripts/three.js
133
108
  - test/fixtures/javascripts/two.js
134
109
  - test/fixtures/js_one.compress.js
110
+ - test/fixtures/js_one.compress_off.js
135
111
  - test/fixtures/js_one.js
136
112
  - test/fixtures/js_two.compress.js
113
+ - test/fixtures/js_two.compress_off.js
137
114
  - test/fixtures/stylesheets/four.css
138
115
  - test/fixtures/stylesheets/one.css
139
116
  - test/fixtures/stylesheets/three.css
140
117
  - test/fixtures/stylesheets/two.css
141
118
  - test/logger_test.rb
142
119
  - test/test_helper.rb
143
- has_rdoc: true
144
120
  homepage: https://github.com/SponsorPay/Evax
145
121
  licenses: []
146
-
147
122
  post_install_message:
148
123
  rdoc_options: []
149
-
150
- require_paths:
124
+ require_paths:
151
125
  - lib
152
- required_ruby_version: !ruby/object:Gem::Requirement
126
+ required_ruby_version: !ruby/object:Gem::Requirement
153
127
  none: false
154
- requirements:
155
- - - ">="
156
- - !ruby/object:Gem::Version
157
- segments:
158
- - 0
159
- version: "0"
160
- required_rubygems_version: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ! '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ required_rubygems_version: !ruby/object:Gem::Requirement
161
133
  none: false
162
- requirements:
163
- - - ">="
164
- - !ruby/object:Gem::Version
165
- segments:
166
- - 0
167
- version: "0"
134
+ requirements:
135
+ - - ! '>='
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
168
138
  requirements: []
169
-
170
139
  rubyforge_project: evax
171
- rubygems_version: 1.3.7
140
+ rubygems_version: 1.8.10
172
141
  signing_key:
173
142
  specification_version: 3
174
143
  summary: Very simple assets compressor
175
- test_files:
144
+ test_files:
176
145
  - test/evax_test.rb
177
146
  - test/fixtures/assets.yml
147
+ - test/fixtures/assets_compress_off.yml
148
+ - test/fixtures/assets_compress_on.yml
178
149
  - test/fixtures/assets_without_javascripts.yml
179
150
  - test/fixtures/assets_without_stylesheets.yml
180
151
  - test/fixtures/css_one.compress.css
152
+ - test/fixtures/css_one.compress_off.css
181
153
  - test/fixtures/css_one.css
182
154
  - test/fixtures/css_two.compress.css
155
+ - test/fixtures/css_two.compress_off.css
183
156
  - test/fixtures/javascripts/four.js
184
157
  - test/fixtures/javascripts/one.js
185
158
  - test/fixtures/javascripts/three.js
186
159
  - test/fixtures/javascripts/two.js
187
160
  - test/fixtures/js_one.compress.js
161
+ - test/fixtures/js_one.compress_off.js
188
162
  - test/fixtures/js_one.js
189
163
  - test/fixtures/js_two.compress.js
164
+ - test/fixtures/js_two.compress_off.js
190
165
  - test/fixtures/stylesheets/four.css
191
166
  - test/fixtures/stylesheets/one.css
192
167
  - test/fixtures/stylesheets/three.css