From d978b71835519aefb0a89ef2225e8763fa8c60fe Mon Sep 17 00:00:00 2001
From: Dimas FM <dimasfaid@gmail.com>
Date: Fri, 3 May 2024 23:19:44 +0700
Subject: [PATCH] Add delete others post test case

---
 .gitignore                     |  2 +-
 tests/functions/delete_post.py |  8 +++++---
 tests/test_post.py             | 18 ++++++++++++++----
 3 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/.gitignore b/.gitignore
index 7852020..5c4bfe1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -163,4 +163,4 @@ cython_debug/
 *.log
 
 tabler-icons-3.3.0/
-db/
\ No newline at end of file
+*.db
\ No newline at end of file
diff --git a/tests/functions/delete_post.py b/tests/functions/delete_post.py
index aa3228e..b54c37d 100644
--- a/tests/functions/delete_post.py
+++ b/tests/functions/delete_post.py
@@ -4,7 +4,9 @@ from tests.utils import URL
 def delete_post(page: Page, post_id: int) -> Page:
   page.goto(URL + '/post/' + str(post_id))
 
-  page.locator("[name=postDeleteButton]").click()
-
-  expect(page).to_have_url(URL+'/')
+  try:
+    page.locator("[name=postDeleteButton]").click(timeout=1000)
+  except:
+    pass
+  
   return page
\ No newline at end of file
diff --git a/tests/test_post.py b/tests/test_post.py
index abdc00d..c10f7d4 100644
--- a/tests/test_post.py
+++ b/tests/test_post.py
@@ -14,7 +14,6 @@ def user2 ():
   yield user
 
 def test_create_post(page: Page, user: UserTest) -> None:
-    page.goto(URL)
 
     page = login(page, user)
 
@@ -26,7 +25,6 @@ def test_create_post(page: Page, user: UserTest) -> None:
     delete_post_utils(post_id)
 
 def test_delete_post(page: Page, user) -> None:
-    page.goto(URL)
     
     page = login(page, user)
     page, post_id = create_post(page)
@@ -35,7 +33,6 @@ def test_delete_post(page: Page, user) -> None:
     assert is_post_exist(post_id) == False
 
 def test_edit_post(page: Page, user) -> None:
-    page.goto(URL)
     
     page = login(page, user)
     page, post_id = create_post(page)
@@ -61,4 +58,17 @@ def test_edit_others_post(page: Page, user: UserTest, user2: UserTest) -> None:
     page.goto(URL + '/post/' + str(post_id))
     expect(page).not_to_have_title(new_title)
 
-    delete_post_utils(post_id)
\ No newline at end of file
+    delete_post_utils(post_id)
+
+
+def test_delete_others_post(page: Page, user: UserTest, user2: UserTest) -> None:
+    
+    page = login(page, user)
+    page, post_id = create_post(page)
+    
+    page = logout(page)
+    page = login(page, user2)
+    
+    page = delete_post(page, post_id)
+
+    assert is_post_exist(post_id) == True
\ No newline at end of file
-- 
GitLab