Sha256: ac29029e04279ca3eca5227db9638a666c3101be0e61d7223284b32eb8799669

Contents?: true

Size: 1.3 KB

Versions: 7

Compression:

Stored size: 1.3 KB

Contents

$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))

require File.join(File.dirname(__FILE__), 'approximate_color_matching')

Spec::Runner.configure do |config|
  config.include(BeApproximatelyTheSameColorAsMatcher)
end

require 'compass-colors'

describe "sass extensions" do
  it "should lighten red into pink" do
    pink = invoke(:lighten, color(255,0,0), number(50))
    pink.should be_approximately_the_same_color_as(color(255,127,127))
  end

  it "should darken red into maroon" do
    maroon = invoke(:darken, color(255,0,0), number(50))
    maroon.should be_approximately_the_same_color_as(color(127,0,0))
  end

  it "should darken white into gray and back again" do
    darker = invoke(:darken, color(0xff, 0xff, 0xff), number(50))
    lighter_again = invoke(:lighten, darker, number(100))
    color(0xff, 0xff, 0xff).should be_approximately_the_same_color_as(lighter_again)
  end

  it "shouldn't saturate fully saturated colors" do
    saturated = invoke(:saturate, color(0, 127, 127), number(50))
    saturated.should be_approximately_the_same_color_as(color(0, 127, 127))
  end

  def invoke(name, *args)
    Sass::Script::Functions::EvaluationContext.new({}).send(name, *args)
  end

  def color(r,g,b)
    Sass::Script::Color.new([r,g,b])
  end

  def number(num)
    Sass::Script::Number.new(num)
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
chriseppstein-compass-colors-0.1.3 spec/sass_extensions_spec.rb
chriseppstein-compass-colors-0.1.4 spec/sass_extensions_spec.rb
chriseppstein-compass-colors-0.1.5 spec/sass_extensions_spec.rb
chriseppstein-compass-colors-0.2.0 spec/sass_extensions_spec.rb
compass-colors-0.3.0 spec/sass_extensions_spec.rb
compass-colors-0.2.1 spec/sass_extensions_spec.rb
compass-colors-0.2.0 spec/sass_extensions_spec.rb