From fc4d121073364d74d6f3ff516d9a534da650c1f5 Mon Sep 17 00:00:00 2001 From: Nathan Weizenbaum Date: Sun, 15 Jun 2008 01:16:30 -0700 Subject: [PATCH] Define unary operators for minus and div as well. --- lib/sass/constant/string.rb | 8 ++++++++ test/sass/engine_test.rb | 2 ++ 2 files changed, 10 insertions(+) diff --git a/lib/sass/constant/string.rb b/lib/sass/constant/string.rb index 70347649..47336e76 100644 --- a/lib/sass/constant/string.rb +++ b/lib/sass/constant/string.rb @@ -15,10 +15,18 @@ module Sass::Constant Sass::Constant::String.from_value("#{self.to_s}-#{other.to_s}") end + def unary_minus + Sass::Constant::String.from_value("-#{self.to_s}") + end + def div(other) Sass::Constant::String.from_value("#{self.to_s}/#{other.to_s}") end + def unary_div + Sass::Constant::String.from_value("/#{self.to_s}") + end + def funcall(other) Sass::Constant::String.from_value("#{self.to_s}(#{other.to_s})") end diff --git a/test/sass/engine_test.rb b/test/sass/engine_test.rb index a7710f1e..bc983a7e 100755 --- a/test/sass/engine_test.rb +++ b/test/sass/engine_test.rb @@ -145,10 +145,12 @@ class SassEngineTest < Test::Unit::TestCase def test_string_minus assert_equal("foo {\n bar: baz-boom-bat; }\n", render("foo\n bar = baz-boom-bat")) + assert_equal("foo {\n bar: -baz-boom; }\n", render("foo\n bar = -baz-boom")) end def test_string_div assert_equal("foo {\n bar: baz/boom/bat; }\n", render("foo\n bar = baz/boom/bat")) + assert_equal("foo {\n bar: /baz/boom; }\n", render("foo\n bar = /baz/boom")) end def test_basic_multiline_selector