示例#1
0
 def test_large_build(self):
     s1 = 'xyz' * 500
     s2 = 'XYZ' * 500
     #
     sb = StringBuilderRepr.ll_new(32)
     StringBuilderRepr.ll_append(sb, llstr(s1))
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == s1
     #
     sb = StringBuilderRepr.ll_new(32)
     StringBuilderRepr.ll_append(sb, llstr(s1))
     StringBuilderRepr.ll_append(sb, llstr(s2))
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == s1 + s2
     #
     sb = StringBuilderRepr.ll_new(32)
     StringBuilderRepr.ll_append(sb, llstr(s1))
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == s1
     StringBuilderRepr.ll_append(sb, llstr(s2))
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == s1 + s2
     #
     sb = StringBuilderRepr.ll_new(32)
     StringBuilderRepr.ll_append(sb, llstr(s1))
     StringBuilderRepr.ll_append_char(sb, '.')
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == s1 + '.'
     #
     for start in [0, 1]:
         for stop in [len(s1), len(s1) - 1]:
             sb = StringBuilderRepr.ll_new(32)
             StringBuilderRepr.ll_append_slice(sb, llstr(s1), start, stop)
             s = StringBuilderRepr.ll_build(sb)
             assert hlstr(s) == s1[start:stop]
示例#2
0
 def test_simple(self):
     sb = StringBuilderRepr.ll_new(3)
     StringBuilderRepr.ll_append_char(sb, 'x')
     StringBuilderRepr.ll_append(sb, llstr("abc"))
     StringBuilderRepr.ll_append_slice(sb, llstr("foobar"), 2, 5)
     StringBuilderRepr.ll_append_multiple_char(sb, 'y', 3)
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == "xabcobayyy"
示例#3
0
 def test_simple(self):
     sb = StringBuilderRepr.ll_new(3)
     assert StringBuilderRepr.ll_getlength(sb) == 0
     StringBuilderRepr.ll_append_char(sb, 'x')
     assert StringBuilderRepr.ll_getlength(sb) == 1
     StringBuilderRepr.ll_append(sb, llstr("abc"))
     assert StringBuilderRepr.ll_getlength(sb) == 4
     StringBuilderRepr.ll_append_slice(sb, llstr("foobar"), 2, 5)
     assert StringBuilderRepr.ll_getlength(sb) == 7
     StringBuilderRepr.ll_append_multiple_char(sb, 'y', 3)
     assert StringBuilderRepr.ll_getlength(sb) == 10
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == "xabcobayyy"
     assert StringBuilderRepr.ll_getlength(sb) == 10
示例#4
0
 def test_simple(self):
     sb = StringBuilderRepr.ll_new(3)
     assert StringBuilderRepr.ll_getlength(sb) == 0
     StringBuilderRepr.ll_append_char(sb, 'x')
     assert StringBuilderRepr.ll_getlength(sb) == 1
     StringBuilderRepr.ll_append(sb, llstr("abc"))
     assert StringBuilderRepr.ll_getlength(sb) == 4
     StringBuilderRepr.ll_append_slice(sb, llstr("foobar"), 2, 5)
     assert StringBuilderRepr.ll_getlength(sb) == 7
     StringBuilderRepr.ll_append_multiple_char(sb, 'y', 3)
     assert StringBuilderRepr.ll_getlength(sb) == 10
     s = StringBuilderRepr.ll_build(sb)
     assert hlstr(s) == "xabcobayyy"
     assert StringBuilderRepr.ll_getlength(sb) == 10