diff --git a/lang/en/importer.php b/lang/en/importer.php index 05326f8c..68a59f69 100644 --- a/lang/en/importer.php +++ b/lang/en/importer.php @@ -5,18 +5,20 @@ return [ 'clockify_time_entries' => [ 'name' => 'Clockify Time Entries', - 'description' => '1. First make sure that you set the Date format to "MM/DD/YYYY" and the Time format to "12-hour" in the user settings.
'. - '2. Go to REPORTS -> TIME -> Detailed in the navigation on the left.
'. - '3. Now select the date range that you want to export in the right top. '. + 'description' => '1. First make sure that you set the Date format to "MM/DD/YYYY" and the Time format to "12-hour" in the user settings.
'. + '2. In the same preferences page change the language of Clockfiy to English.
'. + '3. Go to REPORTS -> TIME -> Detailed in the navigation on the left.
'. + '4. Now select the date range that you want to export in the right top. '. 'It is currently not possible to select more than one year. You can export each year separately and import them one after another .'. '
4. Now click Export -> Save as CSV. The Export dropdown is in the header of the export table left of the printer symbol. '. '

Before you import make sure that the Timezone settings in Clockify are the same as in solidtime.', ], 'clockify_projects' => [ 'name' => 'Clockify Projects', - 'description' => '1. Go to PROJECTS in the navigation on the left.
'. - '2. Now click on the three dots on the right of the project that you want to export and select Export.
'. - '3. Now click Export -> Save as CSV. The Export dropdown is in the header of the export table in the top right corner.', + 'description' => '1. Make sure to set the language of Clockify to English in "Preferences -> General".
'. + '2. Go to PROJECTS in the navigation on the left.
'. + '3. Now click on the three dots on the right of the project that you want to export and select Export.
'. + '4. Now click Export -> Save as CSV. The Export dropdown is in the header of the export table in the top right corner.', ], 'toggl_data_importer' => [ 'name' => 'Toggl Data Importer', diff --git a/tests/Unit/Endpoint/Api/V1/Public/PublicReportEndpointTest.php b/tests/Unit/Endpoint/Api/V1/Public/PublicReportEndpointTest.php index 909e311e..b0b81e9d 100644 --- a/tests/Unit/Endpoint/Api/V1/Public/PublicReportEndpointTest.php +++ b/tests/Unit/Endpoint/Api/V1/Public/PublicReportEndpointTest.php @@ -79,6 +79,7 @@ public function test_show_fails_with_not_found_if_report_is_expired(): void public function test_show_returns_detailed_information_about_the_report(): void { // Arrange + $timezone = 'Europe/Vienna'; $reportDto = new ReportPropertiesDto; $organization = Organization::factory()->create(); $reportDto->start = now()->subDays(2); @@ -87,7 +88,7 @@ public function test_show_returns_detailed_information_about_the_report(): void $reportDto->subGroup = TimeEntryAggregationType::Task; $reportDto->historyGroup = TimeEntryAggregationTypeInterval::Day; $reportDto->weekStart = Weekday::Monday; - $reportDto->timezone = 'Europe/Vienna'; + $reportDto->timezone = $timezone; $report = Report::factory()->forOrganization($organization)->public()->create([ 'public_until' => null, 'properties' => $reportDto, @@ -182,7 +183,7 @@ public function test_show_returns_detailed_information_about_the_report(): void 'grouped_type' => TimeEntryAggregationTypeInterval::Day->value, 'grouped_data' => [ [ - 'key' => now()->subDays(2)->toDateString(), + 'key' => now()->timezone($timezone)->subDays(2)->toDateString(), 'seconds' => 0, 'cost' => 0, 'grouped_type' => null, @@ -191,7 +192,7 @@ public function test_show_returns_detailed_information_about_the_report(): void 'color' => null, ], [ - 'key' => now()->subDays(1)->toDateString(), + 'key' => now()->timezone($timezone)->subDays(1)->toDateString(), 'seconds' => 300, 'cost' => 0, 'grouped_type' => null, @@ -200,7 +201,7 @@ public function test_show_returns_detailed_information_about_the_report(): void 'color' => null, ], [ - 'key' => now()->toDateString(), + 'key' => now()->timezone($timezone)->toDateString(), 'seconds' => 0, 'cost' => 0, 'grouped_type' => null, @@ -320,6 +321,7 @@ public function test_show_returns_detailed_information_about_the_report_with_all public function test_if_the_resources_behind_the_filters_no_longer_exist_the_report_ignores_those_filters_but_this_does_not_increase_the_visible_data(): void { // Arrange + $timezone = 'Europe/Vienna'; $organization = Organization::factory()->create(); $client = Client::factory()->forOrganization($organization)->create(); $project = Project::factory()->forClient($client)->forOrganization($organization)->create(); @@ -341,7 +343,7 @@ public function test_if_the_resources_behind_the_filters_no_longer_exist_the_rep $reportDto->subGroup = TimeEntryAggregationType::Task; $reportDto->historyGroup = TimeEntryAggregationTypeInterval::Day; $reportDto->weekStart = Weekday::Monday; - $reportDto->timezone = 'Europe/Vienna'; + $reportDto->timezone = $timezone; $reportDto->setMemberIds([Str::uuid()->toString()]); $reportDto->setClientIds([Str::uuid()->toString()]); $reportDto->setProjectIds([Str::uuid()->toString()]); @@ -382,7 +384,7 @@ public function test_if_the_resources_behind_the_filters_no_longer_exist_the_rep 'grouped_type' => TimeEntryAggregationTypeInterval::Day->value, 'grouped_data' => [ [ - 'key' => now()->subDays(2)->toDateString(), + 'key' => now()->timezone($timezone)->subDays(2)->toDateString(), 'seconds' => 0, 'cost' => 0, 'grouped_type' => null, @@ -391,7 +393,7 @@ public function test_if_the_resources_behind_the_filters_no_longer_exist_the_rep 'color' => null, ], [ - 'key' => now()->subDays(1)->toDateString(), + 'key' => now()->timezone($timezone)->subDays(1)->toDateString(), 'seconds' => 0, 'cost' => 0, 'grouped_type' => null, @@ -400,7 +402,7 @@ public function test_if_the_resources_behind_the_filters_no_longer_exist_the_rep 'color' => null, ], [ - 'key' => now()->toDateString(), + 'key' => now()->timezone($timezone)->toDateString(), 'seconds' => 0, 'cost' => 0, 'grouped_type' => null, diff --git a/tests/Unit/Endpoint/Api/V1/TimeEntryEndpointTest.php b/tests/Unit/Endpoint/Api/V1/TimeEntryEndpointTest.php index 94bde8a2..22b8773b 100644 --- a/tests/Unit/Endpoint/Api/V1/TimeEntryEndpointTest.php +++ b/tests/Unit/Endpoint/Api/V1/TimeEntryEndpointTest.php @@ -261,7 +261,7 @@ public function test_index_endpoint_filter_only_full_dates_returns_time_entries_ { // Arrange $now = Carbon::create(2024, 1, 1, 12, 0, 0, 'Europe/Vienna'); - $this->freezeTime($now); + $this->travelTo($now); $data = $this->createUserWithPermission([ 'time-entries:view:own', ]); @@ -310,7 +310,7 @@ public function test_index_endpoint_filter_only_full_dates_returns_time_entries_ { // Arrange $now = Carbon::create(2024, 1, 1, 12, 0, 0, 'Europe/Vienna'); - $this->freezeTime($now); + $this->travelTo($now); $data = $this->createUserWithPermission([ 'time-entries:view:own', ]); diff --git a/tests/Unit/Service/BillableRateServiceTest.php b/tests/Unit/Service/BillableRateServiceTest.php index 90bdc98e..cd6a0b7e 100644 --- a/tests/Unit/Service/BillableRateServiceTest.php +++ b/tests/Unit/Service/BillableRateServiceTest.php @@ -25,7 +25,7 @@ class BillableRateServiceTest extends TestCaseWithDatabase private BillableRateService $billableRateService; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->billableRateService = app(BillableRateService::class); diff --git a/tests/Unit/Service/DashboardServiceTest.php b/tests/Unit/Service/DashboardServiceTest.php index 2fdb808c..56f94325 100644 --- a/tests/Unit/Service/DashboardServiceTest.php +++ b/tests/Unit/Service/DashboardServiceTest.php @@ -27,7 +27,7 @@ class DashboardServiceTest extends TestCase protected DashboardService $dashboardService; - public function setUp(): void + protected function setUp(): void { parent::setUp(); $this->dashboardService = app(DashboardService::class);