PackageTest.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace Tests\Unit;
  3. use App\Authority;
  4. use App\Role;
  5. use App\User;
  6. use Illuminate\Support\Facades\DB;
  7. use Tests\TestCase;
  8. class PackageTest extends TestCase
  9. {
  10. public function testUserMark(){
  11. $userMark=factory(User::class)->create();
  12. $this->assertNotEmpty($userMark->id);
  13. return $userMark;
  14. }
  15. public function testRole(){
  16. $role=Role::create([
  17. 'name'=>'测试admin'
  18. ]);
  19. $this->assertNotEmpty($role->id);
  20. $authorities= Authority::get();
  21. foreach ($authorities as $authority){
  22. DB::table('authority_role')->insert(['id_authority'=>$authority->id,'id_role'=>$role->id]);
  23. }
  24. return $role;
  25. }
  26. /**
  27. * @depends testRole
  28. */
  29. public function testUser(Role $role){
  30. $user=factory(User::class)->create();
  31. DB::table('user_role')->insert(['id_user'=>$user->id,'id_role'=>$role->id]);
  32. $user->touchToken();
  33. $this->assertNotEmpty($user->id);
  34. return $user;
  35. }
  36. public function testAddPackage(){
  37. $package=Package::create([
  38. 'logistic_number'=>'test214',
  39. ',type'=>'普通波次',
  40. 'weight'=>20,
  41. 'length'=>38,
  42. 'width'=>30,
  43. 'height'=>25,
  44. 'owner_id'=>'1',
  45. 'paper_box_id'=>'1',
  46. 'measuring_machine_id'=>'1',
  47. 'recipient'=>'Test浏览量',
  48. 'status'=>'无',
  49. ]);
  50. $this->assertNotEmpty($package);
  51. return $package;
  52. }
  53. /**
  54. * @depends testUser
  55. * @depends testUserMark
  56. * @depends testAddPackage
  57. */
  58. public function testIndex(User $user,User $userMark,Package $package){
  59. $response=$this->actingAs($user)->get('package');
  60. $response->assertOk()->assertSee('Test浏览量');
  61. $response=$this->actingAs($userMark)->get('package');
  62. $response->assertStatus(302)->assertRedirect('/');
  63. }
  64. /**
  65. * @depends testUser
  66. * @depends testUserMark
  67. * @depends testAddPackage
  68. */
  69. public function testDestroy(User $user,User $userMark,Package $package){
  70. $resultUser=$user->delete();
  71. $resultUserMark=$userMark->delete();
  72. $resultPackage=$package->delete();
  73. $this->assertTrue($resultUser);
  74. $this->assertTrue($resultUserMark);
  75. $this->assertTrue($resultPackage);
  76. }
  77. }