summaryrefslogtreecommitdiff
path: root/spec/ruby/library/rexml/text/value_spec.rb
blob: f5664121286aef862421b1729a44e46bd1126714 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
require_relative '../../../spec_helper'

ruby_version_is ''...'2.8' do
  require 'rexml/document'

  describe "REXML::Text#value" do
    it "returns the text value of this node" do
      REXML::Text.new("test").value.should == "test"
    end

    it "does not escape entities" do
      REXML::Text.new("& \"").value.should == "& \""
    end

    it "follows the respect_whitespace attribute" do
      REXML::Text.new("test     bar", false).value.should == "test bar"
      REXML::Text.new("test     bar", true).value.should == "test     bar"
    end

    it "ignores the raw attribute" do
      REXML::Text.new("sean russell", false, nil, true).value.should == "sean russell"
    end
  end

  describe "REXML::Text#value=" do
    before :each do
      @t = REXML::Text.new("new")
    end

    it "sets the text of the node" do
      @t.value = "another text"
      @t.to_s.should == "another text"
    end

    it "escapes entities" do
      @t.value = "<a>"
      @t.to_s.should == "&lt;a&gt;"
    end
  end
end