blob: cba6bd51dd6cc80c9d5ad4ee12a702cfd420766d (
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'
require 'strscan'
describe "StringScanner#string" do
before :each do
@string = +"This is a test"
@s = StringScanner.new(@string)
end
it "returns the string being scanned" do
@s.string.should == "This is a test"
@s << " case"
@s.string.should == "This is a test case"
end
it "returns the identical object passed in" do
@s.string.equal?(@string).should be_true
end
end
describe "StringScanner#string=" do
before :each do
@s = StringScanner.new("This is a test")
end
it "changes the string being scanned to the argument and resets the scanner" do
@s.string = "Hello world"
@s.string.should == "Hello world"
end
it "converts the argument into a string using #to_str" do
m = mock(:str)
s = "test"
m.should_receive(:to_str).and_return(s)
@s.string = m
@s.string.should == s
end
end
|