summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHombreLaser <buran@silosneeded.com>2024-03-13 19:53:36 -0600
committerHombreLaser <buran@silosneeded.com>2024-03-13 19:53:36 -0600
commitd4d62c6efb5f22c4a935a0a5feb6ec13b7c82f2b (patch)
tree997eebbf9918b53478226a361c6b96141064fc3b
parent2a14f9f516316bfae2c69ce178262c4554f4b9fe (diff)
Add missing tests
-rw-r--r--tests/test_delete_at.py11
-rw-r--r--tests/test_insert.py14
-rw-r--r--tests/test_row_at.py11
-rw-r--r--tests/test_search.py12
4 files changed, 44 insertions, 4 deletions
diff --git a/tests/test_delete_at.py b/tests/test_delete_at.py
index 02471d1..662afd9 100644
--- a/tests/test_delete_at.py
+++ b/tests/test_delete_at.py
@@ -1,4 +1,13 @@
+from src.program import Program
+
+
def test_delete_at(capsys, delete_at_program):
delete_at_program.run()
- assert capsys.readouterr()[0] == 'Row at 1 deleted\n' \ No newline at end of file
+ assert capsys.readouterr()[0] == 'Row at 1 deleted\n'
+
+
+def test_delete_at_out_of_bounds(capsys):
+ Program(args=['-f', './tests/test_table.csv', '-c', 'delete-at', '5']).run()
+
+ assert capsys.readouterr()[0] == "Couldn't find row at 5\n" \ No newline at end of file
diff --git a/tests/test_insert.py b/tests/test_insert.py
index caaf7ff..384ae49 100644
--- a/tests/test_insert.py
+++ b/tests/test_insert.py
@@ -1,4 +1,16 @@
+from src.program import Program
+from src.exceptions import IncompatibleRowLengthError
+import pytest
+
+
def test_insert(capsys, insert_program):
insert_program.run()
- assert capsys.readouterr()[0] == 'Row added!\n' \ No newline at end of file
+ assert capsys.readouterr()[0] == 'Row added!\n'
+
+
+def test_out_of_bounds_insert(capsys):
+ Program(args=['-f', './tests/test_table.csv', '-c', 'insert', '1,2,3,4']).run()
+
+ assert capsys.readouterr()[0] == 'Incompatible row length, got 4, expected 3\n'
+
diff --git a/tests/test_row_at.py b/tests/test_row_at.py
index 6b7c379..82e3270 100644
--- a/tests/test_row_at.py
+++ b/tests/test_row_at.py
@@ -1,6 +1,15 @@
+from src.program import Program
+
+
def test_row_at(capsys, row_at_program):
row_at_program.run()
assert capsys.readouterr()[0].startswith(
"('1919', 'Ten Days that Shook the World', 'John Reed')"
- ) \ No newline at end of file
+ )
+
+
+def test_out_of_bounds_row_at(capsys):
+ Program(args=['-f', './tests/test_table.csv', '-c', 'row-at', '5']).run()
+
+ assert capsys.readouterr()[0] == 'None\n' \ No newline at end of file
diff --git a/tests/test_search.py b/tests/test_search.py
index ecdc550..f126f7e 100644
--- a/tests/test_search.py
+++ b/tests/test_search.py
@@ -1,4 +1,14 @@
+from src.program import Program
+
+
def test_search(capsys, search_program):
search_program.run()
- assert capsys.readouterr()[0] == "('1919', 'Ten Days that Shook the World', 'John Reed')\n" \ No newline at end of file
+ assert capsys.readouterr()[0] == "('1919', 'Ten Days that Shook the World', 'John Reed')\n"
+
+
+def test_failed_search(capsys):
+ Program(args=['-f', './tests/test_table.csv', '-c',
+ 'search', "This book isn't on the table"]).run()
+
+ assert capsys.readouterr()[0] == 'Not found!\n'