forked from ConnorAtherton/rb-readline
/
test_readline.rb
133 lines (101 loc) · 3.4 KB
/
test_readline.rb
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
require 'rubygems'
gem 'test-unit'
require 'test/unit'
require 'readline'
class TC_Pr_Readline < Test::Unit::TestCase
def setup
@proc = proc{ |s| ['alpha', 'beta'].grep( /^#{Regexp.escape(s)}/) }
end
def test_version
assert_equal('5.2', Readline::VERSION)
end
def test_readline_basic
assert_respond_to(Readline, :readline)
end
def test_readline_expected_errors
assert_raise(ArgumentError){ Readline.readline }
end
def test_input_basic
assert_respond_to(Readline, :input=)
end
def test_input
assert_nothing_raised{ Readline.input = $stdin }
end
def test_output_basic
assert_respond_to(Readline, :output=)
end
def test_output
assert_nothing_raised{ Readline.output = $stdout }
end
def test_completion_proc_get_basic
assert_respond_to(Readline, :completion_proc)
end
def test_completion_proc_set_basic
assert_respond_to(Readline, :completion_proc=)
end
def test_completion_proc
assert_nothing_raised{ Readline.completion_proc = @proc }
end
def test_completion_case_fold_get_basic
assert_respond_to(Readline, :completion_case_fold)
end
def test_completion_case_fold
assert_equal(false, Readline.completion_case_fold) # default
end
def test_completion_case_fold_set_basic
assert_respond_to(Readline, :completion_case_fold=)
end
def test_completion_case_fold
assert_nothing_raised{ Readline.completion_case_fold = false }
end
def test_completion_proc_expected_errors
assert_raise(ArgumentError){ Readline.completion_proc = 1 }
assert_raise(ArgumentError){ Readline.completion_proc = 'a' }
end
def test_vi_editing_mode_basic
assert_respond_to(Readline, :vi_editing_mode)
end
def test_emacs_editing_mode_basic
assert_respond_to(Readline, :emacs_editing_mode)
end
def test_completion_append_character_get_basic
assert_respond_to(Readline, :completion_append_character)
end
def test_completion_append_character_get
assert_equal(' ', Readline.completion_append_character) # default
end
def test_completion_append_character_set_basic
assert_respond_to(Readline, :completion_append_character=)
end
def test_completion_append_character_set
assert_nothing_raised{ Readline.completion_append_character }
end
def test_basic_word_break_characters_get_basic
assert_respond_to(Readline, :basic_word_break_characters)
end
def test_basic_word_break_characters_get
assert_equal(" \t\n\"\\'`@$><=|&{(", Readline.basic_word_break_characters)
end
def test_basic_word_break_characters_set_basic
assert_respond_to(Readline, :basic_word_break_characters=)
end
def test_basic_word_break_characters_set
assert_nothing_raised{ Readline.basic_word_break_characters = " \t\n\"\\'`@$><=|&{(" }
end
def test_basic_quote_characters_get_basic
assert_respond_to(Readline, :basic_quote_characters)
end
def test_basic_quote_characters_get
assert_nothing_raised{ Readline.basic_quote_characters }
assert_equal("\"'", Readline.basic_quote_characters)
end
def test_basic_quote_characters_set_basic
assert_respond_to(Readline, :basic_quote_characters=)
end
def test_basic_quote_characters_set
assert_nothing_raised{ Readline.basic_quote_characters = "\"'" }
end
def teardown
@proc = nil
end
end