Browse Source

Separate CrudMake class properties into own test class

tags/0.1.0
Nafies Luthfi 8 years ago
parent
commit
02826848c9
  1. 97
      tests/CrudMakeClassPropertiesTest.php
  2. 90
      tests/CrudMakeCommandTest.php

97
tests/CrudMakeClassPropertiesTest.php

@ -0,0 +1,97 @@
<?php
namespace Tests;
use Luthfi\CrudGenerator\CrudMake;
class CrudMakeClassPropertiesTest extends TestCase
{
public function setUp()
{
parent::setUp();
$this->crudMaker = app(CrudMake::class);
}
/** @test */
public function it_has_stub_model_names_property()
{
$this->assertEquals([
'model_namespace' => 'mstrNmspc',
'full_model_name' => 'fullMstr',
'plural_model_name' => 'Masters',
'model_name' => 'Master',
'table_name' => 'masters',
'lang_name' => 'master',
'collection_model_var_name' => 'mstrCollections',
'single_model_var_name' => 'singleMstr',
], $this->crudMaker->stubModelNames);
}
/** @test */
public function it_has_model_names_property()
{
$this->assertEquals([
'full_model_name' => 'App\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => '',
'model_namespace' => 'App',
], $this->crudMaker->getModelName('Category'));
$this->assertEquals([
'full_model_name' => 'App\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => '',
'model_namespace' => 'App',
], $this->crudMaker->getModelName('category'));
}
/** @test */
public function it_set_proper_model_names_property_for_namespaced_model_name_entry()
{
$this->assertEquals([
'model_namespace' => 'App\Entities\References',
'full_model_name' => 'App\Entities\References\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Entities/References',
], $this->crudMaker->getModelName('Entities/References/Category'));
$this->assertEquals([
'model_namespace' => 'App\Models',
'full_model_name' => 'App\Models\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Models',
], $this->crudMaker->getModelName('Models/Category'));
$this->assertEquals([
'model_namespace' => 'App\Models',
'full_model_name' => 'App\Models\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Models',
], $this->crudMaker->getModelName('models/category'));
}
}

90
tests/CrudMakeCommandTest.php

@ -3,100 +3,10 @@
namespace Tests; namespace Tests;
use Illuminate\Contracts\Console\Kernel; use Illuminate\Contracts\Console\Kernel;
use Luthfi\CrudGenerator\CrudMake;
class CrudMakeCommandTest extends TestCase class CrudMakeCommandTest extends TestCase
{ {
/** @test */ /** @test */
public function it_has_stub_model_names_property()
{
$crudMaker = app(CrudMake::class);
$this->assertEquals([
'model_namespace' => 'mstrNmspc',
'full_model_name' => 'fullMstr',
'plural_model_name' => 'Masters',
'model_name' => 'Master',
'table_name' => 'masters',
'lang_name' => 'master',
'collection_model_var_name' => 'mstrCollections',
'single_model_var_name' => 'singleMstr',
], $crudMaker->stubModelNames);
}
/** @test */
public function it_has_model_names_property()
{
$crudMaker = app(CrudMake::class);
$this->assertEquals([
'full_model_name' => 'App\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => '',
'model_namespace' => 'App',
], $crudMaker->getModelName('Category'));
$this->assertEquals([
'full_model_name' => 'App\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => '',
'model_namespace' => 'App',
], $crudMaker->getModelName('category'));
}
/** @test */
public function it_set_proper_model_names_property_for_namespaced_model_name_entry()
{
$crudMaker = app(CrudMake::class);
$this->assertEquals([
'full_model_name' => 'App\Entities\References\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Entities/References',
'model_namespace' => 'App\Entities\References',
], $crudMaker->getModelName('Entities/References/Category'));
$this->assertEquals([
'full_model_name' => 'App\Models\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Models',
'model_namespace' => 'App\Models',
], $crudMaker->getModelName('Models/Category'));
$this->assertEquals([
'full_model_name' => 'App\Models\Category',
'plural_model_name' => 'Categories',
'model_name' => 'Category',
'table_name' => 'categories',
'lang_name' => 'category',
'collection_model_var_name' => 'categories',
'single_model_var_name' => 'category',
'model_path' => 'Models',
'model_namespace' => 'App\Models',
], $crudMaker->getModelName('models/category'));
}
/** @test */
public function it_can_generate_simple_crud_files() public function it_can_generate_simple_crud_files()
{ {
$this->artisan('make:crud', ['name' => $this->model_name, '--no-interaction' => true]); $this->artisan('make:crud', ['name' => $this->model_name, '--no-interaction' => true]);

Loading…
Cancel
Save