Sfoglia il codice sorgente

test: use data fieldtype instead of int in `test_fieldname_starting_with_int` (#16771)

* fix(test): use data fieldtype instead of int

postgres doesn't allow using like operator on int/any non-text/varchar column
ref: https://github.com/frappe/frappe/issues/16722

* minor: updated test_fieldname_starting_with_int with child table filters
version-14
Ritwik Puri 3 anni fa
committed by GitHub
parent
commit
d1423f1517
Non sono state trovate chiavi note per questa firma nel database ID Chiave GPG: 4AEE18F83AFDEB23
1 ha cambiato i file con 33 aggiunte e 3 eliminazioni
  1. +33
    -3
      frappe/tests/test_db_query.py

+ 33
- 3
frappe/tests/test_db_query.py Vedi File

@@ -639,23 +639,53 @@ class TestReportview(unittest.TestCase):
def test_fieldname_starting_with_int(self):
from frappe.core.doctype.doctype.test_doctype import new_doctype

frappe.delete_doc_if_exists("DocType", "dt_with_int_named_fieldname")
frappe.delete_doc_if_exists("DocType", "table_dt")

table_dt = new_doctype(
"table_dt", istable=1, fields=[{"label": "1field", "fieldname": "2field", "fieldtype": "Data"}]
).insert()

dt = new_doctype(
"dt_with_int_named_fieldname",
fields=[{"label": "1field", "fieldname": "1field", "fieldtype": "Int"}],
fields=[
{"label": "1field", "fieldname": "1field", "fieldtype": "Data"},
{
"label": "2table_field",
"fieldname": "2table_field",
"fieldtype": "Table",
"options": table_dt.name,
},
],
).insert(ignore_permissions=True)

frappe.get_doc({"doctype": "dt_with_int_named_fieldname", "1field": 10}).insert(
dt_data = frappe.get_doc({"doctype": "dt_with_int_named_fieldname", "1field": "10"}).insert(
ignore_permissions=True
)

query = DatabaseQuery("dt_with_int_named_fieldname")
self.assertTrue(query.execute(filters={"1field": 10}))
self.assertTrue(query.execute(filters={"1field": "10"}))
self.assertTrue(query.execute(filters={"1field": ["like", "1%"]}))
self.assertTrue(query.execute(filters={"1field": ["in", "1,2,10"]}))
self.assertTrue(query.execute(filters={"1field": ["is", "set"]}))
self.assertFalse(query.execute(filters={"1field": ["not like", "1%"]}))
self.assertTrue(query.execute(filters=[["table_dt", "2field", "is", "not set"]]))

frappe.get_doc(
{
"doctype": table_dt.name,
"2field": "10",
"parent": dt_data.name,
"parenttype": dt_data.doctype,
"parentfield": "2table_field",
}
).insert(ignore_permissions=True)

self.assertTrue(query.execute(filters=[["table_dt", "2field", "is", "set"]]))

# cleanup
dt.delete()
table_dt.delete()


def add_child_table_to_blog_post():


Caricamento…
Annulla
Salva