seitime-frappe/frappe/tests/test_exporter_fixtures.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

286 lines
8.4 KiB
Python

# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# License: MIT. See LICENSE
import frappe
import frappe.defaults
from frappe.core.doctype.data_import.data_import import export_csv
import unittest
import os
class TestDataImportFixtures(unittest.TestCase):
def setUp(self):
pass
#start test for Client Script
def test_Custom_Script_fixture_simple(self):
fixture = "Client Script"
path = frappe.scrub(fixture) + "_original_style.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_simple_name_equal_default(self):
fixture = ["Client Script", {"name":["Item"]}]
path = frappe.scrub(fixture[0]) + "_simple_name_equal_default.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_simple_name_equal(self):
fixture = ["Client Script", {"name":["Item"],"op":"="}]
path = frappe.scrub(fixture[0]) + "_simple_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_simple_name_not_equal(self):
fixture = ["Client Script", {"name":["Item"],"op":"!="}]
path = frappe.scrub(fixture[0]) + "_simple_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
#without [] around the name...
def test_Custom_Script_fixture_simple_name_at_least_equal(self):
fixture = ["Client Script", {"name":"Item-Cli"}]
path = frappe.scrub(fixture[0]) + "_simple_name_at_least_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_multi_name_equal(self):
fixture = ["Client Script", {"name":["Item", "Customer"],"op":"="}]
path = frappe.scrub(fixture[0]) + "_multi_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_multi_name_not_equal(self):
fixture = ["Client Script", {"name":["Item", "Customer"],"op":"!="}]
path = frappe.scrub(fixture[0]) + "_multi_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_empty_object(self):
fixture = ["Client Script", {}]
path = frappe.scrub(fixture[0]) + "_empty_object_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_just_list(self):
fixture = ["Client Script"]
path = frappe.scrub(fixture[0]) + "_just_list_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
# Client Script regular expression
def test_Custom_Script_fixture_rex_no_flags(self):
fixture = ["Client Script", {"name":r"^[i|A]"}]
path = frappe.scrub(fixture[0]) + "_rex_no_flags.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Script_fixture_rex_with_flags(self):
fixture = ["Client Script", {"name":r"^[i|A]", "flags":"L,M"}]
path = frappe.scrub(fixture[0]) + "_rex_with_flags.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
#start test for Custom Field
def test_Custom_Field_fixture_simple(self):
fixture = "Custom Field"
path = frappe.scrub(fixture) + "_original_style.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_simple_name_equal_default(self):
fixture = ["Custom Field", {"name":["Item-vat"]}]
path = frappe.scrub(fixture[0]) + "_simple_name_equal_default.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_simple_name_equal(self):
fixture = ["Custom Field", {"name":["Item-vat"],"op":"="}]
path = frappe.scrub(fixture[0]) + "_simple_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_simple_name_not_equal(self):
fixture = ["Custom Field", {"name":["Item-vat"],"op":"!="}]
path = frappe.scrub(fixture[0]) + "_simple_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
#without [] around the name...
def test_Custom_Field_fixture_simple_name_at_least_equal(self):
fixture = ["Custom Field", {"name":"Item-va"}]
path = frappe.scrub(fixture[0]) + "_simple_name_at_least_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_multi_name_equal(self):
fixture = ["Custom Field", {"name":["Item-vat", "Bin-vat"],"op":"="}]
path = frappe.scrub(fixture[0]) + "_multi_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_multi_name_not_equal(self):
fixture = ["Custom Field", {"name":["Item-vat", "Bin-vat"],"op":"!="}]
path = frappe.scrub(fixture[0]) + "_multi_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_empty_object(self):
fixture = ["Custom Field", {}]
path = frappe.scrub(fixture[0]) + "_empty_object_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_just_list(self):
fixture = ["Custom Field"]
path = frappe.scrub(fixture[0]) + "_just_list_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
# Custom Field regular expression
def test_Custom_Field_fixture_rex_no_flags(self):
fixture = ["Custom Field", {"name":r"^[r|L]"}]
path = frappe.scrub(fixture[0]) + "_rex_no_flags.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Custom_Field_fixture_rex_with_flags(self):
fixture = ["Custom Field", {"name":r"^[i|A]", "flags":"L,M"}]
path = frappe.scrub(fixture[0]) + "_rex_with_flags.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
#start test for Doctype
def test_Doctype_fixture_simple(self):
fixture = "ToDo"
path = "Doctype_" + frappe.scrub(fixture) + "_original_style_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_fixture_simple_name_equal_default(self):
fixture = ["ToDo", {"name":["TDI00000008"]}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_simple_name_equal_default.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_fixture_simple_name_equal(self):
fixture = ["ToDo", {"name":["TDI00000002"],"op":"="}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_simple_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_simple_name_not_equal(self):
fixture = ["ToDo", {"name":["TDI00000002"],"op":"!="}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_simple_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
#without [] around the name...
def test_Doctype_fixture_simple_name_at_least_equal(self):
fixture = ["ToDo", {"name":"TDI"}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_simple_name_at_least_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_multi_name_equal(self):
fixture = ["ToDo", {"name":["TDI00000002", "TDI00000008"],"op":"="}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_multi_name_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_multi_name_not_equal(self):
fixture = ["ToDo", {"name":["TDI00000002", "TDI00000008"],"op":"!="}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_multi_name_not_equal.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_fixture_empty_object(self):
fixture = ["ToDo", {}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_empty_object_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_fixture_just_list(self):
fixture = ["ToDo"]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_just_list_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
# Doctype regular expression
def test_Doctype_fixture_rex_no_flags(self):
fixture = ["ToDo", {"name":r"^TDi"}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_rex_no_flags_should_be_all.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)
def test_Doctype_fixture_rex_with_flags(self):
fixture = ["ToDo", {"name":r"^TDi", "flags":"L,M"}]
path = "Doctype_" + frappe.scrub(fixture[0]) + "_rex_with_flags_should_be_none.csv"
export_csv(fixture, path)
self.assertTrue(True)
os.remove(path)