mirror of
https://github.com/solidtime-io/solidtime.git
synced 2026-08-08 08:12:17 +01:00
Added more imports
This commit is contained in:
@@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace Tests\Unit\Service\Import;
|
||||
|
||||
use App\Models\Organization;
|
||||
use App\Models\Project;
|
||||
use App\Models\User;
|
||||
use App\Service\Import\ImportDatabaseHelper;
|
||||
@@ -74,4 +75,64 @@ class ImportDatabaseHelperTest extends TestCase
|
||||
// Assert
|
||||
$this->fail();
|
||||
}
|
||||
|
||||
public function test_get_key_by_external_identifier_returns_key_for_external_identifier(): void
|
||||
{
|
||||
// Arrange
|
||||
$organization = Organization::factory()->create();
|
||||
$project = Project::factory()->forOrganization($organization)->create();
|
||||
$externalIdentifier1 = '12345';
|
||||
$externalIdentifier2 = '54321';
|
||||
$helper = new ImportDatabaseHelper(Project::class, ['name', 'organization_id'], true);
|
||||
$helper->getKey([
|
||||
'name' => $project->name,
|
||||
'organization_id' => $organization->getKey(),
|
||||
], [
|
||||
'color' => '#000000',
|
||||
], $externalIdentifier1);
|
||||
$helper->getKey([
|
||||
'name' => 'Not existing project',
|
||||
'organization_id' => $organization->getKey(),
|
||||
], [
|
||||
'color' => '#000000',
|
||||
], $externalIdentifier2);
|
||||
|
||||
// Act
|
||||
$key1 = $helper->getKeyByExternalIdentifier($externalIdentifier1);
|
||||
$key2 = $helper->getKeyByExternalIdentifier($externalIdentifier2);
|
||||
|
||||
// Assert
|
||||
$this->assertSame($project->getKey(), $key1);
|
||||
$this->assertSame(Project::where('name', '=', 'Not existing project')->first()->getKey(), $key2);
|
||||
}
|
||||
|
||||
public function test_get_external_ids_returns_all_external_ids_that_were_temporary_stored_via_get_key(): void
|
||||
{
|
||||
// Arrange
|
||||
$organization = Organization::factory()->create();
|
||||
$project = Project::factory()->forOrganization($organization)->create();
|
||||
$externalIdentifier1 = '12345';
|
||||
$externalIdentifier2 = '54321';
|
||||
$helper = new ImportDatabaseHelper(Project::class, ['name', 'organization_id'], true);
|
||||
$helper->getKey([
|
||||
'name' => $project->name,
|
||||
'organization_id' => $organization->getKey(),
|
||||
], [
|
||||
'color' => '#000000',
|
||||
], $externalIdentifier1);
|
||||
$helper->getKey([
|
||||
'name' => 'Not existing project',
|
||||
'organization_id' => $organization->getKey(),
|
||||
], [
|
||||
'color' => '#000000',
|
||||
], $externalIdentifier2);
|
||||
|
||||
// Act
|
||||
$externalKeys = $helper->getExternalIds();
|
||||
|
||||
// Assert
|
||||
$this->assertCount(2, $externalKeys);
|
||||
$this->assertContains($externalIdentifier1, $externalKeys);
|
||||
$this->assertContains($externalIdentifier2, $externalKeys);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user