compass-edge 0.9.1 → 0.9.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +34 -1
- data/VERSION.yml +3 -2
- data/features/command_line.feature +219 -0
- data/features/step_definitions/command_line_steps.rb +199 -0
- data/lib/compass/app_integration/rails/installer.rb +3 -1
- data/lib/compass/app_integration/stand_alone/installer.rb +26 -11
- data/lib/compass/commands.rb +1 -1
- data/lib/compass/commands/create_project.rb +8 -1
- data/lib/compass/commands/installer_command.rb +6 -2
- data/lib/compass/commands/project_stats.rb +160 -0
- data/lib/compass/commands/update_project.rb +49 -1
- data/lib/compass/commands/validate_project.rb +56 -2
- data/lib/compass/commands/watch_project.rb +3 -1
- data/lib/compass/commands/write_configuration.rb +60 -2
- data/lib/compass/compiler.rb +4 -3
- data/lib/compass/configuration/helpers.rb +9 -0
- data/lib/compass/errors.rb +4 -1
- data/lib/compass/exec.rb +1 -0
- data/lib/compass/frameworks/compass/stylesheets/compass/utilities/general/_reset.sass +2 -2
- data/lib/compass/installers.rb +1 -1
- data/lib/compass/installers/bare_installer.rb +62 -0
- data/lib/compass/installers/base.rb +7 -51
- data/lib/compass/installers/manifest_installer.rb +59 -0
- data/lib/compass/sass_extensions/monkey_patches.rb +2 -2
- data/lib/compass/sass_extensions/monkey_patches/traversal.rb +23 -0
- data/lib/compass/stats.rb +92 -0
- data/lib/compass/validator.rb +2 -3
- data/test/command_line_helper.rb +6 -2
- data/test/fixtures/stylesheets/compass/css/reset.css +1 -1
- data/test/io_helper.rb +18 -1
- data/test/rails_helper.rb +40 -0
- data/test/rails_integration_test.rb +2 -40
- data/test/test_helper.rb +1 -0
- metadata +12 -3
data/test/io_helper.rb
CHANGED
@@ -15,5 +15,22 @@ module Compass
|
|
15
15
|
ensure
|
16
16
|
$stderr = real_stderr
|
17
17
|
end
|
18
|
+
|
19
|
+
def capture_pipe(io, options = {})
|
20
|
+
options[:wait] = 0.25
|
21
|
+
options[:timeout] = 1.0
|
22
|
+
output = ""
|
23
|
+
eof_at = nil
|
24
|
+
while !eof_at || (Time.now - eof_at < options[:wait])
|
25
|
+
if io.eof?
|
26
|
+
eof_at ||= Time.now
|
27
|
+
sleep 0.1
|
28
|
+
else
|
29
|
+
eof_at = nil
|
30
|
+
timeout(options[:timeout]) { output << io.readpartial(1024) }
|
31
|
+
end
|
32
|
+
end
|
33
|
+
output
|
34
|
+
end
|
18
35
|
end
|
19
|
-
end
|
36
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Compass
|
2
|
+
module RailsHelper
|
3
|
+
def generate_rails_app_directories(name)
|
4
|
+
Dir.mkdir name
|
5
|
+
Dir.mkdir File.join(name, "config")
|
6
|
+
Dir.mkdir File.join(name, "config", "initializers")
|
7
|
+
end
|
8
|
+
|
9
|
+
# Generate a rails application without polluting our current set of requires
|
10
|
+
# with the rails libraries. This will allow testing against multiple versions of rails
|
11
|
+
# by manipulating the load path.
|
12
|
+
def generate_rails_app(name)
|
13
|
+
if pid = fork
|
14
|
+
Process.wait(pid)
|
15
|
+
if $?.exitstatus == 2
|
16
|
+
raise LoadError, "Couldn't load rails"
|
17
|
+
elsif $?.exitstatus != 0
|
18
|
+
raise "Failed to generate rails application."
|
19
|
+
end
|
20
|
+
else
|
21
|
+
begin
|
22
|
+
require 'rails/version'
|
23
|
+
require 'rails_generator'
|
24
|
+
require 'rails_generator/scripts/generate'
|
25
|
+
Rails::Generator::Base.use_application_sources!
|
26
|
+
capture_output do
|
27
|
+
Rails::Generator::Base.logger = Rails::Generator::SimpleLogger.new $stdout
|
28
|
+
Rails::Generator::Scripts::Generate.new.run([name], :generator => 'app')
|
29
|
+
end
|
30
|
+
rescue LoadError
|
31
|
+
Kernel.exit!(2)
|
32
|
+
rescue => e
|
33
|
+
$stderr.puts e
|
34
|
+
Kernel.exit!(1)
|
35
|
+
end
|
36
|
+
Kernel.exit!(0)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -8,6 +8,7 @@ class RailsIntegrationTest < Test::Unit::TestCase
|
|
8
8
|
include Compass::TestCaseHelper
|
9
9
|
include Compass::CommandLineHelper
|
10
10
|
include Compass::IoHelper
|
11
|
+
include Compass::RailsHelper
|
11
12
|
|
12
13
|
def setup
|
13
14
|
Compass.reset_configuration!
|
@@ -42,43 +43,4 @@ class RailsIntegrationTest < Test::Unit::TestCase
|
|
42
43
|
rescue LoadError
|
43
44
|
puts "Skipping rails test. Couldn't Load rails"
|
44
45
|
end
|
45
|
-
|
46
|
-
|
47
|
-
def generate_rails_app_directories(name)
|
48
|
-
Dir.mkdir name
|
49
|
-
Dir.mkdir File.join(name, "config")
|
50
|
-
Dir.mkdir File.join(name, "config", "initializers")
|
51
|
-
end
|
52
|
-
|
53
|
-
# Generate a rails application without polluting our current set of requires
|
54
|
-
# with the rails libraries. This will allow testing against multiple versions of rails
|
55
|
-
# by manipulating the load path.
|
56
|
-
def generate_rails_app(name)
|
57
|
-
if pid = fork
|
58
|
-
Process.wait(pid)
|
59
|
-
if $?.exitstatus == 2
|
60
|
-
raise LoadError, "Couldn't load rails"
|
61
|
-
elsif $?.exitstatus != 0
|
62
|
-
raise "Failed to generate rails application."
|
63
|
-
end
|
64
|
-
else
|
65
|
-
begin
|
66
|
-
require 'rails/version'
|
67
|
-
require 'rails_generator'
|
68
|
-
require 'rails_generator/scripts/generate'
|
69
|
-
Rails::Generator::Base.use_application_sources!
|
70
|
-
capture_output do
|
71
|
-
Rails::Generator::Base.logger = Rails::Generator::SimpleLogger.new $stdout
|
72
|
-
Rails::Generator::Scripts::Generate.new.run([name], :generator => 'app')
|
73
|
-
end
|
74
|
-
rescue LoadError
|
75
|
-
Kernel.exit(2)
|
76
|
-
rescue => e
|
77
|
-
$stderr.puts e
|
78
|
-
Kernel.exit!(1)
|
79
|
-
end
|
80
|
-
Kernel.exit!(0)
|
81
|
-
end
|
82
|
-
end
|
83
|
-
|
84
|
-
end
|
46
|
+
end
|
data/test/test_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: compass-edge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Eppstein
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-10-
|
12
|
+
date: 2009-10-30 00:00:00 -07:00
|
13
13
|
default_executable: compass
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -22,7 +22,7 @@ dependencies:
|
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: 2.2.0
|
24
24
|
version:
|
25
|
-
description:
|
25
|
+
description: Compass is a Sass-based Stylesheet Framework that streamlines the creation and maintainance of CSS.
|
26
26
|
email: chris@eppsteins.net
|
27
27
|
executables:
|
28
28
|
- compass
|
@@ -170,6 +170,7 @@ files:
|
|
170
170
|
- lib/compass/commands/list_frameworks.rb
|
171
171
|
- lib/compass/commands/print_version.rb
|
172
172
|
- lib/compass/commands/project_base.rb
|
173
|
+
- lib/compass/commands/project_stats.rb
|
173
174
|
- lib/compass/commands/registry.rb
|
174
175
|
- lib/compass/commands/stamp_pattern.rb
|
175
176
|
- lib/compass/commands/update_project.rb
|
@@ -289,8 +290,10 @@ files:
|
|
289
290
|
- lib/compass/frameworks/compass/templates/project/screen.sass
|
290
291
|
- lib/compass/grid_builder.rb
|
291
292
|
- lib/compass/installers.rb
|
293
|
+
- lib/compass/installers/bare_installer.rb
|
292
294
|
- lib/compass/installers/base.rb
|
293
295
|
- lib/compass/installers/manifest.rb
|
296
|
+
- lib/compass/installers/manifest_installer.rb
|
294
297
|
- lib/compass/installers/template_context.rb
|
295
298
|
- lib/compass/logger.rb
|
296
299
|
- lib/compass/sass_extensions.rb
|
@@ -302,6 +305,8 @@ files:
|
|
302
305
|
- lib/compass/sass_extensions/functions/urls.rb
|
303
306
|
- lib/compass/sass_extensions/monkey_patches.rb
|
304
307
|
- lib/compass/sass_extensions/monkey_patches/stylesheet_updating.rb
|
308
|
+
- lib/compass/sass_extensions/monkey_patches/traversal.rb
|
309
|
+
- lib/compass/stats.rb
|
305
310
|
- lib/compass/test_case.rb
|
306
311
|
- lib/compass/validator.rb
|
307
312
|
- lib/compass/version.rb
|
@@ -338,6 +343,7 @@ files:
|
|
338
343
|
- test/fixtures/stylesheets/image_urls/images/grid.png
|
339
344
|
- test/fixtures/stylesheets/image_urls/sass/screen.sass
|
340
345
|
- test/io_helper.rb
|
346
|
+
- test/rails_helper.rb
|
341
347
|
- test/rails_integration_test.rb
|
342
348
|
- test/sass_extensions_test.rb
|
343
349
|
- test/test_case_helper.rb
|
@@ -397,8 +403,11 @@ test_files:
|
|
397
403
|
- test/fixtures/stylesheets/image_urls/images/grid.png
|
398
404
|
- test/fixtures/stylesheets/image_urls/sass/screen.sass
|
399
405
|
- test/io_helper.rb
|
406
|
+
- test/rails_helper.rb
|
400
407
|
- test/rails_integration_test.rb
|
401
408
|
- test/sass_extensions_test.rb
|
402
409
|
- test/test_case_helper.rb
|
403
410
|
- test/test_helper.rb
|
404
411
|
- test/test_rails_helper.rb
|
412
|
+
- features/command_line.feature
|
413
|
+
- features/step_definitions/command_line_steps.rb
|