Skip to content

Commit

Permalink
fix exception when domain name is not given
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander Gaal committed Jan 22, 2024
1 parent ba3075b commit 64341b7
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 2 deletions.
6 changes: 4 additions & 2 deletions src/NameResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,20 @@
use AkrilliA\LaravelBeyond\Exceptions\InvalidNameException;
use Illuminate\Support\Str;

use function Laravel\Prompts\confirm;
use function Laravel\Prompts\search;
use function Laravel\Prompts\suggest;
use function Termwind\ask;

final class NameResolver
{
private string $appOrDomain;

private string $namespace;

private string $directory;
private string $directory = '';

private string $className;
private string $className = '';

private string $path;

Expand Down
48 changes: 48 additions & 0 deletions tests/NameResolverTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<?php

namespace Tests;

use AkrilliA\LaravelBeyond\Commands\MakeEnumCommand;
use AkrilliA\LaravelBeyond\NameResolver;

class NameResolverTest extends TestCase
{
public function testCanResolveAppOrDomainName(): void
{
$resolver = new NameResolver(
command: new MakeEnumCommand,
name: 'Users.UserStatusEnum',
);

$this->assertSame('Users', $resolver->getAppOrDomain());
}

public function testCanResolveClassName(): void
{
$resolver = new NameResolver(
command: new MakeEnumCommand,
name: 'Users.UserStatusEnum',
);

$this->assertSame('UserStatusEnum', $resolver->getClassName());
}

public function testCanResolveNamespace(): void
{
$resolver = new NameResolver(
command: new MakeEnumCommand,
name: 'Users.UserStatusEnum',
);

$this->assertSame('Domain\\Users\\Enums', $resolver->getNamespace());
}

public function testCanResolveAppOrDomainByQuestion(): void
{
$this->artisan(MakeEnumCommand::class, [
'name' => 'Users/UserStatusEnum'
])
->expectsQuestion('On which domain do you want to add your Enum', 'Users')
->assertSuccessful();
}
}

0 comments on commit 64341b7

Please sign in to comment.