Sha256: d1951712ec51dd9c663e9d1b839b2bf8ca151bd8447bc1d483649124a8fb77dd

Contents?: true

Size: 1.18 KB

Versions: 10

Compression:

Stored size: 1.18 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__), "helper"))

module Johnson
  module Conversions
    class StringTest < Johnson::TestCase
      def test_ruby_string_in_js
        @runtime[:v] = "foo"
        assert_js("'foo' == v")
      end

      def test_js_string_in_ruby
        assert_equal("foo", @runtime.evaluate("'foo'"))
      end

      def test_roundtrip
        @runtime[:v] = v = "hola"
        assert_equal(v, @runtime.evaluate("v"))
      end
      
      def test_strings_are_copies
        @runtime[:v] = v = "hola"
        assert_not_same(v, @runtime.evaluate("v"))
      end

      def test_multibyte_character_roundtrip_js
        assert_equal(1, @runtime.evaluate("'\\u20AC'.length"))
        assert_equal(0x20ac, @runtime.evaluate("'\\u20AC'.charCodeAt(0)"))
        assert_equal(0x0000, @runtime.evaluate("'\\u0000'.charCodeAt(0)"))
        @runtime[:s] = "\xe2\x82\xac"
        assert_equal(0x20ac, @runtime.evaluate("s.charCodeAt(0)"))
        assert_equal('', @runtime.evaluate("s.substr(1)"))
        assert_equal(1, @runtime.evaluate("s.length"))
        assert_equal("\xe2\x82\xac", @runtime.evaluate("s"))
        assert_js("'\\u20ac' == s")
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 4 rubygems

Version Path
johnson19-2.0.0.pre3 test/johnson/generic/conversions/string_test.rb
pre-johnson-2.0.0 test/johnson/generic/conversions/string_test.rb
johnson-2.0.0.pre3 test/johnson/generic/conversions/string_test.rb
johnson-2.0.0.pre2 test/johnson/generic/conversions/string_test.rb
johnson-2.0.0.pre1 test/johnson/generic/conversions/string_test.rb
johnson-2.0.0.pre0 test/johnson/generic/conversions/string_test.rb
smparkes-johnson-1.1.2.6 test/johnson/generic/conversions/string_test.rb
smparkes-johnson-1.1.2.5 test/johnson/generic/conversions/string_test.rb
smparkes-johnson-1.1.2.4 test/johnson/generic/conversions/string_test.rb
smparkes-johnson-1.1.2.3 test/johnson/generic/conversions/string_test.rb