From aca6dd0686a7d2a709e56eacac0ec161a54158fd Mon Sep 17 00:00:00 2001 From: Shreya Date: Tue, 30 Oct 2018 12:13:28 +0530 Subject: [PATCH] test: Add test case --- frappe/tests/test_naming.py | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/frappe/tests/test_naming.py b/frappe/tests/test_naming.py index 4ca8c4f586..0c1ed15734 100644 --- a/frappe/tests/test_naming.py +++ b/frappe/tests/test_naming.py @@ -7,7 +7,7 @@ import frappe from frappe.utils import now_datetime from frappe.model.naming import getseries -from frappe.model.naming import append_number_if_name_exists +from frappe.model.naming import append_number_if_name_exists, revert_series_if_last class TestNaming(unittest.TestCase): def tearDown(self): @@ -60,3 +60,34 @@ class TestNaming(unittest.TestCase): self.assertEqual(todo.name, 'TODO-{month}-{status}-{series}'.format( month=now_datetime().strftime('%m'), status=todo.status, series=series)) + + def test_revert_series(self): + series = 'TEST-2018-' + key = 'TEST-.YYYY.-' + name = 'TEST-2018-00001' + frappe.db.sql("""INSERT INTO `tabSeries` (name, current) values (%s, 1)""", (series,)) + revert_series_if_last(key, name) + count = frappe.db.sql("""SELECT current from `tabSeries` where name = %s""", series, as_dict=True)[0] + + self.assertEqual(count.get('current'), 0) + frappe.db.sql("""delete from `tabSeries` where name = %s""", series) + + series = 'TEST-2018-' + key = 'TEST-.YYYY.-.#####' + name = 'TEST-2018-00002' + frappe.db.sql("""INSERT INTO `tabSeries` (name, current) values (%s, 2)""", (series,)) + revert_series_if_last(key, name) + count = frappe.db.sql("""SELECT current from `tabSeries` where name = %s""", series, as_dict=True)[0] + + self.assertEqual(count.get('current'), 1) + frappe.db.sql("""delete from `tabSeries` where name = %s""", series) + + series = 'TEST-' + key = 'TEST-' + name = 'TEST-00003' + frappe.db.sql("""INSERT INTO `tabSeries` (name, current) values (%s, 3)""", (series,)) + revert_series_if_last(key, name) + count = frappe.db.sql("""SELECT current from `tabSeries` where name = %s""", series, as_dict=True)[0] + + self.assertEqual(count.get('current'), 2) + frappe.db.sql("""delete from `tabSeries` where name = %s""", series) \ No newline at end of file