Repository navigation
Release/v1.3.4 - #386
Merged
Merged
Release/v1.3.4#386
Conversation
- Split monolithic src/backend.py into src/backend/ subpackage (storage, auth, attachments, sync, voice) with __init__.py facade for full backward compatibility with QML PyOtherSide calls. - Decouple Vosk speech recognition into dedicated voice submodule. - Add pytest unit test suite under tests/python/ covering storage and attachment path resolution utilities. - Add pytest conftest and test documentation.
- Configure automated test runner for pytest test suite under tests/python/ - Test across Python 3.10 and 3.12 matrices on ubuntu-22.04 runners - Trigger on push and pull requests targeting main, dev, release, and feature branches
… and CI workflow - Add tests/qml/tst_customdatepicker.qml covering properties, mode switching, signal emission, and open reset - Add tests/qml/tst_globaltimerwidget.qml covering sync lifecycle, progress stages, messages, status resets, and timer signals - Add .github/workflows/qml-tests.yml for isolated headless QML testing on push and pull requests - Update tests/qml/README.md with the expanded test suite inventory
- Replace host apt-get Lomiri installation with Clickable containerized runner (clickable test --non-interactive --arch amd64) - Resolves missing Lomiri package errors on default Ubuntu 22.04 runners
- Create build/x86_64-linux-gnu/app prior to clickable test - Satisfies Clickable's build dir validation on clean CI checkouts without triggering redundant native compilation
Added TSLabel.qml & TSSearchBar.qml tests script and updated documentation
Refactor/modularize backend
Cover constants, logger, utils, and timer service state transitions via Qt Quick Test.
Group JavaScript core model test suites under tests/qml/models/ for clarity.
Test/363 js core unit tests
Delete unreferenced test scripts, obsolete image variants, and the broken pulse socket to reduce package bloat (#371).
…ripts-and-assets Clean up scratch scripts, unused images, and broken symlink
Cover database utilities, schema migrations, draft manager, and global state persistence (#364).
Test/364 js storage unit tests
…ion, and user log display - Integrate AssigneeFilterMenu into Dashboard header for single and multi-employee filtering - Support cross-account user matching by email and role-based access filtering - Update database queries across models (Main, project, task, timesheet, accounts) for user filtering - Display user names in timesheet log entries in TaskTimeChart and TaskDetailPage - Remove obsolete selector dialog files and add comprehensive QML test suites - Clean up code formatting and indentation across models and components
…ation, task spent updates, text wrapping, and indentation
Reset selection before querying delegates and re-query after re-rendering to prevent clicking stale item references.
Dashboad Assignee Filter(Filter by Employee)
Test scripts: Unit tests for QML Dialogs and Feedback components
Add QML test suites covering data models including task, timesheet, project, activity, accounts, notifications, and main helpers.
Test/365 js data models unit tests
Add automated QML test suites for navigation routes, chart calculators, chart worker, task form utils, html sanitizer, and squire bridge.
Test/366 js feature scripts unit tests
Merge branch 'release/v1.3.4' of https://github.com/CITOpenRep/timemanagement into test-scripts
Unit tests for QML Pickers and Selectors
Unit tests for QML Cards, Workflow, System, and Visualization components
Unit tests for QML Feature-specific components #362
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a user filter for dashboard and reporting queries, allowing timesheet and project/task data to be filtered by user. It also adds new GitHub Actions workflows for running QML and backend unit tests, and bumps the application version to 1.3.4. The most significant changes are grouped below.
User Filter Support in Dashboard, Project, Task, and Timesheet Queries:
models/global.js.models/Main.js,models/project.js,models/task.js, andmodels/timesheet.jsto accept an optionaluserIdparameter and apply user-based filtering usingAccount.buildUserFilterSQLorAccounts.buildUserFilterSQL. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17]Continuous Integration Improvements:
.github/workflows/qml-tests.ymlto run QML component tests using Clickable and GitHub Actions..github/workflows/tests.ymlto run Python backend unit tests on multiple Python versions using GitHub Actions.Version and Metadata Updates:
manifest.json.inandmodels/constants.js. [1] [2]Testing Enhancements:
clickable.yamlto specify a QML test command for Clickable-based testing.Code Organization and Imports:
models/Main.jsandmodels/task.jsto ensureaccounts.jsis available for user filtering functions. [1] [2] [3]These changes collectively enable filtering dashboard and reporting data by user, improve test automation, and increment the app version for release tracking.