PackageTest.php 2.4 KB

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