Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
lightCMS
提交
55ef4dcc
L
lightCMS
项目概览
OpenDocCN
/
lightCMS
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
lightCMS
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
55ef4dcc
编写于
9月 03, 2019
作者:
孙
孙建华
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tests
上级
6eb20d9c
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
79 addition
and
5 deletion
+79
-5
database/factories/EntityFactory.php
database/factories/EntityFactory.php
+10
-0
tests/Feature/Admin/EntityControllerTest.php
tests/Feature/Admin/EntityControllerTest.php
+19
-5
tests/Feature/Admin/EntityFieldControllerTest.php
tests/Feature/Admin/EntityFieldControllerTest.php
+50
-0
未找到文件。
database/factories/EntityFactory.php
0 → 100644
浏览文件 @
55ef4dcc
<?php
use
Faker\Generator
as
Faker
;
$factory
->
define
(
App\Model\Admin\Entity
::
class
,
function
(
Faker
$faker
)
{
return
[
'name'
=>
$faker
->
word
,
'table_name'
=>
$faker
->
domainWord
,
];
});
tests/Feature/Admin/EntityControllerTest.php
浏览文件 @
55ef4dcc
...
...
@@ -3,6 +3,7 @@
namespace
Tests\Feature\Admin
;
use
App\Model\Admin\AdminUser
;
use
App\Model\Admin\Entity
;
use
Illuminate\Database\Schema\Blueprint
;
use
Illuminate\Foundation\Testing\RefreshDatabase
;
use
Illuminate\Support\Facades\Schema
;
...
...
@@ -12,28 +13,41 @@ class EntityControllerTest extends TestCase
{
use
RefreshDatabase
;
protected
$user
;
public
function
setUp
()
{
parent
::
setUp
();
$this
->
withoutExceptionHandling
();
$this
->
user
=
factory
(
AdminUser
::
class
)
->
create
();
}
public
function
testEntityCanBeListed
()
{
factory
(
Entity
::
class
,
1
)
->
create
();
$response
=
$this
->
actingAs
(
$this
->
user
,
'admin'
)
->
get
(
'/admin/entities/list'
);
$response
->
assertStatus
(
200
);
$content
=
$response
->
original
;
$this
->
assertEquals
(
1
,
$content
[
'count'
]);
}
public
function
testEntityCanBeCreated
()
{
$user
=
factory
(
AdminUser
::
class
)
->
create
();
$data
=
[
'name'
=>
'测试'
,
'table_name'
=>
'tests'
];
$response
=
$this
->
actingAs
(
$user
,
'admin'
)
$response
=
$this
->
actingAs
(
$
this
->
user
,
'admin'
)
->
post
(
'/admin/entities'
,
$data
);
$response
->
assertJson
([
'code'
=>
0
]);
$response
=
$this
->
actingAs
(
$user
,
'admin'
)
$response
=
$this
->
actingAs
(
$
this
->
user
,
'admin'
)
->
post
(
'/admin/entities'
,
$data
);
$response
->
assertJson
([
'code'
=>
1
]);
}
public
function
testEntityBeCreatedWhenTableHasExists
()
{
$user
=
factory
(
AdminUser
::
class
)
->
create
();
$data
=
[
'name'
=>
'测试'
,
'table_name'
=>
'tests'
];
Schema
::
create
(
$data
[
'table_name'
],
function
(
Blueprint
$table
)
{
$table
->
increments
(
'id'
);
...
...
@@ -41,7 +55,7 @@ class EntityControllerTest extends TestCase
$table
->
engine
=
'InnoDB'
;
});
$response
=
$this
->
actingAs
(
$user
,
'admin'
)
$response
=
$this
->
actingAs
(
$
this
->
user
,
'admin'
)
->
post
(
'/admin/entities'
,
$data
);
$response
->
assertJson
([
'code'
=>
2
]);
}
...
...
tests/Feature/Admin/EntityFieldControllerTest.php
0 → 100644
浏览文件 @
55ef4dcc
<?php
namespace
Tests\Feature\Admin
;
use
App\Model\Admin\AdminUser
;
use
App\Model\Admin\EntityField
;
use
App\Repository\Admin\EntityRepository
;
use
Illuminate\Foundation\Testing\RefreshDatabase
;
use
Illuminate\Support\Facades\Schema
;
use
Tests\TestCase
;
class
EntityFieldControllerTest
extends
TestCase
{
use
RefreshDatabase
;
protected
$entity
;
protected
$user
;
public
function
setUp
()
{
parent
::
setUp
();
$this
->
withoutExceptionHandling
();
$data
=
[
'name'
=>
'测试'
,
'table_name'
=>
'tests'
];
$this
->
entity
=
EntityRepository
::
add
(
$data
);
$this
->
user
=
factory
(
AdminUser
::
class
)
->
create
();
}
public
function
testEntityFieldCanBeCreated
()
{
$data
=
[
'entity_id'
=>
$this
->
entity
->
id
,
'name'
=>
'title'
,
'type'
=>
'string'
,
'form_name'
=>
'标题'
,
'form_type'
=>
'input'
,
'order'
=>
77
,
'field_length'
=>
''
,
'field_total'
=>
''
,
'field_scale'
=>
''
,
'comment'
=>
''
,
'default_value'
=>
''
];
$response
=
$this
->
actingAs
(
$this
->
user
,
'admin'
)
->
post
(
'/admin/entityFields'
,
$data
);
$response
->
assertJson
([
'code'
=>
0
]);
$this
->
assertDatabaseHas
(
'entity_fields'
,
[
'entity_id'
=>
$this
->
entity
->
id
,
'name'
=>
'title'
]);
$this
->
assertTrue
(
Schema
::
hasColumn
(
$this
->
entity
->
table_name
,
$data
[
'name'
]));
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录