From e0175c29283fe1107119f644ceab61db439d99b7 Mon Sep 17 00:00:00 2001 From: denisdulici Date: Sat, 29 Sep 2018 22:41:17 +0300 Subject: [PATCH] fixed some tests and added more --- tests/Feature/Common/ItemsTest.php | 40 ++++++++++++++++------- tests/Feature/Incomes/CustomersTest.php | 43 ++++++++++++++++--------- 2 files changed, 56 insertions(+), 27 deletions(-) diff --git a/tests/Feature/Common/ItemsTest.php b/tests/Feature/Common/ItemsTest.php index 8068eb172..100c1326a 100644 --- a/tests/Feature/Common/ItemsTest.php +++ b/tests/Feature/Common/ItemsTest.php @@ -8,23 +8,23 @@ use Tests\Feature\FeatureTestCase; class ItemsTest extends FeatureTestCase { - public function testItShouldBeShowTheItemsPage() + public function testItShouldSeeItemListPage() { $this->loginAs() ->get(route('items.index')) ->assertStatus(200) - ->assertSee('Items'); + ->assertSeeText(trans_choice('general.items', 2)); } - public function testItShouldBeShowCreateItemPage() + public function testItShouldSeeItemCreatePage() { $this->loginAs() ->get(route('items.create')) ->assertStatus(200) - ->assertSee('New Item'); + ->assertSeeText(trans('general.title.new', ['type' => trans_choice('general.items', 1)])); } - public function testItShouldStoreAnItem() + public function testItShouldCreateItem() { $this->loginAs() ->post(route('items.store'), $this->getItemRequest()) @@ -34,7 +34,7 @@ class ItemsTest extends FeatureTestCase $this->assertFlashLevel('success'); } - public function testItShouldEditItem() + public function testItShouldSeeItemUpdatePage() { $item = Item::create($this->getItemRequest()); @@ -44,6 +44,22 @@ class ItemsTest extends FeatureTestCase ->assertSee($item->name); } + public function testItShouldUpdateItem() + { + $request = $this->getItemRequest(); + + $item = Item::create($request); + + $request['name'] = $this->faker->text(15); + + $this->loginAs() + ->patch(route('items.update', $item->id), $request) + ->assertStatus(302) + ->assertRedirect(route('items.index')); + + $this->assertFlashLevel('success'); + } + public function testItShouldDeleteItem() { $item = factory(Item::class)->create(); @@ -62,15 +78,15 @@ class ItemsTest extends FeatureTestCase return [ 'company_id' => $this->company->id, - 'name' => $this->faker->title, - 'sku' => $this->faker->languageCode, + 'name' => $this->faker->text(15), + 'sku' => $this->faker->unique()->ean8, 'picture' => $picture, 'description' => $this->faker->text(100), - 'purchase_price' => $this->faker->randomFloat(2,10,20), - 'sale_price' => $this->faker->randomFloat(2,10,20), + 'purchase_price' => $this->faker->randomFloat(2, 10, 20), + 'sale_price' => $this->faker->randomFloat(2, 10, 20), 'quantity' => $this->faker->randomNumber(2), - 'category_id' => $this->company->categories()->first()->id, - 'tax_id' => $this->company->taxes()->first()->id, + 'category_id' => $this->company->categories()->type('item')->first()->id, + 'tax_id' => $this->company->taxes()->enabled()->first()->id, 'enabled' => $this->faker->boolean ? 1 : 0 ]; } diff --git a/tests/Feature/Incomes/CustomersTest.php b/tests/Feature/Incomes/CustomersTest.php index 0d86a44be..42c6c240b 100644 --- a/tests/Feature/Incomes/CustomersTest.php +++ b/tests/Feature/Incomes/CustomersTest.php @@ -8,6 +8,22 @@ use Tests\Feature\FeatureTestCase; class CustomersTest extends FeatureTestCase { + public function testItShouldSeeCustomerListPage() + { + $this->loginAs() + ->get(route('customers.index')) + ->assertStatus(200) + ->assertSeeText(trans_choice('general.customers', 2)); + } + + public function testItShouldSeeCustomerCreatePage() + { + $this->loginAs() + ->get(route('customers.create')) + ->assertStatus(200) + ->assertSeeText(trans('general.title.new', ['type' => trans_choice('general.customers', 1)])); + } + public function testItShouldCreateOnlyCustomerWithoutUser() { $this->loginAs() @@ -46,30 +62,28 @@ class CustomersTest extends FeatureTestCase ->assertSessionHasErrors(['email']); } - public function testItShouldBeSeeTheCustomersPage() + public function testItShouldSeeCustomerDetailPage() { $customer = Customer::create($this->getCustomerRequest()); - $this - ->loginAs() - ->get(route('customers.index')) + $this->loginAs() + ->get(route('customers.show', ['customer' => $customer->id])) ->assertStatus(200) ->assertSee($customer->email); } - public function testItShouldBeSeeTheEditCustomersPage() + public function testItShouldSeeCustomerUpdatePage() { $customer = Customer::create($this->getCustomerRequest()); - $this - ->loginAs() + $this->loginAs() ->get(route('customers.edit', ['customer' => $customer->id])) ->assertStatus(200) ->assertSee($customer->email) ->assertSee($customer->name); } - public function testItShouldUpdateTheCustomer() + public function testItShouldUpdateCustomer() { $request = $this->getCustomerRequest(); @@ -77,8 +91,7 @@ class CustomersTest extends FeatureTestCase $request['name'] = $this->faker->name; - $this - ->loginAs() + $this->loginAs() ->patch(route('customers.update', $customer->id), $request) ->assertStatus(302) ->assertRedirect(route('customers.index')); @@ -86,7 +99,7 @@ class CustomersTest extends FeatureTestCase $this->assertFlashLevel('success'); } - public function testItShouldDeleteTheCustomer() + public function testItShouldDeleteCustomer() { $customer = Customer::create($this->getCustomerRequest()); @@ -99,7 +112,7 @@ class CustomersTest extends FeatureTestCase } - public function testItShouldNotDeleteIfItHaveRelations() + public function testItShouldNotDeleteCustomerIfHasRelations() { $this->assertTrue(true); //TODO : This will write after done invoice and revenues tests. @@ -111,11 +124,11 @@ class CustomersTest extends FeatureTestCase 'company_id' => $this->company->id, 'name' => $this->faker->name, 'email' => $this->faker->email, - 'tax_number' => $this->faker->buildingNumber, + 'tax_number' => $this->faker->randomNumber(9), 'phone' => $this->faker->phoneNumber, - 'address' => $this->faker->streetAddress, + 'address' => $this->faker->address, 'website' => 'www.akaunting.com', - 'currency_code' => $this->company->currencies()->first()->code, + 'currency_code' => $this->company->currencies()->enabled()->first()->code, 'enabled' => $this->faker->boolean ? 1 : 0 ]; }