- Updated task editing template to handle default status for new tasks and corrected variable names. - Enhanced work time reporting by rounding time to the nearest quarter hour and adjusting amount formatting. - Introduced TasksController to manage task-related operations, including status resolution and email notifications. - Added TaskAttachmentRepository for handling task attachments, including upload, rename, and delete functionalities. - Implemented WorkTimeRepository to fetch clients with unsettled tasks and calculate total work time. - Created unit tests for TasksController and TaskAttachmentRepository to ensure functionality and correctness.
29 lines
948 B
PHP
29 lines
948 B
PHP
<?php
|
|
|
|
require_once __DIR__ . '/../../../autoload/Domain/Tasks/TaskAttachmentRepository.php';
|
|
|
|
use Domain\Tasks\TaskAttachmentRepository;
|
|
|
|
function run_task_attachment_repository_tests()
|
|
{
|
|
assert_true(
|
|
TaskAttachmentRepository::effectiveTitle( ' Raport ', 'plik.pdf' ) === 'Raport',
|
|
'Expected effective title to prefer trimmed custom title.'
|
|
);
|
|
|
|
assert_true(
|
|
TaskAttachmentRepository::effectiveTitle( '', 'plik.pdf' ) === 'plik.pdf',
|
|
'Expected effective title to fallback to original file name.'
|
|
);
|
|
|
|
$sanitized = TaskAttachmentRepository::sanitizeFileName( 'Załącznik #1 (final).pdf' );
|
|
assert_true(
|
|
strpos( $sanitized, '#' ) === false
|
|
&& strpos( $sanitized, '(' ) === false
|
|
&& strpos( $sanitized, ')' ) === false
|
|
&& strpos( $sanitized, ' ' ) === false
|
|
&& substr( $sanitized, -4 ) === '.pdf',
|
|
'Expected sanitized file name to remove unsupported characters and keep extension.'
|
|
);
|
|
}
|