seitime-frappe/frappe/tests/test_dynamic_links.py
Gavin D'souza 3446026555 chore: Update header: license.txt => LICENSE
The license.txt file has been replaced with LICENSE for quite a while
now. INAL but it didn't seem accurate to say "hey, checkout license.txt
although there's no such file". Apart from this, there were
inconsistencies in the headers altogether...this change brings
consistency.
2021-09-03 12:02:59 +05:30

71 lines
1.9 KiB
Python

# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# License: MIT. See LICENSE
import frappe, unittest
class TestDynamicLinks(unittest.TestCase):
def setUp(self):
frappe.db.delete("Email Unsubscribe")
def test_delete_normal(self):
event = frappe.get_doc({
'doctype': 'Event',
'subject':'test-for-delete',
'starts_on': '2014-01-01',
'event_type': 'Public'
}).insert()
unsub = frappe.get_doc({
'doctype': 'Email Unsubscribe',
'email': 'test@example.com',
'reference_doctype': event.doctype,
'reference_name': event.name
}).insert()
event.delete()
self.assertFalse(frappe.db.exists('Email Unsubscribe', unsub.name))
def test_delete_with_comment(self):
event = frappe.get_doc({
'doctype': 'Event',
'subject':'test-for-delete-1',
'starts_on': '2014-01-01',
'event_type': 'Public'
}).insert()
event.add_comment('Comment', 'test')
self.assertTrue(frappe.get_all('Comment',
filters={'reference_doctype':'Event', 'reference_name':event.name}))
event.delete()
self.assertFalse(frappe.get_all('Comment',
filters={'reference_doctype':'Event', 'reference_name':event.name}))
def test_custom_fields(self):
from frappe.utils.testutils import add_custom_field, clear_custom_fields
add_custom_field('Event', 'test_ref_doc', 'Link', 'DocType')
add_custom_field('Event', 'test_ref_name', 'Dynamic Link', 'test_ref_doc')
unsub = frappe.get_doc({
'doctype': 'Email Unsubscribe',
'email': 'test@example.com',
'global_unsubscribe': 1
}).insert()
event = frappe.get_doc({
'doctype': 'Event',
'subject':'test-for-delete-2',
'starts_on': '2014-01-01',
'event_type': 'Public',
'test_ref_doc': unsub.doctype,
'test_ref_name': unsub.name
}).insert()
self.assertRaises(frappe.LinkExistsError, unsub.delete)
event.test_ref_doc = None
event.test_ref_name = None
event.save()
unsub.delete()
clear_custom_fields('Event')