Sha256: 823b9913e264e8e772f6654c323f19bb96b1b495efde7d855cfea3682498256c

Contents?: true

Size: 1.28 KB

Versions: 24

Compression:

Stored size: 1.28 KB

Contents

require "helper"

module Nokogiri
  module XML
    class TestCDATA < Nokogiri::TestCase
      def setup
        super
        @xml = Nokogiri::XML.parse(File.read(XML_FILE), XML_FILE)
      end

      def test_cdata_node
        name = @xml.xpath('//employee[2]/name').first
        assert cdata = name.children[1]
        assert cdata.cdata?
        assert_equal '#cdata-section', cdata.name
      end

      def test_new
        node = CDATA.new(@xml, "foo")
        assert_equal "foo", node.content

        node = CDATA.new(@xml.root, "foo")
        assert_equal "foo", node.content
      end

      def test_new_with_nil
        node = CDATA.new(@xml, nil)
        assert_equal nil, node.content
      end

      def test_new_with_non_string
        assert_raises(TypeError) do
          CDATA.new(@xml, 1.234)
        end
      end

      def test_lots_of_new_cdata
        assert 100.times { CDATA.new(@xml, "asdfasdf") }
      end

      def test_content=
        node = CDATA.new(@xml, 'foo')
        assert_equal('foo', node.content)

        node.content = '& <foo> &amp;'
        assert_equal('& <foo> &amp;', node.content)
        assert_equal('<![CDATA[& <foo> &amp;]]>', node.to_xml)

        node.content = 'foo ]]> bar'
        assert_equal('foo ]]> bar', node.content)
      end
    end
  end
end

Version data entries

24 entries across 22 versions & 4 rubygems

Version Path
daslabs-0.12.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.11.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
tdiary-5.0.9 vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
tdiary-5.0.8 vendor/bundle/gems/tdiary-5.0.7/vendor/bundle/gems/nokogiri-1.8.1/test/xml/test_cdata.rb
tdiary-5.0.8 vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
tdiary-5.0.8 vendor/bundle/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.10.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.9.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.8.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.7.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.6.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.5.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
daslabs-0.4.0 vendor/cache/ruby/2.5.0/gems/nokogiri-1.8.2/test/xml/test_cdata.rb
nokogiri-1.8.2 test/xml/test_cdata.rb
nokogiri-1.8.2-x86-mingw32 test/xml/test_cdata.rb
nokogiri-1.8.2-x64-mingw32 test/xml/test_cdata.rb
nokogiri-1.8.2-java test/xml/test_cdata.rb
tdiary-5.0.7 vendor/bundle/gems/nokogiri-1.8.1/test/xml/test_cdata.rb
pract6-0.1.0 .gem/ruby/2.3.0/gems/nokogiri-1.8.1/test/xml/test_cdata.rb
tdiary-5.0.6 vendor/bundle/gems/nokogiri-1.8.1/test/xml/test_cdata.rb