|
|
@@ -1,33 +1,49 @@ |
|
|
|
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors |
|
|
|
# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and Contributors |
|
|
|
# License: MIT. See LICENSE |
|
|
|
|
|
|
|
import unittest |
|
|
|
import frappe |
|
|
|
|
|
|
|
from frappe.utils.goal import get_monthly_results, get_monthly_goal_graph_data |
|
|
|
from frappe.test_runner import make_test_objects |
|
|
|
import frappe.utils |
|
|
|
from frappe.utils import format_date, today |
|
|
|
from frappe.utils.goal import get_monthly_goal_graph_data, get_monthly_results |
|
|
|
from frappe.tests.utils import FrappeTestCase |
|
|
|
|
|
|
|
class TestGoal(unittest.TestCase): |
|
|
|
def setUp(self): |
|
|
|
make_test_objects('Event', reset=True) |
|
|
|
|
|
|
|
def tearDown(self): |
|
|
|
frappe.db.delete("Event") |
|
|
|
# make_test_objects('Event', reset=True) |
|
|
|
frappe.db.commit() |
|
|
|
class TestGoal(FrappeTestCase): |
|
|
|
@classmethod |
|
|
|
def setUpClass(cls): |
|
|
|
super().setUpClass() |
|
|
|
make_test_objects("Event", reset=True) |
|
|
|
|
|
|
|
def test_get_monthly_results(self): |
|
|
|
'''Test monthly aggregation values of a field''' |
|
|
|
result_dict = get_monthly_results('Event', 'subject', 'creation', "event_type='Private'", 'count') |
|
|
|
"""Test monthly aggregation values of a field""" |
|
|
|
result_dict = get_monthly_results( |
|
|
|
"Event", |
|
|
|
"subject", |
|
|
|
"creation", |
|
|
|
filters={"event_type": "Private"}, |
|
|
|
aggregation="count", |
|
|
|
) |
|
|
|
|
|
|
|
from frappe.utils import today, formatdate |
|
|
|
self.assertEqual(result_dict.get(formatdate(today(), "MM-yyyy")), 2) |
|
|
|
self.assertEqual(result_dict.get(format_date(today(), "MM-yyyy")), 2) |
|
|
|
|
|
|
|
def test_get_monthly_goal_graph_data(self): |
|
|
|
'''Test for accurate values in graph data (based on test_get_monthly_results)''' |
|
|
|
docname = frappe.get_list('Event', filters = {"subject": ["=", "_Test Event 1"]})[0]["name"] |
|
|
|
frappe.db.set_value('Event', docname, 'description', 1) |
|
|
|
data = get_monthly_goal_graph_data('Test', 'Event', docname, 'description', 'description', 'description', |
|
|
|
'Event', '', 'description', 'creation', "starts_on = '2014-01-01'", 'count') |
|
|
|
self.assertEqual(float(data['data']['datasets'][0]['values'][-1]), 1) |
|
|
|
"""Test for accurate values in graph data (based on test_get_monthly_results)""" |
|
|
|
docname = frappe.get_list("Event", filters={"subject": ["=", "_Test Event 1"]})[ |
|
|
|
0 |
|
|
|
]["name"] |
|
|
|
frappe.db.set_value("Event", docname, "description", 1) |
|
|
|
data = get_monthly_goal_graph_data( |
|
|
|
"Test", |
|
|
|
"Event", |
|
|
|
docname, |
|
|
|
"description", |
|
|
|
"description", |
|
|
|
"description", |
|
|
|
"Event", |
|
|
|
"", |
|
|
|
"description", |
|
|
|
"creation", |
|
|
|
filters={"starts_on": "2014-01-01"}, |
|
|
|
aggregation="count", |
|
|
|
) |
|
|
|
self.assertEqual(float(data["data"]["datasets"][0]["values"][-1]), 1) |