英語を啄ばむ3-文字を見極める目が大事。
ドリィちゃん「この鳥頭!作っているのは簡易翻訳ソフトでしょ。もぅ。3歩で物事を忘れんだからぁ。」
うん?今日は登場が早いね・・・・・・もしかして、その手に持っているのは・・・
ドリィちゃん「テストよ♪」。
・・・・・・・・・まぁ、何を言っても仕方が無いから見せて。どれどれ。
< Test() > Public Sub IsAlphabetTest()
'テストの準備
Dim target As Lexer = GenereteTestTarget()
Dim datas As Char() = New Char() {"a"c, "b"c, "c"c, "d"c, "e"c, _
"f"c, "g"c, "h"c, "i"c, "j"c, "k"c, "l"c, "m"c, "n"c, "o"c, "p"c, _
"q"c, "r"c, "s"c, "t"c, "u"c, "v"c, "w"c, "x"c, "y"c, "z"c, _
"A"c, "B"c, "C"c, "D"c, "E"c, _
"F"c, "G"c, "H"c, "I"c, "J"c, "K"c, "L"c, "M"c, "N"c, "O"c, "P"c, _
"Q"c, "R"c, "S"c, "T"c, "U"c, "V"c, "W"c, "X"c, "Y"c, "Z"c}
Dim method As MethodInfo = target.GetType().GetMethod("IsAlphabet", _
BindingFlags.Instance Or BindingFlags.InvokeMethod Or _
BindingFlags.Public Or BindingFlags.NonPublic)
Assert.IsNotNull(method, _
"IsAlphabetメソッドが無いけど、それどういうことぉぉ by ドリィ")
'テスト実行
Dim val(0) As Object
For i As Integer = 0 To datas.Length - 1
val(0) = datas(i)
Assert.IsTrue(CBool(method.Invoke(target, val)), _
"あらあら" & val(0).ToString() & _
"はアルファベットじゃないのかなぁ by ドリィ")
Next
'エラーチェック
val(0) = ","c
Assert.IsFalse(CBool(method.Invoke(target, val)), _
"あらあら" & val(0).ToString() & "を通していいのかな by ドリィ")
End Sub
< Test() > Public Sub IsSymbolTest()
'テストの準備
Dim target As Lexer = GenereteTestTarget()
Dim datas As Char() = New Char() { _
","c, "."c, "?"c, "'"c, "@"c, ":"c, ";"c, "\"c}
Dim method As MethodInfo = target.GetType().GetMethod("IsSymbol", _
BindingFlags.Instance Or BindingFlags.InvokeMethod Or _
BindingFlags.Public Or BindingFlags.NonPublic)
Assert.IsNotNull(method, _
"IsSymbolメソッドが無いけど、それどういうことぉぉ by ドリィ")
'テスト実行
Dim val(0) As Object
For i As Integer = 0 To datas.Length - 1
val(0) = datas(i)
Assert.IsTrue(CBool(method.Invoke(target, val)), _
"あらあら" & val(0).ToString() & "はお忘れ? by ドリィ")
Next
'エラーチェック
val(0) = "8"c
Assert.IsFalse(CBool(method.Invoke(target, val)), _
"あらあら" & val(0).ToString() & "を通していいのかな by ドリィ")
End Sub
また嫌らしそうなのをいっぱい打ってるね。えーとどれどれ・・・
ドリィちゃん「カンニング禁止ぃ!」。
うっっっ!仕方が無い一丁やったるかぁ!
'指定した文字がアルファベットか否かチェック
Private Function IsAlphabet(ByVal str As Char) As Boolean
Dim tmp As Char = Char.ToLower(str)
If tmp >= "a"c And tmp <= "z"c Then
Return True
End If
Return False
End Function
'指定した文字がシンボルか否かチェック
Private Function IsSymbol(ByVal str As Char) As Boolean
If str = "."c Then
Return True
End If
Return False
End Function
ドリィちゃん(*´ー`*)
ドリィちゃんが微笑むと何かいやな予感がするぞ。うわぁーまたエラーだぁー。 えっ!ちょっ!でもドリィちゃんずるいよ!ドット以外も入れているじゃないか!
ドリィちゃん「あらあら。英語の記号はドットだけじゃないのよぉ。テストし甲斐があるわぁ。」
またやられたピヨ。
お後がよろしいようなので今回はおしまい。