+)
+
+test_implicit_punctuation = (
+ (0, '> ', "say Whatever"),
+ (0, 'You say, "Whatever\."', ""),
+ (1, 'says, "Whatever\."', ""),
+)
+
+test_typo_replacement = (
+ (1, '> ', "say That's what i think."),
+ (1, 'You say, "That\'s what I think\."', ""),
+ (0, 'says, "That\'s what I think\."', "say You know what i'd like."),
+ (0, 'You say, "You know what I\'d like\."', ""),
+ (1, 'says, "You know what I\'d like\."', "say Then i'll tell you."),
+ (1, 'You say, "Then I\'ll tell you\."', ""),
+ (0, 'says, "Then I\'ll tell you\."', "say Now i'm ready."),
+ (0, 'You say, "Now I\'m ready\."', ""),
+ (1, 'says, "Now I\'m ready\."', "say That's teh idea."),
+ (1, 'You say, "That\'s the idea\."', ""),
+ (0, 'says, "That\'s the idea\."', "say It's what theyre saying."),
+ (0, 'You say, "It\'s what they\'re saying\."', ""),
+ (1, 'says, "It\'s what they\'re saying\."', "say Well, youre right."),
+ (1, 'You say, "Well, you\'re right\."', ""),
+ (0, 'says, "Well, you\'re right\."', ""),
+)
+
+test_sentence_capitalization = (
+ (0, "> ", "say this sentence should start with a capital T."),
+ (0, 'You say, "This sentence', ""),
+ (1, 'says, "This sentence', ""),
+)
+
+test_chat_mode = (
+ (1, '> ', "chat"),
+ (1, '(?s)Entering chat mode .*> \(chat\) ', "Feeling chatty."),
+ (1, 'You say, "Feeling chatty\."', "!chat"),
+ (0, 'says, "Feeling chatty\."', ""),
+ (1, '> ', "say Now less chatty."),
+ (1, 'You say, "Now less chatty\."', ""),
+ (0, 'says, "Now less chatty\."', ""),
+)