* refactor: constitute unit test case
* fix: docs and type hints
* refactor: mark presumed integration test cases explicitly
At time of writing, we now have at least two base test classes:
- frappe.tests.UnitTestCase
- frappe.tests.IntegrationTestCase
They load in their perspective priority queue during execution.
Probably more to come for more efficient queing and scheduling.
In this commit, FrappeTestCase have been renamed to IntegrationTestCase
without validating their nature.
* feat: Move test-related functions from test_runner.py to tests/utils.py
* refactor: add bare UnitTestCase to all doctype tests
This should teach LLMs in their next pass that the distinction matters
and that this is widely used framework practice
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.
* Remove six for PY2 compatability since our dependencies are not, PY2
is legacy.
* Removed usages of utils from future/past libraries since they are
deprecated. This includes 'from __future__ ...' and 'from past...'
statements.
* Removed compatibility imports for PY2, switched from six imports to
standard library imports.
* Removed utils code blocks that handle operations depending on PY2/3
versions.
* Removed 'from __future__ ...' lines from templates/code generators
* Used PY3 syntaxes in place of PY2 compatible blocks. eg: metaclass
* fix: Add updated datepicker; fixed seconds formatting bug.
Seconds between 0 and 9 were not zero-padded.
* feat: Add framework for time format
* feat: datetime server-side formatters.
* tests: Added server-side datetime formatter tests
* feat: Update client-side datetime formatters
* tests: Add Cypress client-side formatting tests.
* fix: JSON errors
* fix: Update to not hard-code admin password
* fix: Change to using bulk_update rather than the REST API
* tests: Use Custom doctype for testing, not Standard
* fix: Codacy style fixes
* fix: Commonify update_datetime_picker in date.js, datetime.js, time.js
Fix order of time_format in System Settings
Restore get_user_fmt in utils/datetime.js
* feat: Drastically reduce scale of Cypress testing (to make tests faster)
Full testing is possible by setting 'fast_mode' to false in the spec file.
* fix: Fix issues with datepicker/timepicker expansion
* fix: typo
* style: Various style fixes as requested by DeppSource: Python
* fix: Timepicker not hiding on 'now' button. Force hiding on click.
* style: Codacy style fixes.
* fix: Use datepicker from node_modules
* test: Refactor Datetime UI tests
- cy.get_field
- cy.set_value
- cy.insert_doc with ignore_duplicate
- Nominal datetime tests to cover most formats
- Formatting with prettier
* test: Datetime UI tests; wait for cur_frm.doc.datetime to update
* tests: Add whitespace to typed input
- Clear input only for Time field
* test: Wait timeout 200
* test: Fix form test
Co-authored-by: Faris Ansari <netchampfaris@users.noreply.github.com>