Merge branch '0.x' into prod
All checks were successful
CI / testsuite (mysql, 8.2, ) (push) Successful in 6m25s
CI / testsuite (sqlite, 8.2, ) (push) Successful in 4m41s
CI / testsuite (pgsql, 8.2, ) (push) Successful in 15m14s
CI / testsuite (sqlite, 8.2, prefer-lowest) (push) Successful in 4m23s
CI / Coding Standard & Static Analysis (push) Successful in 3m57s
CI / testsuite (pgsql, 8.4, ) (push) Successful in 21m46s
CI / testsuite (mysql, 8.4, ) (push) Successful in 21m55s
CI / testsuite (sqlite, 8.4, ) (push) Successful in 17m11s

This commit is contained in:
2026-01-23 20:14:51 -08:00
50 changed files with 82611 additions and 82670 deletions

View File

@@ -9,7 +9,7 @@ jobs:
testsuite:
runs-on: ubuntu-latest
strategy:
fail-fast: true
fail-fast: false
matrix:
php-version: ['8.2', '8.4']
# db-type: ['mysql']
@@ -127,19 +127,7 @@ jobs:
fi
- name: Run phpstan
run: vendor/bin/phpstan analyse src tests --error-format=github > phpstan.errors
run: vendor/bin/phpstan analyse src --error-format=github
- name: Run phpcs
run: composer cs-check > phpcs.errors
- uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: phpstan
path: phpstan.errors
- uses: https://github.com/christopherHX/gitea-upload-artifact@v4
with:
name: phpcs
path: phpcs.errors
run: composer cs-check

View File

@@ -0,0 +1,31 @@
---
name: CI Build Status
on:
workflow_run:
workflows:
- CI
types:
- completed
jobs:
on-success:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Webhook
uses: zzzze/webhook-trigger@master
with:
data: "{\"text\":\"cake-addresses build succeeded\"}"
webhook_url: "https://chat.ops.hipowered.dev/hooks/697436db05042b4dd9cce240/hZCMq7jCPqHprKFcWp3v49wsf4MaN6caWdh7F8iXiSyr6Ts9"
options: "-H \"Content-Type: application/json\""
on-failure:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
steps:
- name: Webhook
uses: zzzze/webhook-trigger@master
with:
data: "{\"text\":\"cake-addresses build failed\"}"
webhook_url: "https://chat.ops.hipowered.dev/hooks/697436db05042b4dd9cce240/hZCMq7jCPqHprKFcWp3v49wsf4MaN6caWdh7F8iXiSyr6Ts9"
options: "-H \"Content-Type: application/json\""

View File

@@ -5,15 +5,16 @@
"license": "MIT",
"require": {
"php": ">=8.2",
"cakephp/cakephp": "^5.1",
"ext-bcmath": "*"
"cakephp/cakephp": "^5.1"
},
"require-dev": {
"phpunit/phpunit": "^10.3",
"php-collective/decimal-object": "^1.3",
"cakephp/migrations": "^4.0.0",
"phpstan/phpstan": "^2.1",
"dereuromark/composer-prefer-lowest": "^0.1.10"
"dereuromark/composer-prefer-lowest": "^0.1.10",
"cakedc/cakephp-phpstan": "^4.1",
"fig-r/psr2r-sniffer": "^2.7"
},
"suggest": {
"dereuromark/cakephp-geo": "^3.2"
@@ -29,5 +30,18 @@
"Cake\\Test\\": "vendor/cakephp/cakephp/tests/",
"TestApp\\": "tests/test_app/src/"
}
},
"config": {
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": false
}
},
"scripts": {
"cs-check": "vendor/bin/phpcs --colors --parallel=16",
"cs-fix": "vendor/bin/phpcbf --colors --parallel=16",
"lowest": "validate-prefer-lowest",
"lowest-setup": "composer update --prefer-lowest --prefer-stable --prefer-dist --no-interaction && cp composer.json composer.backup && composer require --dev dereuromark/composer-prefer-lowest && mv composer.backup composer.json",
"stan": "phpstan analyze"
}
}

View File

@@ -3,8 +3,8 @@ declare(strict_types=1);
use Migrations\AbstractMigration;
class InitialAddresses extends AbstractMigration
{
class InitialAddresses extends AbstractMigration {
/**
* Up Method.
*
@@ -12,8 +12,7 @@ class InitialAddresses extends AbstractMigration
* https://book.cakephp.org/phinx/0/en/migrations.html#the-up-method
* @return void
*/
public function up(): void
{
public function up(): void {
$this->table('addresses')
->addColumn('address_name', 'string', [
'default' => null,
@@ -315,7 +314,7 @@ class InitialAddresses extends AbstractMigration
],
[
'name' => 'country_continent',
]
],
)
->addIndex(
[
@@ -323,7 +322,7 @@ class InitialAddresses extends AbstractMigration
],
[
'name' => 'country_subregion',
]
],
)
->create();
@@ -434,7 +433,7 @@ class InitialAddresses extends AbstractMigration
],
[
'name' => 'country_region',
]
],
)
->create();
@@ -482,7 +481,7 @@ class InitialAddresses extends AbstractMigration
],
[
'name' => 'subregion_continent',
]
],
)
->create();
@@ -566,33 +565,32 @@ class InitialAddresses extends AbstractMigration
* https://book.cakephp.org/phinx/0/en/migrations.html#the-down-method
* @return void
*/
public function down(): void
{
public function down(): void {
$this->table('cities')
->dropForeignKey(
'country_id'
'country_id',
)
->dropForeignKey(
'state_id'
'state_id',
)->save();
$this->table('countries')
->dropForeignKey(
'subregion_id'
'subregion_id',
)
->dropForeignKey(
'region_id'
'region_id',
)
->save();
$this->table('states')
->dropForeignKey(
'country_id'
'country_id',
)->save();
$this->table('subregions')
->dropForeignKey(
'region_id'
'region_id',
)->save();
$this->table('addresses')->drop()->save();
@@ -602,4 +600,5 @@ class InitialAddresses extends AbstractMigration
$this->table('states')->drop()->save();
$this->table('subregions')->drop()->save();
}
}

View File

@@ -3,8 +3,8 @@ declare(strict_types=1);
use Migrations\AbstractMigration;
class InitialAddressesDynamicForeignKey extends AbstractMigration
{
class InitialAddressesDynamicForeignKey extends AbstractMigration {
/**
* Up Method.
*
@@ -12,8 +12,7 @@ class InitialAddressesDynamicForeignKey extends AbstractMigration
* https://book.cakephp.org/phinx/0/en/migrations.html#the-up-method
* @return void
*/
public function up(): void
{
public function up(): void {
$this->table('addresses')
->addColumn('foreign_key', 'string', [
'limit' => 45,
@@ -35,11 +34,11 @@ class InitialAddressesDynamicForeignKey extends AbstractMigration
* https://book.cakephp.org/phinx/0/en/migrations.html#the-down-method
* @return void
*/
public function down(): void
{
public function down(): void {
$this->table('addresses')
->removeColumn('foreign_key')
->removeColumn('model')
->save();
}
}

View File

@@ -3,7 +3,5 @@
// The following configs can be globally configured, copy the array content over to your ROOT/config
return [
'CakeAddresses' => [
],
'CakeAddresses' => [],
];

View File

@@ -1,4 +1,5 @@
<?php
use Cake\Routing\Route\DashedRoute;
$routes->plugin(
@@ -7,8 +8,8 @@ $routes->plugin(
function ($routes) {
$routes->setRouteClass(DashedRoute::class);
$routes->connect('/addresses', ['controller' => 'Addresses', 'action' => 'index']);
$routes->connect('/addresses/view/{id}', ['controller' => 'Addresses', 'action' => 'view', ], ['id' => '\d+', 'pass' => ['id']]);
$routes->connect('/addresses/view/{id}', ['controller' => 'Addresses', 'action' => 'view'], ['id' => '\d+', 'pass' => ['id']]);
$routes->connect('/addresses/edit/{id}', ['controller' => 'Addresses', 'action' => 'update'], ['id' => '\d+', 'pass' => ['id']]);
$routes->connect('/addresses/add', ['controller' => 'Addresses', 'action' => 'add']);
}
},
);

21
phpcs.xml Normal file
View File

@@ -0,0 +1,21 @@
<?xml version="1.0"?>
<ruleset name="plugin">
<arg value="nps"/>
<file>src/</file>
<file>config/</file>
<file>tests/</file>
<exclude-pattern>/tests/test_files/</exclude-pattern>
<exclude-pattern>/tests/test_app/</exclude-pattern>
<rule ref="vendor/fig-r/psr2r-sniffer/PSR2R/ruleset.xml"/>
<rule ref="PSR1.Classes.ClassDeclaration.MissingNamespace">
<exclude-pattern>*/config/Migrations/*</exclude-pattern>
</rule>
<rule ref="PhpCollective.Classes.ClassFileName.NoMatch">
<exclude-pattern>*/config/Migrations/*</exclude-pattern>
</rule>
</ruleset>

View File

@@ -1,8 +1,10 @@
includes:
- vendor/cakedc/cakephp-phpstan/extension.neon
parameters:
level: 5
level: 4
paths:
- src
bootstrapFiles:
- tests/bootstrap.php
treatPhpDocTypesAsCertain: false

View File

@@ -13,8 +13,8 @@ use Cake\Routing\RouteBuilder;
/**
* Plugin for CakeAddresses
*/
class CakeAddressesPlugin extends BasePlugin
{
class CakeAddressesPlugin extends BasePlugin {
/**
* Load all the plugin configuration and bootstrap logic.
*
@@ -24,8 +24,7 @@ class CakeAddressesPlugin extends BasePlugin
* @param \Cake\Core\PluginApplicationInterface $app The host application
* @return void
*/
public function bootstrap(PluginApplicationInterface $app): void
{
public function bootstrap(PluginApplicationInterface $app): void {
}
/**
@@ -37,8 +36,7 @@ class CakeAddressesPlugin extends BasePlugin
* @param \Cake\Routing\RouteBuilder $routes The route builder to update.
* @return void
*/
public function routes(RouteBuilder $routes): void
{
public function routes(RouteBuilder $routes): void {
$routes->plugin(
'CakeAddresses',
['path' => '/cake-addresses'],
@@ -46,7 +44,7 @@ class CakeAddressesPlugin extends BasePlugin
// Add custom routes here
$builder->fallbacks();
}
},
);
parent::routes($routes);
}
@@ -57,8 +55,7 @@ class CakeAddressesPlugin extends BasePlugin
* @param \Cake\Http\MiddlewareQueue $middlewareQueue The middleware queue to update.
* @return \Cake\Http\MiddlewareQueue
*/
public function middleware(MiddlewareQueue $middlewareQueue): MiddlewareQueue
{
public function middleware(MiddlewareQueue $middlewareQueue): MiddlewareQueue {
// Add your middlewares here
return $middlewareQueue;
@@ -70,8 +67,7 @@ class CakeAddressesPlugin extends BasePlugin
* @param \Cake\Console\CommandCollection $commands The command collection to update.
* @return \Cake\Console\CommandCollection
*/
public function console(CommandCollection $commands): CommandCollection
{
public function console(CommandCollection $commands): CommandCollection {
// Add your commands here
$commands = parent::console($commands);
@@ -82,12 +78,12 @@ class CakeAddressesPlugin extends BasePlugin
/**
* Register application container services.
*
* @link https://book.cakephp.org/4/en/development/dependency-injection.html#dependency-injection
* @param \Cake\Core\ContainerInterface $container The Container to update.
* @return void
* @link https://book.cakephp.org/4/en/development/dependency-injection.html#dependency-injection
*/
public function services(ContainerInterface $container): void
{
public function services(ContainerInterface $container): void {
// Add your services here
}
}

View File

@@ -3,23 +3,19 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use Cake\Log\Log;
use CakeAddresses\Controller\AppController;
/**
* Addresses Controller
*
* @property \CakeAddresses\Model\Table\AddressesTable $Addresses
*/
class AddressesController extends AppController
{
class AddressesController extends AppController {
/**
* Index method
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
public function index() {
$query = $this->Addresses->find()
->contain(['Cities', 'States', 'Countries']);
$addresses = $this->paginate($query);
@@ -31,11 +27,10 @@ class AddressesController extends AppController
* View method
*
* @param string|null $id Address id.
* @return \Cake\Http\Response|null|void Renders view
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view
*/
public function view($id = null)
{
public function view($id = null) {
$address = $this->Addresses->get($id, contain: ['Cities', 'States', 'Countries']);
$this->set(compact('address'));
}
@@ -45,8 +40,7 @@ class AddressesController extends AppController
*
* @return \Cake\Http\Response|null|void Redirects on successful add, renders view otherwise.
*/
public function add()
{
public function add() {
$address = $this->Addresses->newEmptyEntity();
if ($this->request->is('post')) {
$data = $this->request->getData();
@@ -66,11 +60,10 @@ class AddressesController extends AppController
* Edit method
*
* @param string|null $id Address id.
* @return \Cake\Http\Response|null|void Redirects on successful edit, renders view otherwise.
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Redirects on successful edit, renders view otherwise.
*/
public function edit($id = null)
{
public function edit($id = null) {
$address = $this->Addresses->get($id, contain: []);
if ($this->request->is(['patch', 'post', 'put'])) {
$address = $this->Addresses->patchEntity($address, $this->request->getData());
@@ -90,11 +83,10 @@ class AddressesController extends AppController
* Delete method
*
* @param string|null $id Address id.
* @return \Cake\Http\Response|null Redirects to index.
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null Redirects to index.
*/
public function delete($id = null)
{
public function delete($id = null) {
$this->request->allowMethod(['post', 'delete']);
$address = $this->Addresses->get($id);
if ($this->Addresses->delete($address)) {
@@ -105,4 +97,5 @@ class AddressesController extends AppController
return $this->redirect(['action' => 'index']);
}
}

View File

@@ -5,6 +5,5 @@ namespace CakeAddresses\Controller;
use App\Controller\AppController as BaseController;
class AppController extends BaseController
{
class AppController extends BaseController {
}

View File

@@ -3,20 +3,17 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use CakeAddresses\Controller\AppController;
/**
* Cities Controller
*
* @property \CakeAddresses\Model\Table\CitiesTable $Cities
*/
class CitiesController extends AppController
{
class CitiesController extends AppController {
/**
* @return \Cake\Http\Response|null|void Renders view
*/
public function select()
{
public function select() {
$query = $this->Cities
// ->find('search', $this->request->getQueryParams())
->find('list')
@@ -25,4 +22,5 @@ class CitiesController extends AppController
$this->set(compact('cities'));
}
}

View File

@@ -3,22 +3,19 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use CakeAddresses\Controller\AppController;
/**
* Countries Controller
*
* @property \CakeAddresses\Model\Table\CountriesTable $Countries
*/
class CountriesController extends AppController
{
class CountriesController extends AppController {
/**
* Index method
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
public function index() {
$query = $this->Countries->find()
->contain(['Regions', 'Subregions']);
$countries = $this->paginate($query);
@@ -30,12 +27,12 @@ class CountriesController extends AppController
* View method
*
* @param string|null $id Country id.
* @return \Cake\Http\Response|null|void Renders view
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view
*/
public function view($id = null)
{
public function view($id = null) {
$country = $this->Countries->get($id, contain: ['Regions', 'Subregions', 'States']);
$this->set(compact('country'));
}
}

View File

@@ -3,22 +3,19 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use CakeAddresses\Controller\AppController;
/**
* Regions Controller
*
* @property \CakeAddresses\Model\Table\RegionsTable $Regions
*/
class RegionsController extends AppController
{
class RegionsController extends AppController {
/**
* Index method
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
public function index() {
$query = $this->Regions->find();
$regions = $this->paginate($query);
@@ -29,12 +26,12 @@ class RegionsController extends AppController
* View method
*
* @param string|null $id Region id.
* @return \Cake\Http\Response|null|void Renders view
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view
*/
public function view($id = null)
{
public function view($id = null) {
$region = $this->Regions->get($id, contain: ['Countries', 'Subregions']);
$this->set(compact('region'));
}
}

View File

@@ -3,22 +3,19 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use CakeAddresses\Controller\AppController;
use Cake\Log\Log;
/**
* States Controller
*
* @property \CakeAddresses\Model\Table\StatesTable $States
*/
class StatesController extends AppController
{
class StatesController extends AppController {
/**
* Index method
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
public function index() {
$query = $this->States->find()
->contain(['Countries']);
$states = $this->paginate($query);
@@ -30,11 +27,10 @@ class StatesController extends AppController
* View method
*
* @param string|null $id State id.
* @return \Cake\Http\Response|null|void Renders view
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view
*/
public function view($id = null)
{
public function view($id = null) {
$state = $this->States->get($id, contain: ['Countries', 'Addresses', 'Cities']);
$this->set(compact('state'));
}
@@ -42,8 +38,7 @@ class StatesController extends AppController
/**
* @return \Cake\Http\Response|null|void Renders view
*/
public function select()
{
public function select() {
$states = $this->States
->find('list')
->where(['country_id' => $this->request->getQuery('country_id', -1)])
@@ -52,4 +47,5 @@ class StatesController extends AppController
$this->set(compact('states'));
}
}

View File

@@ -3,22 +3,19 @@ declare(strict_types=1);
namespace CakeAddresses\Controller;
use CakeAddresses\Controller\AppController;
/**
* Subregions Controller
*
* @property \CakeAddresses\Model\Table\SubregionsTable $Subregions
*/
class SubregionsController extends AppController
{
class SubregionsController extends AppController {
/**
* Index method
*
* @return \Cake\Http\Response|null|void Renders view
*/
public function index()
{
public function index() {
$query = $this->Subregions->find()
->contain(['Regions']);
$subregions = $this->paginate($query);
@@ -30,12 +27,12 @@ class SubregionsController extends AppController
* View method
*
* @param string|null $id Subregion id.
* @return \Cake\Http\Response|null|void Renders view
* @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view
*/
public function view($id = null)
{
public function view($id = null) {
$subregion = $this->Subregions->get($id, contain: ['Regions', 'Countries']);
$this->set(compact('subregion'));
}
}

View File

@@ -27,8 +27,8 @@ use Cake\ORM\Entity;
* @property State $state
* @property Country $country
*/
class Address extends Entity
{
class Address extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -56,4 +56,5 @@ class Address extends Entity
'foreign_key' => true,
'model' => true,
];
}

View File

@@ -25,8 +25,8 @@ use Cake\ORM\Entity;
* @property \CakeAddresses\Model\Entity\Country $country
* @property \CakeAddresses\Model\Entity\Address[] $addresses
*/
class City extends Entity
{
class City extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -52,4 +52,5 @@ class City extends Entity
'country' => true,
'addresses' => true,
];
}

View File

@@ -40,8 +40,8 @@ use Cake\ORM\Entity;
* @property \CakeAddresses\Model\Entity\City[] $cities
* @property \CakeAddresses\Model\Entity\State[] $states
*/
class Country extends Entity
{
class Country extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -82,4 +82,5 @@ class Country extends Entity
'cities' => true,
'states' => true,
];
}

View File

@@ -19,8 +19,8 @@ use Cake\ORM\Entity;
* @property \CakeAddresses\Model\Entity\Country[] $countries
* @property \CakeAddresses\Model\Entity\Subregion[] $subregions
*/
class Region extends Entity
{
class Region extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -40,4 +40,5 @@ class Region extends Entity
'countries' => true,
'subregions' => true,
];
}

View File

@@ -26,8 +26,8 @@ use Cake\ORM\Entity;
* @property \CakeAddresses\Model\Entity\Address[] $addresses
* @property \CakeAddresses\Model\Entity\City[] $cities
*/
class State extends Entity
{
class State extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -54,4 +54,5 @@ class State extends Entity
'addresses' => true,
'cities' => true,
];
}

View File

@@ -20,8 +20,8 @@ use Cake\ORM\Entity;
* @property \CakeAddresses\Model\Entity\Region $region
* @property \CakeAddresses\Model\Entity\Country[] $countries
*/
class Subregion extends Entity
{
class Subregion extends Entity {
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
@@ -42,4 +42,5 @@ class Subregion extends Entity
'region' => true,
'countries' => true,
];
}

View File

@@ -4,51 +4,41 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use ArrayObject;
use Cake\Datasource\EntityInterface;
use Cake\Datasource\ResultSetInterface;
use Cake\Event\EventInterface;
use Cake\Log\Log;
use Cake\ORM\Association\BelongsTo;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
use CakeAddresses\Model\Entity\Address;
use CakeAddresses\Model\Entity\State;
use Closure;
use Psr\SimpleCache\CacheInterface;
/**
* Addresses Model
*
* @property CitiesTable&BelongsTo $Cities
* @property StatesTable&BelongsTo $States
* @property CountriesTable&BelongsTo $Countries
* @property CitiesTable&\Cake\ORM\Association\BelongsTo $Cities
* @property StatesTable&\Cake\ORM\Association\BelongsTo $States
* @property CountriesTable&\Cake\ORM\Association\BelongsTo $Countries
*
* @method Address newEmptyEntity()
* @method Address newEntity(array $data, array $options = [])
* @method array<Address> newEntities(array $data, array $options = [])
* @method Address get(mixed $primaryKey, array|string $finder = 'all', CacheInterface|string|null $cache = null, Closure|string|null $cacheKey = null, mixed ...$args)
* @method Address findOrCreate($search, ?callable $callback = null, array $options = [])
* @method Address patchEntity(EntityInterface $entity, array $data, array $options = [])
* @method array<Address> patchEntities(iterable $entities, array $data, array $options = [])
* @method Address|false save(EntityInterface $entity, array $options = [])
* @method Address saveOrFail(EntityInterface $entity, array $options = [])
* @method iterable<Address>|ResultSetInterface<Address>|false saveMany(iterable $entities, array $options = [])
* @method iterable<Address>|ResultSetInterface<Address> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<Address>|ResultSetInterface<Address>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<Address>|ResultSetInterface<Address> deleteManyOrFail(iterable $entities, array $options = [])
* @method \CakeAddresses\Model\Entity\Address newEmptyEntity()
* @method \CakeAddresses\Model\Entity\Address newEntity()
* @method array<\CakeAddresses\Model\Entity\Address> newEntities(array $data, array $options = [])
* @method \CakeAddresses\Model\Entity\Address|\Cake\Datasource\EntityInterface get(mixed $primaryKey, array|string $finder = 'all', \Psr\SimpleCache\CacheInterface|string|null $cache = null, \Closure|string|null $cacheKey = null, mixed ...$args)
* @method \CakeAddresses\Model\Entity\Address|\Cake\Datasource\EntityInterface findOrCreate()
* @method \CakeAddresses\Model\Entity\Address patchEntity(\CakeAddresses\Model\Entity\Address|\Cake\Datasource\EntityInterface $address, array $data, array $options = [])
* @method array<\CakeAddresses\Model\Entity\Address> patchEntities(iterable $entities, array $data, array $options = [])
* @method \CakeAddresses\Model\Entity\Address|false save(\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeAddresses\Model\Entity\Address saveOrFail()
* @method iterable<\CakeAddresses\Model\Entity\Address>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Address>|false saveMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Address>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Address> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Address>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Address>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Address>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Address> deleteManyOrFail(iterable $entities, array $options = [])
*/
class AddressesTable extends Table
{
class AddressesTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('addresses');
@@ -75,11 +65,10 @@ class AddressesTable extends Table
/**
* Default validation rules.
*
* @param Validator $validator Validator instance.
* @return Validator
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('address_name')
->maxLength('address_name', 255)
@@ -167,11 +156,10 @@ class AddressesTable extends Table
* Returns a rules checker object that will be used for validating
* application integrity.
*
* @param RulesChecker $rules The rules object to be modified.
* @return RulesChecker
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
public function buildRules(RulesChecker $rules): RulesChecker {
$rules->add($rules->existsIn('city_id', 'Cities'), ['errorField' => 'city_id']);
$rules->add($rules->existsIn('state_id', 'States'), ['errorField' => 'state_id']);
$rules->add($rules->existsIn('country_id', 'Countries'), ['errorField' => 'country_id']);
@@ -180,14 +168,13 @@ class AddressesTable extends Table
}
/**
* @param EventInterface $event
* @param ArrayObject $data
* @param ArrayObject $options
* @param \Cake\Event\EventInterface $event
* @param \ArrayObject $data
* @param \ArrayObject $options
*
* @return void
*/
public function beforeMarshal(EventInterface $event, ArrayObject $data, ArrayObject $options): void
{
public function beforeMarshal(EventInterface $event, ArrayObject $data, ArrayObject $options): void {
if ($data['state_id'] && !isset($data['state'])) {
$state = $this->States->find()->where(['id' => $data['state_id']])->first();
$data['state'] = $state->name ?? null;
@@ -197,4 +184,5 @@ class AddressesTable extends Table
$data['country'] = $country->name ?? null;
}
}
}

View File

@@ -3,7 +3,6 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
@@ -29,16 +28,15 @@ use Cake\Validation\Validator;
* @method iterable<\CakeAddresses\Model\Entity\City>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\City>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\City>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\City> deleteManyOrFail(iterable $entities, array $options = [])
*/
class CitiesTable extends Table
{
class CitiesTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('cities');
@@ -67,8 +65,7 @@ class CitiesTable extends Table
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('name')
->maxLength('name', 255)
@@ -132,11 +129,11 @@ class CitiesTable extends Table
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
public function buildRules(RulesChecker $rules): RulesChecker {
$rules->add($rules->existsIn('state_id', 'States'), ['errorField' => 'state_id']);
$rules->add($rules->existsIn('country_id', 'Countries'), ['errorField' => 'country_id']);
return $rules;
}
}

View File

@@ -3,7 +3,6 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
@@ -31,16 +30,15 @@ use Cake\Validation\Validator;
* @method iterable<\CakeAddresses\Model\Entity\Country>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Country>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Country>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Country> deleteManyOrFail(iterable $entities, array $options = [])
*/
class CountriesTable extends Table
{
class CountriesTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('countries');
@@ -77,8 +75,7 @@ class CountriesTable extends Table
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('name')
->maxLength('name', 100)
@@ -211,11 +208,11 @@ class CountriesTable extends Table
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
public function buildRules(RulesChecker $rules): RulesChecker {
$rules->add($rules->existsIn('region_id', 'Regions'), ['errorField' => 'region_id']);
$rules->add($rules->existsIn('subregion_id', 'Subregions'), ['errorField' => 'subregion_id']);
return $rules;
}
}

View File

@@ -3,8 +3,6 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
@@ -28,16 +26,15 @@ use Cake\Validation\Validator;
* @method iterable<\CakeAddresses\Model\Entity\Region>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Region>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Region>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Region> deleteManyOrFail(iterable $entities, array $options = [])
*/
class RegionsTable extends Table
{
class RegionsTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('regions');
@@ -60,8 +57,7 @@ class RegionsTable extends Table
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('name')
->maxLength('name', 100)
@@ -91,4 +87,5 @@ class RegionsTable extends Table
return $validator;
}
}

View File

@@ -3,7 +3,6 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
@@ -29,16 +28,15 @@ use Cake\Validation\Validator;
* @method iterable<\CakeAddresses\Model\Entity\State>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\State>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\State>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\State> deleteManyOrFail(iterable $entities, array $options = [])
*/
class StatesTable extends Table
{
class StatesTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('states');
@@ -66,8 +64,7 @@ class StatesTable extends Table
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('name')
->maxLength('name', 255)
@@ -134,10 +131,10 @@ class StatesTable extends Table
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
public function buildRules(RulesChecker $rules): RulesChecker {
$rules->add($rules->existsIn('country_id', 'Countries'), ['errorField' => 'country_id']);
return $rules;
}
}

View File

@@ -3,7 +3,6 @@ declare(strict_types=1);
namespace CakeAddresses\Model\Table;
use Cake\ORM\Query\SelectQuery;
use Cake\ORM\RulesChecker;
use Cake\ORM\Table;
use Cake\Validation\Validator;
@@ -28,16 +27,15 @@ use Cake\Validation\Validator;
* @method iterable<\CakeAddresses\Model\Entity\Subregion>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Subregion>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\CakeAddresses\Model\Entity\Subregion>|\Cake\Datasource\ResultSetInterface<\CakeAddresses\Model\Entity\Subregion> deleteManyOrFail(iterable $entities, array $options = [])
*/
class SubregionsTable extends Table
{
class SubregionsTable extends Table {
/**
* Initialize method
*
* @param array<string, mixed> $config The configuration for the Table.
* @return void
*/
public function initialize(array $config): void
{
public function initialize(array $config): void {
parent::initialize($config);
$this->setTable('subregions');
@@ -61,8 +59,7 @@ class SubregionsTable extends Table
* @param \Cake\Validation\Validator $validator Validator instance.
* @return \Cake\Validation\Validator
*/
public function validationDefault(Validator $validator): Validator
{
public function validationDefault(Validator $validator): Validator {
$validator
->scalar('name')
->maxLength('name', 100)
@@ -104,10 +101,10 @@ class SubregionsTable extends Table
* @param \Cake\ORM\RulesChecker $rules The rules object to be modified.
* @return \Cake\ORM\RulesChecker
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
public function buildRules(RulesChecker $rules): RulesChecker {
$rules->add($rules->existsIn('region_id', 'Regions'), ['errorField' => 'region_id']);
return $rules;
}
}

View File

@@ -8,15 +8,14 @@ use Cake\TestSuite\Fixture\TestFixture;
/**
* AddressesFixture
*/
class AddressesFixture extends TestFixture
{
class AddressesFixture extends TestFixture {
/**
* Init method
*
* @return void
*/
public function init(): void
{
public function init(): void {
$this->records = [
[
'id' => 1,
@@ -40,4 +39,5 @@ class AddressesFixture extends TestFixture
];
parent::init();
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -10,15 +10,14 @@ use ReflectionClass;
/**
* CountriesFixture
*/
class CountriesFixture extends TestFixture
{
class CountriesFixture extends TestFixture {
/**
* Init method
*
* @return void
*/
public function init(): void
{
public function init(): void {
$this->records = [
[
'id' => 25,
@@ -341,4 +340,5 @@ class CountriesFixture extends TestFixture
];
parent::init();
}
}

View File

@@ -8,15 +8,14 @@ use Cake\TestSuite\Fixture\TestFixture;
/**
* RegionsFixture
*/
class RegionsFixture extends TestFixture
{
class RegionsFixture extends TestFixture {
/**
* Init method
*
* @return void
*/
public function init(): void
{
public function init(): void {
$this->records = [
[
'id' => 1,
@@ -81,4 +80,5 @@ class RegionsFixture extends TestFixture
];
parent::init();
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -8,15 +8,14 @@ use Cake\TestSuite\Fixture\TestFixture;
/**
* SubregionsFixture
*/
class SubregionsFixture extends TestFixture
{
class SubregionsFixture extends TestFixture {
/**
* Init method
*
* @return void
*/
public function init(): void
{
public function init(): void {
$this->records = [
[
'id' => 1,
@@ -241,4 +240,5 @@ class SubregionsFixture extends TestFixture
];
parent::init();
}
}

View File

@@ -3,17 +3,13 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use CakeAddresses\Controller\AddressesController;
use CakeAddresses\Model\Table\AddressesTable;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\AddressesController Test Case
*
* @uses \CakeAddresses\Controller\AddressesController
*/
class AddressesControllerTest extends BaseControllerTest
{
class AddressesControllerTest extends BaseControllerTest {
/**
* Addresses Table
*
@@ -40,8 +36,7 @@ class AddressesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->Addresses = $this->getTableLocator()->get('CakeAddresses.Addresses');
// $this->enableCsrfToken();
@@ -52,8 +47,7 @@ class AddressesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Addresses);
parent::tearDown();
@@ -65,12 +59,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests the index action with an unauthenticated user (not logged in)
*
* @uses \CakeAddresses\Controller\AddressesController::index()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testIndexGet(): void
{
public function testIndexGet(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'Addresses',
@@ -86,12 +79,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests the view action with an unauthenticated user (not logged in)
*
* @uses \CakeAddresses\Controller\AddressesController::view()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testViewGet(): void
{
public function testViewGet(): void {
$id = 1;
$url = [
'plugin' => 'CakeAddresses',
@@ -109,12 +101,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests the add action with an unauthenticated user (not logged in)
*
* @uses \CakeAddresses\Controller\AddressesController::add()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testAddGet(): void
{
public function testAddGet(): void {
$cntBefore = $this->Addresses->find()->count();
$url = [
'plugin' => 'CakeAddresses',
@@ -134,12 +125,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests a POST request to the add action with a logged in user
*
* @uses \CakeAddresses\Controller\AddressesController::add()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testAddPostSuccess(): void
{
public function testAddPostSuccess(): void {
$cntBefore = $this->Addresses->find()->count();
$this->loginUserByRole();
@@ -176,12 +166,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests a POST request to the add action with a logged in user
*
* @uses \CakeAddresses\Controller\AddressesController::add()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testAddPostFailure(): void
{
public function testAddPostFailure(): void {
$cntBefore = $this->Addresses->find()->count();
$this->loginUserByRole();
@@ -217,12 +206,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests the edit action with an unauthenticated user (not logged in)
*
* @uses \CakeAddresses\Controller\AddressesController::edit()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testEditGet(): void
{
public function testEditGet(): void {
$id = 1;
$url = [
'plugin' => 'CakeAddresses',
@@ -240,12 +228,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests a PUT request to the edit action with a logged in user
*
* @uses \CakeAddresses\Controller\AddressesController::edit()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testEditPutSuccess(): void
{
public function testEditPutSuccess(): void {
$this->loginUserByRole();
$id = 1;
$before = $this->Addresses->get($id);
@@ -285,12 +272,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests a PUT request to the edit action with a logged in user
*
* @uses \CakeAddresses\Controller\AddressesController::edit()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testEditPutFailure(): void
{
public function testEditPutFailure(): void {
$id = 1;
$before = $this->Addresses->get($id);
$url = [
@@ -326,12 +312,11 @@ class AddressesControllerTest extends BaseControllerTest
* Tests the delete action with an unauthenticated user (not logged in)
*
* @uses \CakeAddresses\Controller\AddressesController::delete()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testDelete(): void
{
public function testDelete(): void {
$cntBefore = $this->Addresses->find()->count();
$url = [
@@ -346,4 +331,5 @@ class AddressesControllerTest extends BaseControllerTest
$cntAfter = $this->Addresses->find()->count();
$this->assertEquals($cntBefore - 1, $cntAfter);
}
}

View File

@@ -5,12 +5,15 @@ namespace CakeAddresses\Test\TestCase\Controller;
use Cake\TestSuite\IntegrationTestTrait;
use Cake\TestSuite\TestCase;
class BaseControllerTest extends TestCase
{
class BaseControllerTest extends TestCase {
use IntegrationTestTrait;
public function loginUserByRole(string $role = 'admin'): void
{
/**
* @param string $role - role name - makes testing different roles easier
* @return void
*/
public function loginUserByRole(string $role = 'admin'): void {
$this->session(['Auth.User.id' => 1]);
$this->session(['Auth.id' => 1]);
}
@@ -18,8 +21,8 @@ class BaseControllerTest extends TestCase
/**
* @return void
*/
public function testTest()
{
public function testTest() {
$this->assertEquals(1, 1);
}
}

View File

@@ -3,16 +3,13 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use CakeAddresses\Controller\CitiesController;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\CitiesController Test Case
*
* @uses \CakeAddresses\Controller\CitiesController
*/
class CitiesControllerTest extends BaseControllerTest
{
class CitiesControllerTest extends BaseControllerTest {
/**
* Cities Table
*
@@ -38,8 +35,7 @@ class CitiesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->Cities = $this->getTableLocator()->get('CakeAddresses.Cities');
}
@@ -49,8 +45,7 @@ class CitiesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Cities);
parent::tearDown();
@@ -62,12 +57,11 @@ class CitiesControllerTest extends BaseControllerTest
* Tests the select action with a logged in user
*
* @uses \CakeAddresses\Controller\CitiesController::select()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testSelect(): void
{
public function testSelect(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'Cities',
@@ -76,4 +70,5 @@ class CitiesControllerTest extends BaseControllerTest
$this->get($url);
$this->assertResponseCode(200);
}
}

View File

@@ -3,16 +3,13 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use CakeAddresses\Controller\CountriesController;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\CountriesController Test Case
*
* @uses \CakeAddresses\Controller\CountriesController
*/
class CountriesControllerTest extends BaseControllerTest
{
class CountriesControllerTest extends BaseControllerTest {
/**
* AnsibleGroups Table
*
@@ -38,8 +35,7 @@ class CountriesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->Countries = $this->getTableLocator()->get('CakeAddresses.Countries');
}
@@ -49,8 +45,7 @@ class CountriesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Countries);
parent::tearDown();
@@ -62,12 +57,11 @@ class CountriesControllerTest extends BaseControllerTest
* Tests the index action with a logged in user
*
* @uses \CakeAddresses\Controller\CountriesController::index()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testIndexGet(): void
{
public function testIndexGet(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'Countries',
@@ -83,12 +77,11 @@ class CountriesControllerTest extends BaseControllerTest
* Tests the view action with a logged in user
*
* @uses \CakeAddresses\Controller\CountriesController::view()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testViewGet(): void
{
public function testViewGet(): void {
$id = 233;
$url = [
'plugin' => 'CakeAddresses',
@@ -99,4 +92,5 @@ class CountriesControllerTest extends BaseControllerTest
$this->get($url);
$this->assertResponseCode(200);
}
}

View File

@@ -3,18 +3,13 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use Cake\TestSuite\IntegrationTestTrait;
use Cake\TestSuite\TestCase;
use CakeAddresses\Controller\RegionsController;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\RegionsController Test Case
*
* @uses \CakeAddresses\Controller\RegionsController
*/
class RegionsControllerTest extends BaseControllerTest
{
class RegionsControllerTest extends BaseControllerTest {
/**
* Regions Table
*
@@ -40,8 +35,7 @@ class RegionsControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->Regions = $this->getTableLocator()->get('CakeAddresses.Regions');
}
@@ -51,8 +45,7 @@ class RegionsControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Regions);
parent::tearDown();
@@ -64,12 +57,11 @@ class RegionsControllerTest extends BaseControllerTest
* Tests the index action with a logged in user
*
* @uses \CakeAddresses\Controller\RegionsController::index()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testIndexGet(): void
{
public function testIndexGet(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'Regions',
@@ -85,12 +77,11 @@ class RegionsControllerTest extends BaseControllerTest
* Tests the view action with a logged in user
*
* @uses \CakeAddresses\Controller\RegionsController::view()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testViewGet(): void
{
public function testViewGet(): void {
$id = 1;
$url = [
@@ -102,4 +93,5 @@ class RegionsControllerTest extends BaseControllerTest
$this->get($url);
$this->assertResponseCode(200);
}
}

View File

@@ -3,22 +3,20 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use CakeAddresses\Controller\StatesController;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\StatesController Test Case
*
* @uses \CakeAddresses\Controller\StatesController
*/
class StatesControllerTest extends BaseControllerTest
{
class StatesControllerTest extends BaseControllerTest {
/**
* States Table
*
* @var \CakeAddresses\Model\Table\StatesTable
*/
protected $States;
/**
* Fixtures
*
@@ -37,8 +35,7 @@ class StatesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->States = $this->getTableLocator()->get('CakeAddresses.States');
}
@@ -48,8 +45,7 @@ class StatesControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->States);
parent::tearDown();
@@ -61,12 +57,11 @@ class StatesControllerTest extends BaseControllerTest
* Tests the index action with a logged in user
*
* @uses \CakeAddresses\Controller\StatesController::index()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testIndexGet(): void
{
public function testIndexGet(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'States',
@@ -82,12 +77,11 @@ class StatesControllerTest extends BaseControllerTest
* Tests the view action with a logged in user
*
* @uses \CakeAddresses\Controller\StatesController::view()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testViewGet(): void
{
public function testViewGet(): void {
$id = 1462;
$url = [
'plugin' => 'CakeAddresses',
@@ -98,4 +92,5 @@ class StatesControllerTest extends BaseControllerTest
$this->get($url);
$this->assertResponseCode(200);
}
}

View File

@@ -3,18 +3,13 @@ declare(strict_types=1);
namespace CakeAddresses\Test\TestCase\Controller;
use Cake\TestSuite\IntegrationTestTrait;
use Cake\TestSuite\TestCase;
use CakeAddresses\Controller\SubregionsController;
use PHPUnit\Exception;
/**
* CakeAddresses\Controller\SubregionsController Test Case
*
* @uses \CakeAddresses\Controller\SubregionsController
*/
class SubregionsControllerTest extends BaseControllerTest
{
class SubregionsControllerTest extends BaseControllerTest {
/**
* Subregions Table
*
@@ -40,8 +35,7 @@ class SubregionsControllerTest extends BaseControllerTest
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$this->Subregions = $this->getTableLocator()->get('CakeAddresses.Subregions');
$this->enableCsrfToken();
@@ -52,8 +46,7 @@ class SubregionsControllerTest extends BaseControllerTest
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Subregions);
parent::tearDown();
@@ -65,12 +58,11 @@ class SubregionsControllerTest extends BaseControllerTest
* Tests the index action with a logged in user
*
* @uses \CakeAddresses\Controller\SubregionsController::index()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testIndexGet(): void
{
public function testIndexGet(): void {
$url = [
'plugin' => 'CakeAddresses',
'controller' => 'Subregions',
@@ -86,12 +78,11 @@ class SubregionsControllerTest extends BaseControllerTest
* Tests the view action with a logged in user
*
* @uses \CakeAddresses\Controller\SubregionsController::view()
* @throws Exception
* @throws \PHPUnit\Exception
*
* @return void
*/
public function testViewGet(): void
{
public function testViewGet(): void {
$id = 1;
$url = [
@@ -103,4 +94,5 @@ class SubregionsControllerTest extends BaseControllerTest
$this->get($url);
$this->assertResponseCode(200);
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\AddressesTable;
/**
* CakeAddresses\Model\Table\AddressesTable Test Case
*/
class AddressesTableTest extends TestCase
{
class AddressesTableTest extends TestCase {
/**
* Test subject
*
@@ -35,8 +35,7 @@ class AddressesTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('Addresses') ? [] : ['className' => AddressesTable::class];
$this->Addresses = $this->getTableLocator()->get('Addresses', $config);
@@ -45,11 +44,10 @@ class AddressesTableTest extends TestCase
/**
* TestInitialize method
*
* @return void
* @uses \CakeAddresses\Model\Table\AddressesTable::initialize()
* @return void
*/
public function testInitialize(): void
{
public function testInitialize(): void {
// verify all associations loaded
$expectedAssociations = [
'Cities',
@@ -64,8 +62,7 @@ class AddressesTableTest extends TestCase
}
// verify all behaviors loaded
$expectedBehaviors = [
];
$expectedBehaviors = [];
$behaviors = $this->Addresses->behaviors();
$this->assertCount(count($expectedBehaviors), $behaviors);
@@ -74,14 +71,12 @@ class AddressesTableTest extends TestCase
}
}
/**
* tearDown method
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Addresses);
parent::tearDown();
@@ -90,22 +85,21 @@ class AddressesTableTest extends TestCase
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\AddressesTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
/**
* Test buildRules method
*
* @return void
* @uses \CakeAddresses\Model\Table\AddressesTable::buildRules()
* @return void
*/
public function testBuildRules(): void
{
public function testBuildRules(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\CitiesTable;
/**
* CakeAddresses\Model\Table\CitiesTable Test Case
*/
class CitiesTableTest extends TestCase
{
class CitiesTableTest extends TestCase {
/**
* Test subject
*
@@ -35,8 +35,7 @@ class CitiesTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('Cities') ? [] : ['className' => CitiesTable::class];
$this->Cities = $this->getTableLocator()->get('Cities', $config);
@@ -47,8 +46,7 @@ class CitiesTableTest extends TestCase
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Cities);
parent::tearDown();
@@ -57,11 +55,10 @@ class CitiesTableTest extends TestCase
/**
* TestInitialize method
*
* @return void
* @uses \CakeAddresses\Model\Table\CitiesTable::initialize()
* @return void
*/
public function testInitialize(): void
{
public function testInitialize(): void {
// verify all associations loaded
$expectedAssociations = [
'States',
@@ -76,8 +73,7 @@ class CitiesTableTest extends TestCase
}
// verify all behaviors loaded
$expectedBehaviors = [
];
$expectedBehaviors = [];
$behaviors = $this->Cities->behaviors();
$this->assertCount(count($expectedBehaviors), $behaviors);
@@ -86,26 +82,24 @@ class CitiesTableTest extends TestCase
}
}
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\CitiesTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
/**
* Test buildRules method
*
* @return void
* @uses \CakeAddresses\Model\Table\CitiesTable::buildRules()
* @return void
*/
public function testBuildRules(): void
{
public function testBuildRules(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\CountriesTable;
/**
* CakeAddresses\Model\Table\CountriesTable Test Case
*/
class CountriesTableTest extends TestCase
{
class CountriesTableTest extends TestCase {
/**
* Test subject
*
@@ -37,8 +37,7 @@ class CountriesTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('Countries') ? [] : ['className' => CountriesTable::class];
$this->Countries = $this->getTableLocator()->get('Countries', $config);
@@ -49,8 +48,7 @@ class CountriesTableTest extends TestCase
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Countries);
parent::tearDown();
@@ -59,22 +57,21 @@ class CountriesTableTest extends TestCase
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\CountriesTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
/**
* Test buildRules method
*
* @return void
* @uses \CakeAddresses\Model\Table\CountriesTable::buildRules()
* @return void
*/
public function testBuildRules(): void
{
public function testBuildRules(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\RegionsTable;
/**
* CakeAddresses\Model\Table\RegionsTable Test Case
*/
class RegionsTableTest extends TestCase
{
class RegionsTableTest extends TestCase {
/**
* Test subject
*
@@ -34,8 +34,7 @@ class RegionsTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('Regions') ? [] : ['className' => RegionsTable::class];
$this->Regions = $this->getTableLocator()->get('Regions', $config);
@@ -46,8 +45,7 @@ class RegionsTableTest extends TestCase
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Regions);
parent::tearDown();
@@ -56,11 +54,10 @@ class RegionsTableTest extends TestCase
/**
* TestInitialize method
*
* @return void
* @uses \CakeAddresses\Model\Table\RegionsTable::initialize()
* @return void
*/
public function testInitialize(): void
{
public function testInitialize(): void {
// verify all associations loaded
$expectedAssociations = [
'Countries',
@@ -87,11 +84,11 @@ class RegionsTableTest extends TestCase
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\RegionsTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\StatesTable;
/**
* CakeAddresses\Model\Table\StatesTable Test Case
*/
class StatesTableTest extends TestCase
{
class StatesTableTest extends TestCase {
/**
* Test subject
*
@@ -35,8 +35,7 @@ class StatesTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('States') ? [] : ['className' => StatesTable::class];
$this->States = $this->getTableLocator()->get('States', $config);
@@ -47,8 +46,7 @@ class StatesTableTest extends TestCase
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->States);
parent::tearDown();
@@ -57,22 +55,21 @@ class StatesTableTest extends TestCase
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\StatesTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
/**
* Test buildRules method
*
* @return void
* @uses \CakeAddresses\Model\Table\StatesTable::buildRules()
* @return void
*/
public function testBuildRules(): void
{
public function testBuildRules(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -9,8 +9,8 @@ use CakeAddresses\Model\Table\SubregionsTable;
/**
* CakeAddresses\Model\Table\SubregionsTable Test Case
*/
class SubregionsTableTest extends TestCase
{
class SubregionsTableTest extends TestCase {
/**
* Test subject
*
@@ -34,8 +34,7 @@ class SubregionsTableTest extends TestCase
*
* @return void
*/
protected function setUp(): void
{
protected function setUp(): void {
parent::setUp();
$config = $this->getTableLocator()->exists('Subregions') ? [] : ['className' => SubregionsTable::class];
$this->Subregions = $this->getTableLocator()->get('Subregions', $config);
@@ -46,8 +45,7 @@ class SubregionsTableTest extends TestCase
*
* @return void
*/
protected function tearDown(): void
{
protected function tearDown(): void {
unset($this->Subregions);
parent::tearDown();
@@ -56,22 +54,21 @@ class SubregionsTableTest extends TestCase
/**
* Test validationDefault method
*
* @return void
* @uses \CakeAddresses\Model\Table\SubregionsTable::validationDefault()
* @return void
*/
public function testValidationDefault(): void
{
public function testValidationDefault(): void {
$this->markTestIncomplete('Not implemented yet.');
}
/**
* Test buildRules method
*
* @return void
* @uses \CakeAddresses\Model\Table\SubregionsTable::buildRules()
* @return void
*/
public function testBuildRules(): void
{
public function testBuildRules(): void {
$this->markTestIncomplete('Not implemented yet.');
}
}

View File

@@ -7,7 +7,6 @@ use Cake\Core\Configure;
use Cake\Core\Plugin;
use Cake\Database\Connection;
use Cake\Datasource\ConnectionManager;
use Cake\TestSuite\Fixture\SchemaLoader;
use CakeAddresses\CakeAddressesPlugin;
use Migrations\TestSuite\Migrator;
use TestApp\Controller\AppController;

View File

@@ -1,4 +1,5 @@
<?php
/**
* Based entirely off of dereuromark's plugins as I was having trouble getting fixtures to load
* after moving the plugins outside of an existing cakephp app's plugins folder