ujis.exp   [plain text]


#!/usr/bin/expect -f
proc begin_strcut_test {_from _length} {
    global spawn_id from length
    set from $_from
    set length $_length

    spawn tests/strcut Japanese EUC-JP $_from $_length
    set timeout 1

    expect_after {
        "\[^\r\n\]*\r\n" { fail $test }
    }
}

begin_strcut_test -1 2

set test "asciish characters ($from, $length)"
send "testtest\r"
expect {
    -ex "***ERROR***\r\n" { pass $test }
}

set test "non-asciish characters ($from, $length)"
send "テストテスト\r"
expect {
    -ex "***ERROR***\r\n" { pass $test }
}

close
begin_strcut_test 2 -1

set test "asciish characters ($from, $length)"
send "testtest\r"
expect {
    -ex "***ERROR***\r\n" { pass $test }
}

set test "non-asciish characters ($from, $length)"
send "テストテスト\r"
expect {
    -ex "***ERROR***\r\n" { pass $test }
}

close
begin_strcut_test 3 2

set test "asciish characters ($from, $length)"
send "testtest\r"
expect {
    -ex "%74%74 (2)\r\n" { pass $test }
}

set test "non-asciish characters ($from, $length)"
send "テストテスト\r"
expect {
    -ex "%a5%b9 (2)\r\n" { pass $test }
}

close
begin_strcut_test 5 8

set test "asciish characters ($from, $length)"
send "testtest\r"
expect {
    -ex "%65%73%74 (3)\r\n" { pass $test }
}

set test "non-asciish characters ($from, $length)"
send "テストテスト\r"
expect {
    -ex "%a5%c8%a5%c6%a5%b9%a5%c8 (8)\r\n" { pass $test }
}

close
begin_strcut_test 1 15

set test "asciish characters ($from, $length)"
send "testestestestestes\r"
expect {
     "%65%73%74%65%73%74%65%73%74%65%73%74%65%73%74 (15)\r\n" { pass $test }
}

set test "non-asciish characters ($from, $length)"
send "テストテスト\r"
expect {
    -ex "%a5%c6%a5%b9%a5%c8%a5%c6%a5%b9%a5%c8 (12)\r\n" { pass $test }
}
close


# vim: sts=4 sw=4 ts=4 et encoding=EUC-JP