|
|
@@ -72,11 +72,14 @@ class FrappeAPITestCase(unittest.TestCase): |
|
|
|
@property |
|
|
|
def sid(self) -> str: |
|
|
|
if not getattr(self, "_sid", None): |
|
|
|
r = self.post("/api/method/login", { |
|
|
|
"usr": "Administrator", |
|
|
|
"pwd": frappe.conf.admin_password or "admin", |
|
|
|
}) |
|
|
|
self._sid = r.headers[2][1].split(";")[0].lstrip("sid=") |
|
|
|
from frappe.auth import CookieManager, LoginManager |
|
|
|
from frappe.utils import set_request |
|
|
|
|
|
|
|
set_request(path="/") |
|
|
|
frappe.local.cookie_manager = CookieManager() |
|
|
|
frappe.local.login_manager = LoginManager() |
|
|
|
frappe.local.login_manager.login_as('Administrator') |
|
|
|
self._sid = frappe.session.sid |
|
|
|
|
|
|
|
return self._sid |
|
|
|
|
|
|
@@ -112,16 +115,6 @@ class TestResourceAPI(FrappeAPITestCase): |
|
|
|
frappe.delete_doc_if_exists(cls.DOCTYPE, name) |
|
|
|
frappe.db.commit() |
|
|
|
|
|
|
|
def setUp(self): |
|
|
|
# commit to ensure consistency in session (postgres CI randomly fails) |
|
|
|
if frappe.conf.db_type == "postgres": |
|
|
|
frappe.db.commit() |
|
|
|
|
|
|
|
if self._testMethodName == "test_auth_cycle": |
|
|
|
from frappe.core.doctype.user.user import generate_keys |
|
|
|
generate_keys("Administrator") |
|
|
|
frappe.db.commit() |
|
|
|
|
|
|
|
def test_unauthorized_call(self): |
|
|
|
# test 1: fetch documents without auth |
|
|
|
response = requests.get(f"{self.RESOURCE_URL}/{self.DOCTYPE}") |
|
|
@@ -226,6 +219,12 @@ class TestResourceAPI(FrappeAPITestCase): |
|
|
|
class TestMethodAPI(FrappeAPITestCase): |
|
|
|
METHOD_PATH = "/api/method" |
|
|
|
|
|
|
|
def setUp(self): |
|
|
|
if self._testMethodName == "test_auth_cycle": |
|
|
|
from frappe.core.doctype.user.user import generate_keys |
|
|
|
generate_keys("Administrator") |
|
|
|
frappe.db.commit() |
|
|
|
|
|
|
|
def test_version(self): |
|
|
|
# test 1: test for /api/method/version |
|
|
|
response = self.get(f"{self.METHOD_PATH}/version") |
|
|
|