From db503aefb838db1dad5cfc770a8ed0139919b7aa Mon Sep 17 00:00:00 2001 From: Henddher Pedroza Date: Sun, 20 Oct 2019 18:50:42 -0400 Subject: [PATCH] Increase coverage in evennia/utils/eveditor. --- evennia/utils/tests/test_eveditor.py | 117 ++++++++++++++++++++++++++- 1 file changed, 113 insertions(+), 4 deletions(-) diff --git a/evennia/utils/tests/test_eveditor.py b/evennia/utils/tests/test_eveditor.py index 178832c978..200dc39259 100644 --- a/evennia/utils/tests/test_eveditor.py +++ b/evennia/utils/tests/test_eveditor.py @@ -181,7 +181,7 @@ class TestEvEditor(CommandTest): ) self.assertEqual(self.char1.ndb._eveditor.get_buffer(), "") - def test_eveditor_DIGIT_COLON_DIGIT(self): + def test_eveditor_search_and_replace(self): eveditor.EvEditor(self.char1) self.call( eveditor.CmdEditorGroup(), @@ -199,10 +199,119 @@ class TestEvEditor(CommandTest): raw_string="line 2.", msg="02line 2.", ) - self.assertEqual(self.char1.ndb._eveditor.get_buffer(), "line 1.\nline 2.") + self.call( + eveditor.CmdLineInput(), "line 3.", + raw_string="line 3.", + msg="03line 3.", + ) + self.call( + eveditor.CmdEditorGroup(), + "2:3", + cmdstring=":", + msg="Line Editor []\n02line 2.\n03line 3.\n[l:02 w:004 c:0015](:h for help)", + ) + self.call( + eveditor.CmdEditorGroup(), + "1:2 line LINE", + cmdstring=":s", + msg="Search-replaced line -> LINE for lines 1-2.", + ) + self.assertEqual(self.char1.ndb._eveditor.get_buffer(), + "LINE 1.\nLINE 2.\nline 3.") + + def test_eveditor_COLON_DD(self): + eveditor.EvEditor(self.char1) self.call( eveditor.CmdEditorGroup(), "", - cmdstring="1:2", - msg="", + cmdstring=":", + msg="Line Editor []\n01\n[l:01 w:000 c:0000](:h for help)", ) + self.call( + eveditor.CmdLineInput(), "line 1.", + raw_string="line 1.", + msg="01line 1.", + ) + self.call( + eveditor.CmdLineInput(), "line 2.", + raw_string="line 2.", + msg="02line 2.", + ) + self.call( + eveditor.CmdLineInput(), "line 3.", + raw_string="line 3.", + msg="03line 3.", + ) + self.call( + eveditor.CmdEditorGroup(), + "", + cmdstring=":DD", + msg="Cleared 3 lines from buffer.", + ) + self.assertEqual(self.char1.ndb._eveditor.get_buffer(), "") + + def test_eveditor_COLON_F(self): + eveditor.EvEditor(self.char1) + self.call( + eveditor.CmdEditorGroup(), + "", + cmdstring=":", + msg="Line Editor []\n01\n[l:01 w:000 c:0000](:h for help)", + ) + self.call( + eveditor.CmdLineInput(), "line 1", + raw_string="line 1", + msg="01line 1", + ) + self.call( + eveditor.CmdEditorGroup(), + "1:2", + cmdstring=":f", + msg="Flood filled lines 1-2.", + ) + self.assertEqual(self.char1.ndb._eveditor.get_buffer(), "line 1") + + def test_eveditor_bad_commands(self): + eveditor.EvEditor(self.char1) + self.call( + eveditor.CmdEditorGroup(), + "", + cmdstring=":", + msg="Line Editor []\n01\n[l:01 w:000 c:0000](:h for help)", + ) + self.call( + eveditor.CmdLineInput(), "line 1.", + raw_string="line 1.", + msg="01line 1.", + ) + self.call( + eveditor.CmdEditorGroup(), + "", + cmdstring=":dw", + msg="You must give a search word to delete.", + ) + # self.call( + # eveditor.CmdEditorGroup(), + # raw_string="", + # cmdstring=":i", + # msg="You need to enter a new line and where to insert it.", + # ) + # self.call( + # eveditor.CmdEditorGroup(), + # "", + # cmdstring=":I", + # msg="You need to enter text to insert.", + # ) + # self.call( + # eveditor.CmdEditorGroup(), + # "", + # cmdstring=":r", + # msg="You need to enter a replacement string.", + # ) + self.call( + eveditor.CmdEditorGroup(), + "", + cmdstring=":s", + msg="You must give a search word and something to replace it with.", + ) + self.assertEqual(self.char1.ndb._eveditor.get_buffer(), "line 1.")