introduce CartRuleCest.php

This commit is contained in:
Herbert Maschke 2020-02-20 11:56:07 +01:00
parent 75d22eaf3a
commit 8b5def9756
3 changed files with 58 additions and 1 deletions

View File

@ -19,7 +19,7 @@ DB_PREFIX=
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
SESSION_LIFETIME=20
SESSION_LIFETIME=120
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1

View File

@ -15,6 +15,14 @@ printf "### start preparation ###\n"
printf ">> truncate and migrate database\n"
php artisan migrate:fresh --env=testing --quiet
printf ">> cleaning laravel caches ###\n"
${WORKPATH}/../php artisan view:clear
${WORKPATH}/../php artisan route:clear
${WORKPATH}/../php artisan cache:clear
${WORKPATH}/../php artisan config:clear
printf ">> cleaning previous tests ###\n"
${WORKPATH}/../vendor/bin/codecept clean
printf "### finish preparation ###\n"
printf "### start tests ###\n"

View File

@ -0,0 +1,49 @@
<?php
use Webkul\Product\Models\ProductAttributeValue;
use Webkul\Product\Models\ProductFlat;
use Webkul\CartRule\Models\CartRule;
use Haendlerbund\SalesforceApi\Models\HbCartRule;
class CartRuleCest
{
public function testCartRuleCreation(FunctionalTester $I)
{
$I->loginAsAdmin();
$I->amOnAdminRoute('admin.cart-rules.index');
// we are dealing with vue.js so we can not do classical form filling
$I->sendAjaxPostRequest(route('admin.cart-rules.store'), [
'_token' => csrf_token(),
'name' => 'Demo Cart Rule',
// the following fields are important to send with the POST request:
'starts_from' => '',
'ends_till' => '',
'use_auto_generation' => 0,
'coupon_type' => 0, // no coupon
'action_type' => 'by_percent',
'coupon_code' => 'coupon',
'discount_amount' => '10',
'channels' => [
'default',
],
'customer_groups' => [
'guest',
],
]);
$cartRule = $I->grabRecord(CartRule::class, [
'name' => 'Demo Cart Rule',
]);
$I->seeResponseCodeIsSuccessful();
}
}