From 1dac127e8677915731586c60d4b8af9d5ad205dc Mon Sep 17 00:00:00 2001 From: Jeremy Date: Wed, 15 Apr 2020 23:03:40 +0200 Subject: [PATCH 01/31] feat: add new test about scaffold --- .../Tools/Controllers/ScaffoldController.php | 1 - tests/_data/schemas/mysql/dump.sql | 12 ++++ tests/_data/schemas/postgresql/dump.sql | 20 ++++++ .../Web/Template/ScaffoldVoltCest.php | 69 +++++++++++++++---- 4 files changed, 87 insertions(+), 15 deletions(-) diff --git a/src/Web/Tools/Controllers/ScaffoldController.php b/src/Web/Tools/Controllers/ScaffoldController.php index 761165c54..5a2ebf4df 100644 --- a/src/Web/Tools/Controllers/ScaffoldController.php +++ b/src/Web/Tools/Controllers/ScaffoldController.php @@ -60,7 +60,6 @@ public function generateAction() 'templateEngine' => $this->request->getPost('templateEngine', 'string'), 'modelsNamespace' => $this->request->getPost('modelsNamespace', 'string'), ]; - $scaffoldBuilder = new Scaffold(array_merge($options, ['config' => $this->config->toArray()])); $scaffoldBuilder->build(); diff --git a/tests/_data/schemas/mysql/dump.sql b/tests/_data/schemas/mysql/dump.sql index e42a168fa..bea0c29af 100644 --- a/tests/_data/schemas/mysql/dump.sql +++ b/tests/_data/schemas/mysql/dump.sql @@ -109,3 +109,15 @@ CREATE TABLE genScaffold( dateofbirth date, PRIMARY KEY(id) ); + + +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Hedley","Reeves","U7B0Q","19-04-15"),("Lillian","Bright","B6O2I","19-04-17"),("Quin","Cherry","W2Q7K","19-04-15"),("Felix","Underwood","H9O8P","19-04-16"),("Kirestin","Finley","E5K6R","19-04-15"),("Brandon","West","A1L1Q","19-04-17"),("Plato","Vaughn","L2C3S","19-04-15"),("Kristen","Davenport","Q7S9K","19-04-15"),("Erasmus","Oneil","T7S0B","19-04-16"),("Steven","Kramer","I6G0M","19-04-15"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Damian","Houston","Y3U7T","19-04-16"),("Griffin","Beach","K1S6X","19-04-15"),("Kylie","Cohen","S3D2P","19-04-17"),("Wayne","Freeman","W5H9H","19-04-17"),("Charde","Lewis","L4B4B","19-04-17"),("Simone","Ratliff","M4I1N","19-04-17"),("Maggie","Guerrero","O4S3Z","19-04-17"),("Ferris","Fitzgerald","J1M0F","19-04-16"),("Yoshio","Reynolds","B6J9Y","19-04-17"),("Lacey","Austin","H3C8R","19-04-15"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Eugenia","Tyson","A6K1J","19-04-16"),("Slade","Farley","M7Y5K","19-04-16"),("Kylynn","Bolton","I7D5M","19-04-17"),("Patience","Ware","R1Y8S","19-04-17"),("Cooper","Bruce","R5Y2P","19-04-17"),("Justin","Harding","X9Q0H","19-04-16"),("Cleo","York","R4Z9A","19-04-17"),("Dante","Delacruz","L6H3S","19-04-17"),("Kylie","Oneal","C0U1Q","19-04-16"),("Macey","Salazar","L0Q8H","19-04-15"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Rosalyn","Chandler","M6B2H","19-04-15"),("Jorden","Pratt","Z8L6D","19-04-15"),("Kermit","Gaines","T7H1K","19-04-17"),("Kirsten","Grimes","B6N1L","19-04-15"),("Keegan","Wolfe","F2L4A","19-04-16"),("Kiara","Castaneda","D7P0D","19-04-17"),("Eleanor","Gomez","P4W3O","19-04-17"),("Abdul","Potter","T9P5Z","19-04-16"),("Denton","Mendoza","W0L1X","19-04-16"),("Omar","Morse","A2P8Q","19-04-17"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Martina","Mckinney","S0P7K","19-04-16"),("Hedley","Nguyen","L7U8O","19-04-15"),("Wanda","Dyer","T8Z1R","19-04-16"),("Olga","Witt","I0R6O","19-04-15"),("Leandra","Simmons","U6C4C","19-04-17"),("Lev","Cox","D8P2R","19-04-17"),("Maxine","Gilmore","E2D3R","19-04-15"),("Sean","Doyle","K1Z1M","19-04-17"),("Carl","Brady","M2K4X","19-04-15"),("Hilel","Huffman","N5W1L","19-04-17"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Ina","Mendoza","I0M8V","19-04-17"),("Uriah","Mccarthy","A0Z8A","19-04-15"),("Kay","Stevens","Q8J8G","19-04-15"),("Silas","Calhoun","Z8L4O","19-04-16"),("Nolan","Garrett","Z1G4A","19-04-17"),("Knox","Sosa","X0X3A","19-04-15"),("Calista","Barnes","D2R6H","19-04-17"),("Troy","Reed","K0P3L","19-04-17"),("Flynn","Fry","K1Z6P","19-04-17"),("Veda","Boone","B7P2C","19-04-17"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Madonna","Gilbert","U1T8G","19-04-17"),("Boris","Montgomery","V2L4R","19-04-16"),("Wing","Reese","U3L2S","19-04-15"),("Jackson","Bradford","J8C9Z","19-04-16"),("Jermaine","Mendez","Y2W5W","19-04-16"),("Astra","Chan","U0V6D","19-04-16"),("Kitra","Head","U2A3O","19-04-15"),("Honorato","Mullen","W3K6D","19-04-16"),("Brynn","Morse","O7K3B","19-04-17"),("Yolanda","Rivas","J2Z9L","19-04-16"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Cedric","Avery","L2P1G","19-04-15"),("Ann","Travis","K2B5E","19-04-17"),("Lee","Mathis","C0Z4A","19-04-17"),("Skyler","Cervantes","W9I3B","19-04-15"),("Hermione","Baird","C4V9Q","19-04-17"),("Helen","Clark","I3T9J","19-04-17"),("Maryam","Blackburn","S1I7Z","19-04-15"),("Rahim","Knapp","O2S7K","19-04-17"),("Gannon","Williamson","F9O2L","19-04-15"),("Stephen","Bradshaw","H9X5D","19-04-16"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Gil","Manning","Q3Z2R","19-04-16"),("Victoria","Alford","J4T7L","19-04-16"),("Calvin","Stout","R1H0I","19-04-17"),("Erica","Gregory","H2K1T","19-04-17"),("Finn","Maynard","I8K4T","19-04-17"),("Karina","Nichols","U1Y4I","19-04-17"),("Imogene","Soto","S6M7P","19-04-16"),("Juliet","Wilkins","P0X0K","19-04-15"),("Emma","Dejesus","L8P4G","19-04-16"),("Pearl","Henry","L9X3W","19-04-17"); +INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Lillith","Garcia","L1V1Q","19-04-16"),("Zenia","Figueroa","X6J6W","19-04-17"),("Ulla","Kidd","V5N4T","19-04-16"),("Maxwell","Solis","Q0J1Y","19-04-16"),("Erasmus","Raymond","F8Y3G","19-04-16"),("Caleb","Byrd","A5D6F","19-04-17"),("Philip","Carpenter","B1R0E","19-04-17"),("Lisandra","Wilcox","N2Z7T","19-04-15"),("Joseph","Bush","N4Z8R","19-04-15"),("Kaitlin","Ferrell","J0G8Q","19-04-17"); diff --git a/tests/_data/schemas/postgresql/dump.sql b/tests/_data/schemas/postgresql/dump.sql index 8980a7f57..1577d349a 100644 --- a/tests/_data/schemas/postgresql/dump.sql +++ b/tests/_data/schemas/postgresql/dump.sql @@ -88,3 +88,23 @@ CREATE TABLE test_migrations ( active smallint NOT NULL, PRIMARY KEY (id) ); + + +CREATE TABLE "genScaffold" ( + id SERIAL PRIMARY KEY, + firstname varchar(255) default NULL, + surname varchar(255) default NULL, + membertype varchar(255), + dateofbirth varchar(255) +); + +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Geoffrey','Horne','A4X9V','19-04-16'),('Vielka','Vaughan','Q0N0T','19-04-15'),('Amery','Armstrong','T0Y1D','19-04-16'),('Malcolm','Rosario','E7D7H','19-04-16'),('Tanya','Stafford','P6X1A','19-04-17'),('Mannix','Jackson','G8Q8I','19-04-16'),('Uriah','Jensen','E6R4U','19-04-17'),('Keely','Mercado','S8T7U','19-04-17'),('Stone','Flores','S3S1E','19-04-17'),('Karly','Clarke','T9F9W','19-04-16'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('August','Gallegos','F8V3Z','19-04-15'),('Pascale','Mccullough','I0Q1U','19-04-15'),('Isabella','Talley','W5E3G','19-04-17'),('Ingrid','Sampson','L9J9D','19-04-17'),('Cyrus','Woodward','D4E4L','19-04-15'),('Wade','Weaver','H5E9I','19-04-17'),('Breanna','Bass','N8U9K','19-04-17'),('Joan','Curtis','W2Q8O','19-04-16'),('Marcia','Watson','V7B5G','19-04-15'),('Lars','Foreman','C4N3P','19-04-17'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Branden','Alvarado','P9D4P','19-04-17'),('Adena','Kramer','Z7A0Z','19-04-15'),('Maite','Deleon','Q7U7A','19-04-17'),('Clayton','Harrison','Z7J1G','19-04-16'),('Samson','Daugherty','T9H0S','19-04-17'),('Bree','Dickson','A6N2H','19-04-16'),('Lawrence','Warner','X8G9A','19-04-15'),('Wang','Richards','R9Y8S','19-04-17'),('Yoko','Haynes','J4T8Q','19-04-17'),('Kasper','Bullock','U6Z2K','19-04-16'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Damian','Wheeler','X9F6H','19-04-15'),('Thane','Herring','O1R8A','19-04-15'),('Julian','Fry','B4S4N','19-04-17'),('Noah','Marshall','M2K0E','19-04-15'),('Slade','Riddle','T1D4K','19-04-16'),('Barry','Espinoza','K9R6W','19-04-17'),('Axel','Hoffman','Q0K1Z','19-04-16'),('Amy','Ewing','R1R0F','19-04-15'),('Ali','Black','O4L5F','19-04-15'),('Lucius','Morgan','C1Q3J','19-04-15'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Olivia','Rosales','B1C5A','19-04-15'),('Dylan','Lewis','H2A9F','19-04-17'),('Sandra','Johns','O0A4H','19-04-15'),('Myra','Stephens','P4E4B','19-04-16'),('Blaine','Simmons','W9T6I','19-04-17'),('Emily','Richard','A0K1M','19-04-17'),('Quintessa','Osborn','B8H1I','19-04-15'),('Cameron','Buckley','D2B1F','19-04-17'),('Edward','Perez','X1W8Y','19-04-16'),('Byron','Melendez','W3Z6V','19-04-16'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Jena','Hester','L2S3Q','19-04-17'),('Alfreda','Ortiz','H7X1P','19-04-16'),('Francesca','Delgado','T2F8I','19-04-16'),('Sage','Koch','E4B3Y','19-04-16'),('Iona','Morgan','P0B7B','19-04-17'),('Ima','Bradford','I8G6T','19-04-17'),('Imani','Perez','C6O7J','19-04-15'),('Curran','Rutledge','F2R5P','19-04-16'),('Karen','Nichols','K0W9M','19-04-15'),('Richard','Pittman','V0A6S','19-04-17'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Steven','Cohen','T3O5T','19-04-17'),('Dara','Osborne','I7C5C','19-04-16'),('Timothy','Walker','G9P1K','19-04-15'),('Kylee','Mckenzie','L6Y0D','19-04-17'),('Chanda','Booker','T6X2H','19-04-16'),('Luke','Wyatt','L6Y5X','19-04-15'),('Sydney','Burks','M2W7F','19-04-16'),('Mariam','Dixon','F8P5N','19-04-16'),('Susan','Hunter','X5R0A','19-04-15'),('Alec','Snow','F3W2L','19-04-17'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Scarlet','Dixon','P5U9M','19-04-15'),('Noelle','Miranda','X4A5C','19-04-16'),('Mariko','Solomon','P1O3P','19-04-17'),('Nathan','Martin','Q8B5T','19-04-16'),('Ryder','Willis','K4L9W','19-04-15'),('Kevin','Ballard','A9I2E','19-04-15'),('Leah','Knapp','H9H5P','19-04-16'),('Nita','Webb','A4Y7N','19-04-17'),('Jasmine','Yang','D6L6Z','19-04-16'),('Jacqueline','Cantrell','B1K5I','19-04-16'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Zoe','Huffman','H1C0V','19-04-17'),('Keane','House','F7W8C','19-04-15'),('Kane','Soto','D2S2R','19-04-16'),('Ulric','Salas','R6S8M','19-04-16'),('Sage','Watson','X9Z6M','19-04-15'),('Phillip','Hayden','L7P3N','19-04-15'),('Alexa','Conrad','X7X3B','19-04-17'),('Amena','Bonner','Q9F1R','19-04-15'),('Derek','Bradshaw','J2W1X','19-04-16'),('Tanek','Morin','Q7C6Q','19-04-16'); +INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Devin','Vazquez','P0X6H','19-04-16'),('Idona','Barker','X9B9L','19-04-15'),('Jocelyn','Pollard','N1X0S','19-04-16'),('Michael','Lamb','S3U1W','19-04-16'),('Matthew','Joseph','U2Z0H','19-04-17'),('Rogan','Dominguez','A4E0X','19-04-16'),('Chloe','Guzman','R1R2Z','19-04-16'),('Isabelle','Stark','B3Z7X','19-04-15'),('Hayes','Kaufman','Y6P1I','19-04-16'),('Drew','Henry','Q2T7U','19-04-15'); diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 15b452a1f..d606991df 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -8,55 +8,96 @@ final class ScaffoldVoltCest { + /** + * @group mysql + * @group pgsql + */ public function before(AcceptanceTester $I): void { + $namespace = 'Test\WebTools'; + $I->amOnPage('/webtools.php/scaffold/generate'); - $I->see('Scaffold'); - $I->see('Generate code from template'); + $I->selectOption('form select[name=templateEngine]', 'Volt'); + + Fixtures::add('tablename', 'genscaffold'); + + $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); $basePath = $I->grabValueFrom('#basePath'); Fixtures::add('base_path', $basePath); - /* $I->selectOption('form select[name=templateEngine]', 'Volt'); - $I->selectOption('form select[name=tableName]', 'genscaffold'); - $namespace = 'Test\WebTools'; + $I->fillField('modelsNamespace', $namespace); - $I->click('input[type=submit]'); - $I->checkOption('#force'); - $I->see('Migrations'); - $I->see('All migrations that we managed to find');*/ - $I->selectOption('form select[name=templateEngine]', 'Volt'); - $I->selectOption('form select[name=tableName]', 'genscaffold'); $I->checkOption('#force'); $I->click('input[type=submit]'); $I->see('Migrations'); $I->see('All migrations that we managed to find'); + + //add namespace in loader file + $loaderFile = $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'config' . + DIRECTORY_SEPARATOR . 'loader.php'; + + $content = file_get_contents($loaderFile); + + //Add namespace + $returnLine = "\r\n"; + + $content .= $returnLine . + '$loader->registerNamespaces(' . + $returnLine . '[ '. + '"'.$namespace.'" => $config->application->modelsDir' . + $returnLine . ' ]' . + $returnLine . ');'; + + file_put_contents($loaderFile, $content); } + /** + * @group mysql + * @group pgsql + */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/webtools.php/scaffold/generate'); + $I->amOnPage('/'.Fixtures::get('tablename')); $I->see('Scaffold'); - $I->see('Generate code from template'); + $I->see('Search '.Fixtures::get('tablename')); + $I->see('Dateofbirth'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); } + /** + * @group mysql + * @group pgsql + */ public function after(AcceptanceTester $I): void { $basePath = Fixtures::get('base_path'); unlink($basePath . + DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controllers' . DIRECTORY_SEPARATOR . 'GenscaffoldController.php'); unlink($basePath . + DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'models' . DIRECTORY_SEPARATOR . 'Genscaffold.php'); unlink($basePath . + DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'layouts' . - DIRECTORY_SEPARATOR . 'genscaffold.phtml'); + DIRECTORY_SEPARATOR . 'genscaffold.volt'); remove_dir($basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold'); + + rmdir($basePath . + DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'genscaffold'); } From 260043b92372843003696010c8e5dbf4af80bc65 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Wed, 15 Apr 2020 23:20:41 +0200 Subject: [PATCH 02/31] feat: update tests scaffold --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index d606991df..241282be5 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -19,7 +19,7 @@ public function before(AcceptanceTester $I): void $I->amOnPage('/webtools.php/scaffold/generate'); $I->selectOption('form select[name=templateEngine]', 'Volt'); - Fixtures::add('tablename', 'genscaffold'); + Fixtures::add('tablename', 'genScaffold'); $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); @@ -65,6 +65,8 @@ public function testSearchAction(AcceptanceTester $I): void $I->see('Dateofbirth'); $I->fillField('dateofbirth', '2019-04-17'); $I->click('input[type=submit]'); + + $I->see('Lillian'); } /** From b3a78638350585488e8f95aaa72611442af4d6cd Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 09:32:48 +0200 Subject: [PATCH 03/31] feat: resolve name table --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 241282be5..25a9003b9 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -20,6 +20,7 @@ public function before(AcceptanceTester $I): void $I->selectOption('form select[name=templateEngine]', 'Volt'); Fixtures::add('tablename', 'genScaffold'); + Fixtures::add('pageename', strtolower(Fixtures::get('tablename'))); $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); @@ -59,9 +60,9 @@ public function before(AcceptanceTester $I): void */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/'.Fixtures::get('tablename')); + $I->amOnPage('/'.Fixtures::get('pageename')); $I->see('Scaffold'); - $I->see('Search '.Fixtures::get('tablename')); + $I->see('Search '.Fixtures::get('pageename')); $I->see('Dateofbirth'); $I->fillField('dateofbirth', '2019-04-17'); $I->click('input[type=submit]'); From 9dee33213ed826aef32268685745a1fa1ff51c66 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 10:29:28 +0200 Subject: [PATCH 04/31] feat: resolve name table --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 25a9003b9..00838aee1 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -20,7 +20,7 @@ public function before(AcceptanceTester $I): void $I->selectOption('form select[name=templateEngine]', 'Volt'); Fixtures::add('tablename', 'genScaffold'); - Fixtures::add('pageename', strtolower(Fixtures::get('tablename'))); + Fixtures::add('pageename', 'genscaffold'); $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); From 80e8517a6f42bc5507214f2a7646471e123927cc Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 10:43:26 +0200 Subject: [PATCH 05/31] feat: resolve name table --- .../Web/Template/ScaffoldVoltCest.php | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 00838aee1..3efa5395b 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -54,13 +54,31 @@ public function before(AcceptanceTester $I): void file_put_contents($loaderFile, $content); } + /** + * @group mysql + * @group pgsql + */ + public function testGenScaffoldFileExist(AcceptanceTester $I): void + { + $scaffoldControllerPath = app_path('controllers/GenscaffoldController.php'); + $scaffoldModelPath = app_path('models/Genscaffold.php'); + + $I->seeFileFound($scaffoldControllerPath); + $I->seeFileFound($scaffoldModelPath); + $I->seeFileFound(app_path('views/layouts/genscaffold.phtml')); + $I->seeFileFound(app_path('views/genscaffold/edit.phtml')); + $I->seeFileFound(app_path('views/genscaffold/index.phtml')); + $I->seeFileFound(app_path('views/genscaffold/new.phtml')); + $I->seeFileFound(app_path('views/genscaffold/search.phtml')); + } + /** * @group mysql * @group pgsql */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/'.Fixtures::get('pageename')); + $I->amOnPage('/genscaffold'); $I->see('Scaffold'); $I->see('Search '.Fixtures::get('pageename')); $I->see('Dateofbirth'); From 20ff03d2ff88c80f8da09ec3a999dab9e7508f2c Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 11:08:13 +0200 Subject: [PATCH 06/31] feat: resolve name table --- tests/acceptance.suite.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/acceptance.suite.yml b/tests/acceptance.suite.yml index 516091bf2..2207ab59b 100644 --- a/tests/acceptance.suite.yml +++ b/tests/acceptance.suite.yml @@ -12,4 +12,5 @@ modules: curl: CURLOPT_RETURNTRANSFER: true - \Helper\Acceptance + - Filesystem step_decorators: ~ From b5ca436bda62d8e307244cc8376570307102daa2 Mon Sep 17 00:00:00 2001 From: simonhochrein Date: Thu, 16 Apr 2020 07:23:40 -0500 Subject: [PATCH 07/31] Update DatabaseProvider.php Fix ```[notice] E_USER_NOTICE: SQLite does not allow the charset to be changed in the DSN. in /home/user/.config/composer/vendor/phalcon/devtools/src/Providers/DatabaseProvider.php on line 69``` --- src/Providers/DatabaseProvider.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Providers/DatabaseProvider.php b/src/Providers/DatabaseProvider.php index d02fc8fa2..0ff14899b 100644 --- a/src/Providers/DatabaseProvider.php +++ b/src/Providers/DatabaseProvider.php @@ -61,7 +61,7 @@ public function register(DiInterface $di): void 'port' => $config['port'], ]; - if ($config['adapter'] == 'Postgresql') { + if ($config['adapter'] == 'Postgresql' || $config['adapter'] == 'Sqlite') { unset($params['charset']); } From f22ab2ee6a47d1451d0abfb261cc90c1eca47a41 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 18:25:52 +0200 Subject: [PATCH 08/31] feat: change url --- .../Web/Template/ScaffoldVoltCest.php | 94 +++++++++++-------- 1 file changed, 57 insertions(+), 37 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 3efa5395b..c8442ad0b 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -60,16 +60,59 @@ public function before(AcceptanceTester $I): void */ public function testGenScaffoldFileExist(AcceptanceTester $I): void { - $scaffoldControllerPath = app_path('controllers/GenscaffoldController.php'); - $scaffoldModelPath = app_path('models/Genscaffold.php'); - - $I->seeFileFound($scaffoldControllerPath); - $I->seeFileFound($scaffoldModelPath); - $I->seeFileFound(app_path('views/layouts/genscaffold.phtml')); - $I->seeFileFound(app_path('views/genscaffold/edit.phtml')); - $I->seeFileFound(app_path('views/genscaffold/index.phtml')); - $I->seeFileFound(app_path('views/genscaffold/new.phtml')); - $I->seeFileFound(app_path('views/genscaffold/search.phtml')); + $basePath = Fixtures::get('base_path'); + + Fixtures::add('controller', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'controllers' . + DIRECTORY_SEPARATOR . 'GenscaffoldController.php'); + + Fixtures::add('model', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'models' . + DIRECTORY_SEPARATOR . 'Genscaffold.php'); + + Fixtures::add('layout', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'layouts' . + DIRECTORY_SEPARATOR . 'genscaffold.volt'); + + Fixtures::add('views', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold'); + + Fixtures::add('views_edit', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'edit.volt'); + + Fixtures::add('views_index', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'index.volt'); + + Fixtures::add('views_new', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'new.volt'); + + Fixtures::add('views_search', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'search.volt'); + + $I->seeFileFound(Fixtures::get('controller')); + $I->seeFileFound(Fixtures::get('model')); + $I->seeFileFound(Fixtures::get('layout')); + $I->seeFileFound(Fixtures::get('views_edit')); + $I->seeFileFound(Fixtures::get('views_index')); + $I->seeFileFound(Fixtures::get('views_search')); } /** @@ -94,32 +137,9 @@ public function testSearchAction(AcceptanceTester $I): void */ public function after(AcceptanceTester $I): void { - $basePath = Fixtures::get('base_path'); - - unlink($basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'controllers' . - DIRECTORY_SEPARATOR . 'GenscaffoldController.php'); - - unlink($basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'models' . - DIRECTORY_SEPARATOR . 'Genscaffold.php'); - - unlink($basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'layouts' . - DIRECTORY_SEPARATOR . 'genscaffold.volt'); - - remove_dir($basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold'); - - rmdir($basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold'); + $I->deleteFile(Fixtures::get('controller')); + $I->deleteFile(Fixtures::get('model')); + $I->deleteFile(Fixtures::get('layout')); + $I->deleteDir(Fixtures::get('views')); } } From 21e9aa418f4acb13ffde58fdf3b1c1daa2199ebb Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 18:34:10 +0200 Subject: [PATCH 09/31] feat: change url --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index c8442ad0b..af21d6d2e 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -121,7 +121,7 @@ public function testGenScaffoldFileExist(AcceptanceTester $I): void */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold'); + $I->amOnPage('/Genscaffold'); $I->see('Scaffold'); $I->see('Search '.Fixtures::get('pageename')); $I->see('Dateofbirth'); From 3676cee3968be0b1fae2016bb94c46f97683ef12 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 18:59:11 +0200 Subject: [PATCH 10/31] feat: change url --- .../Web/Template/ScaffoldVoltCest.php | 64 ++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index af21d6d2e..4497d5397 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -121,7 +121,7 @@ public function testGenScaffoldFileExist(AcceptanceTester $I): void */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/Genscaffold'); + $I->amOnPage('/genscaffold'); $I->see('Scaffold'); $I->see('Search '.Fixtures::get('pageename')); $I->see('Dateofbirth'); @@ -131,6 +131,68 @@ public function testSearchAction(AcceptanceTester $I): void $I->see('Lillian'); } + /** + * @group mysql + * @group pgsql + */ + public function testSearchButtonAction(AcceptanceTester $I): void + { + $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->see('Search result'); + + // + $I->click("a.page-link:eq(2)"); + $I->click("a.page-link:eq(0)"); + $I->click("a.page-link:eq(3)"); + $I->click("a.page-link:eq(1)"); + } + + + /** + * @group mysql + * @group pgsql + */ + public function testNewAction(AcceptanceTester $I): void + { + $I->amOnPage('/genscaffold/new'); + $I->see('Create genscaffold'); + $I->fillField('firstname', 'jeremy'); + $I->fillField('surname', 'jenovateurs'); + $I->fillField('membertype', 'aaa'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); + } + + /** + * @group mysql + * @group pgsql + */ + public function testEditAction(AcceptanceTester $I): void + { + $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->see('Search result'); + $I->click("a[href*='edit/2']"); + $I->seeInField('firstname','Lillian'); + $I->fillField('firstname', 'jeremy'); + $I->click('input[type=submit]'); + } + + /** + * @group mysql + * @group pgsql + */ + public function testDeleteAction(AcceptanceTester $I): void + { + $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->see('Search result'); + $I->click("a[href*='delete/2']"); + $I->see('genscaffold was deleted successfully'); + + $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->cantSee('Lilian'); + $I->click('input[type=submit]'); + } + /** * @group mysql * @group pgsql From 0b9d7abe3e570e3078b020e2e9635d35d79f1041 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 19:29:57 +0200 Subject: [PATCH 11/31] feat: change url --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 4497d5397..27d612c34 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -140,11 +140,10 @@ public function testSearchButtonAction(AcceptanceTester $I): void $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); - // - $I->click("a.page-link:eq(2)"); - $I->click("a.page-link:eq(0)"); - $I->click("a.page-link:eq(3)"); - $I->click("a.page-link:eq(1)"); + $I->click("Next"); + $I->click("Previous"); + $I->click("Last"); + $I->click("First"); } From 2d81cfd5d3c67a0be3ad2bcc54dfe1ec4b0844c7 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 19:32:43 +0200 Subject: [PATCH 12/31] feat: change url --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 27d612c34..c3266c521 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -171,7 +171,7 @@ public function testEditAction(AcceptanceTester $I): void $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); $I->click("a[href*='edit/2']"); - $I->seeInField('firstname','Lillian'); + $I->see('Lillian'); $I->fillField('firstname', 'jeremy'); $I->click('input[type=submit]'); } From 829ca1b3e31a90637d89ed95ce35ee4e9fa83b1a Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 19:54:12 +0200 Subject: [PATCH 13/31] feat: change url --- .../Web/Template/ScaffoldVoltCest.php | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index c3266c521..e4a97fd7f 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -5,6 +5,7 @@ use AcceptanceTester; use Codeception\Util\Fixtures; +use Codeception\Util\Locator; final class ScaffoldVoltCest { @@ -140,10 +141,25 @@ public function testSearchButtonAction(AcceptanceTester $I): void $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); - $I->click("Next"); - $I->click("Previous"); - $I->click("Last"); - $I->click("First"); + $I->click( + "Next", + Locator::elementAt("//a[contains(@class, 'page-link')]", 2) + ); + + $I->click( + "First", + Locator::elementAt("//a[contains(@class, 'page-link')]", 0) + ); + + $I->click( + "Last", + Locator::elementAt("//a[contains(@class, 'page-link')]", 3) + ); + + $I->click( + "Previous", + Locator::elementAt("//a[contains(@class, 'page-link')]", 1) + ); } From 3c6983c041890ef912fa2b0f5d5d5a1289c11bd9 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Thu, 16 Apr 2020 20:02:14 +0200 Subject: [PATCH 14/31] feat: change url --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index e4a97fd7f..006337cca 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -142,7 +142,6 @@ public function testSearchButtonAction(AcceptanceTester $I): void $I->see('Search result'); $I->click( - "Next", Locator::elementAt("//a[contains(@class, 'page-link')]", 2) ); From a753b92574112e1c620028fecdc61f8b808d90b9 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 11:21:57 +0200 Subject: [PATCH 15/31] feat: add id on pagination button --- .../scaffold/no-forms/views/search.phtml | 8 ++-- templates/scaffold/no-forms/views/search.volt | 8 ++-- .../Web/Template/ScaffoldVoltCest.php | 38 +++++++++---------- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/templates/scaffold/no-forms/views/search.phtml b/templates/scaffold/no-forms/views/search.phtml index 53719a8c4..1bb7e5cc1 100644 --- a/templates/scaffold/no-forms/views/search.phtml +++ b/templates/scaffold/no-forms/views/search.phtml @@ -49,10 +49,10 @@
diff --git a/templates/scaffold/no-forms/views/search.volt b/templates/scaffold/no-forms/views/search.volt index 6372ec14b..cd8ab4f84 100644 --- a/templates/scaffold/no-forms/views/search.volt +++ b/templates/scaffold/no-forms/views/search.volt @@ -43,10 +43,10 @@
diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 006337cca..aee299f0e 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -20,7 +20,8 @@ public function before(AcceptanceTester $I): void $I->amOnPage('/webtools.php/scaffold/generate'); $I->selectOption('form select[name=templateEngine]', 'Volt'); - Fixtures::add('tablename', 'genScaffold'); + Fixtures::add('tablename', 'genscaffold'); + //Fixtures::add('tablename', 'genScaffold'); Fixtures::add('pageename', 'genscaffold'); $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); @@ -129,7 +130,7 @@ public function testSearchAction(AcceptanceTester $I): void $I->fillField('dateofbirth', '2019-04-17'); $I->click('input[type=submit]'); - $I->see('Lillian'); + $I->see('Brandon'); } /** @@ -138,27 +139,24 @@ public function testSearchAction(AcceptanceTester $I): void */ public function testSearchButtonAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->amOnPage('/genscaffold/search'); $I->see('Search result'); - $I->click( - Locator::elementAt("//a[contains(@class, 'page-link')]", 2) - ); + $I->click("#next"); + + $I->see("K1S6X"); + + $I->click("#previous"); + + $I->see("U7B0Q"); + + $I->click("#last"); - $I->click( - "First", - Locator::elementAt("//a[contains(@class, 'page-link')]", 0) - ); + $I->see("N2Z7T"); - $I->click( - "Last", - Locator::elementAt("//a[contains(@class, 'page-link')]", 3) - ); + $I->click("#first"); - $I->click( - "Previous", - Locator::elementAt("//a[contains(@class, 'page-link')]", 1) - ); + $I->see("U7B0Q"); } @@ -213,9 +211,9 @@ public function testDeleteAction(AcceptanceTester $I): void */ public function after(AcceptanceTester $I): void { - $I->deleteFile(Fixtures::get('controller')); + /* $I->deleteFile(Fixtures::get('controller')); $I->deleteFile(Fixtures::get('model')); $I->deleteFile(Fixtures::get('layout')); - $I->deleteDir(Fixtures::get('views')); + $I->deleteDir(Fixtures::get('views'));*/ } } From 6f52431a4b93070d4cacf17b2412d8a644c61177 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 12:01:48 +0200 Subject: [PATCH 16/31] feat: add customers table --- tests/_data/schemas/mysql/dump.sql | 27 +++++++++++- tests/_data/schemas/postgresql/dump.sql | 23 ++++++++++ .../Web/Template/ScaffoldVoltCest.php | 43 ++++++++++--------- 3 files changed, 71 insertions(+), 22 deletions(-) diff --git a/tests/_data/schemas/mysql/dump.sql b/tests/_data/schemas/mysql/dump.sql index bea0c29af..7e2e58b07 100644 --- a/tests/_data/schemas/mysql/dump.sql +++ b/tests/_data/schemas/mysql/dump.sql @@ -110,7 +110,6 @@ CREATE TABLE genScaffold( PRIMARY KEY(id) ); - INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Hedley","Reeves","U7B0Q","19-04-15"),("Lillian","Bright","B6O2I","19-04-17"),("Quin","Cherry","W2Q7K","19-04-15"),("Felix","Underwood","H9O8P","19-04-16"),("Kirestin","Finley","E5K6R","19-04-15"),("Brandon","West","A1L1Q","19-04-17"),("Plato","Vaughn","L2C3S","19-04-15"),("Kristen","Davenport","Q7S9K","19-04-15"),("Erasmus","Oneil","T7S0B","19-04-16"),("Steven","Kramer","I6G0M","19-04-15"); INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Damian","Houston","Y3U7T","19-04-16"),("Griffin","Beach","K1S6X","19-04-15"),("Kylie","Cohen","S3D2P","19-04-17"),("Wayne","Freeman","W5H9H","19-04-17"),("Charde","Lewis","L4B4B","19-04-17"),("Simone","Ratliff","M4I1N","19-04-17"),("Maggie","Guerrero","O4S3Z","19-04-17"),("Ferris","Fitzgerald","J1M0F","19-04-16"),("Yoshio","Reynolds","B6J9Y","19-04-17"),("Lacey","Austin","H3C8R","19-04-15"); INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Eugenia","Tyson","A6K1J","19-04-16"),("Slade","Farley","M7Y5K","19-04-16"),("Kylynn","Bolton","I7D5M","19-04-17"),("Patience","Ware","R1Y8S","19-04-17"),("Cooper","Bruce","R5Y2P","19-04-17"),("Justin","Harding","X9Q0H","19-04-16"),("Cleo","York","R4Z9A","19-04-17"),("Dante","Delacruz","L6H3S","19-04-17"),("Kylie","Oneal","C0U1Q","19-04-16"),("Macey","Salazar","L0Q8H","19-04-15"); @@ -121,3 +120,29 @@ INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Mado INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Cedric","Avery","L2P1G","19-04-15"),("Ann","Travis","K2B5E","19-04-17"),("Lee","Mathis","C0Z4A","19-04-17"),("Skyler","Cervantes","W9I3B","19-04-15"),("Hermione","Baird","C4V9Q","19-04-17"),("Helen","Clark","I3T9J","19-04-17"),("Maryam","Blackburn","S1I7Z","19-04-15"),("Rahim","Knapp","O2S7K","19-04-17"),("Gannon","Williamson","F9O2L","19-04-15"),("Stephen","Bradshaw","H9X5D","19-04-16"); INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Gil","Manning","Q3Z2R","19-04-16"),("Victoria","Alford","J4T7L","19-04-16"),("Calvin","Stout","R1H0I","19-04-17"),("Erica","Gregory","H2K1T","19-04-17"),("Finn","Maynard","I8K4T","19-04-17"),("Karina","Nichols","U1Y4I","19-04-17"),("Imogene","Soto","S6M7P","19-04-16"),("Juliet","Wilkins","P0X0K","19-04-15"),("Emma","Dejesus","L8P4G","19-04-16"),("Pearl","Henry","L9X3W","19-04-17"); INSERT INTO genScaffold (firstname,surname,membertype,dateofbirth) VALUES ("Lillith","Garcia","L1V1Q","19-04-16"),("Zenia","Figueroa","X6J6W","19-04-17"),("Ulla","Kidd","V5N4T","19-04-16"),("Maxwell","Solis","Q0J1Y","19-04-16"),("Erasmus","Raymond","F8Y3G","19-04-16"),("Caleb","Byrd","A5D6F","19-04-17"),("Philip","Carpenter","B1R0E","19-04-17"),("Lisandra","Wilcox","N2Z7T","19-04-15"),("Joseph","Bush","N4Z8R","19-04-15"),("Kaitlin","Ferrell","J0G8Q","19-04-17"); + + +-- +-- Table structures for testing generating scaffold compatible Windows / Unix +-- +DROP TABLE IF EXISTS `customers`; +CREATE TABLE customers( + id integer auto_increment, + firstname Varchar(30), + surname Varchar(30), + membertype Varchar(6), + dateofbirth date, + PRIMARY KEY(id) +); + + +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Hedley","Reeves","U7B0Q","19-04-15"),("Lillian","Bright","B6O2I","19-04-17"),("Quin","Cherry","W2Q7K","19-04-15"),("Felix","Underwood","H9O8P","19-04-16"),("Kirestin","Finley","E5K6R","19-04-15"),("Brandon","West","A1L1Q","19-04-17"),("Plato","Vaughn","L2C3S","19-04-15"),("Kristen","Davenport","Q7S9K","19-04-15"),("Erasmus","Oneil","T7S0B","19-04-16"),("Steven","Kramer","I6G0M","19-04-15"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Damian","Houston","Y3U7T","19-04-16"),("Griffin","Beach","K1S6X","19-04-15"),("Kylie","Cohen","S3D2P","19-04-17"),("Wayne","Freeman","W5H9H","19-04-17"),("Charde","Lewis","L4B4B","19-04-17"),("Simone","Ratliff","M4I1N","19-04-17"),("Maggie","Guerrero","O4S3Z","19-04-17"),("Ferris","Fitzgerald","J1M0F","19-04-16"),("Yoshio","Reynolds","B6J9Y","19-04-17"),("Lacey","Austin","H3C8R","19-04-15"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Eugenia","Tyson","A6K1J","19-04-16"),("Slade","Farley","M7Y5K","19-04-16"),("Kylynn","Bolton","I7D5M","19-04-17"),("Patience","Ware","R1Y8S","19-04-17"),("Cooper","Bruce","R5Y2P","19-04-17"),("Justin","Harding","X9Q0H","19-04-16"),("Cleo","York","R4Z9A","19-04-17"),("Dante","Delacruz","L6H3S","19-04-17"),("Kylie","Oneal","C0U1Q","19-04-16"),("Macey","Salazar","L0Q8H","19-04-15"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Rosalyn","Chandler","M6B2H","19-04-15"),("Jorden","Pratt","Z8L6D","19-04-15"),("Kermit","Gaines","T7H1K","19-04-17"),("Kirsten","Grimes","B6N1L","19-04-15"),("Keegan","Wolfe","F2L4A","19-04-16"),("Kiara","Castaneda","D7P0D","19-04-17"),("Eleanor","Gomez","P4W3O","19-04-17"),("Abdul","Potter","T9P5Z","19-04-16"),("Denton","Mendoza","W0L1X","19-04-16"),("Omar","Morse","A2P8Q","19-04-17"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Martina","Mckinney","S0P7K","19-04-16"),("Hedley","Nguyen","L7U8O","19-04-15"),("Wanda","Dyer","T8Z1R","19-04-16"),("Olga","Witt","I0R6O","19-04-15"),("Leandra","Simmons","U6C4C","19-04-17"),("Lev","Cox","D8P2R","19-04-17"),("Maxine","Gilmore","E2D3R","19-04-15"),("Sean","Doyle","K1Z1M","19-04-17"),("Carl","Brady","M2K4X","19-04-15"),("Hilel","Huffman","N5W1L","19-04-17"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Ina","Mendoza","I0M8V","19-04-17"),("Uriah","Mccarthy","A0Z8A","19-04-15"),("Kay","Stevens","Q8J8G","19-04-15"),("Silas","Calhoun","Z8L4O","19-04-16"),("Nolan","Garrett","Z1G4A","19-04-17"),("Knox","Sosa","X0X3A","19-04-15"),("Calista","Barnes","D2R6H","19-04-17"),("Troy","Reed","K0P3L","19-04-17"),("Flynn","Fry","K1Z6P","19-04-17"),("Veda","Boone","B7P2C","19-04-17"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Madonna","Gilbert","U1T8G","19-04-17"),("Boris","Montgomery","V2L4R","19-04-16"),("Wing","Reese","U3L2S","19-04-15"),("Jackson","Bradford","J8C9Z","19-04-16"),("Jermaine","Mendez","Y2W5W","19-04-16"),("Astra","Chan","U0V6D","19-04-16"),("Kitra","Head","U2A3O","19-04-15"),("Honorato","Mullen","W3K6D","19-04-16"),("Brynn","Morse","O7K3B","19-04-17"),("Yolanda","Rivas","J2Z9L","19-04-16"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Cedric","Avery","L2P1G","19-04-15"),("Ann","Travis","K2B5E","19-04-17"),("Lee","Mathis","C0Z4A","19-04-17"),("Skyler","Cervantes","W9I3B","19-04-15"),("Hermione","Baird","C4V9Q","19-04-17"),("Helen","Clark","I3T9J","19-04-17"),("Maryam","Blackburn","S1I7Z","19-04-15"),("Rahim","Knapp","O2S7K","19-04-17"),("Gannon","Williamson","F9O2L","19-04-15"),("Stephen","Bradshaw","H9X5D","19-04-16"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Gil","Manning","Q3Z2R","19-04-16"),("Victoria","Alford","J4T7L","19-04-16"),("Calvin","Stout","R1H0I","19-04-17"),("Erica","Gregory","H2K1T","19-04-17"),("Finn","Maynard","I8K4T","19-04-17"),("Karina","Nichols","U1Y4I","19-04-17"),("Imogene","Soto","S6M7P","19-04-16"),("Juliet","Wilkins","P0X0K","19-04-15"),("Emma","Dejesus","L8P4G","19-04-16"),("Pearl","Henry","L9X3W","19-04-17"); +INSERT INTO customers (firstname,surname,membertype,dateofbirth) VALUES ("Lillith","Garcia","L1V1Q","19-04-16"),("Zenia","Figueroa","X6J6W","19-04-17"),("Ulla","Kidd","V5N4T","19-04-16"),("Maxwell","Solis","Q0J1Y","19-04-16"),("Erasmus","Raymond","F8Y3G","19-04-16"),("Caleb","Byrd","A5D6F","19-04-17"),("Philip","Carpenter","B1R0E","19-04-17"),("Lisandra","Wilcox","N2Z7T","19-04-15"),("Joseph","Bush","N4Z8R","19-04-15"),("Kaitlin","Ferrell","J0G8Q","19-04-17"); diff --git a/tests/_data/schemas/postgresql/dump.sql b/tests/_data/schemas/postgresql/dump.sql index 1577d349a..0ed1a0a00 100644 --- a/tests/_data/schemas/postgresql/dump.sql +++ b/tests/_data/schemas/postgresql/dump.sql @@ -108,3 +108,26 @@ INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('St INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Scarlet','Dixon','P5U9M','19-04-15'),('Noelle','Miranda','X4A5C','19-04-16'),('Mariko','Solomon','P1O3P','19-04-17'),('Nathan','Martin','Q8B5T','19-04-16'),('Ryder','Willis','K4L9W','19-04-15'),('Kevin','Ballard','A9I2E','19-04-15'),('Leah','Knapp','H9H5P','19-04-16'),('Nita','Webb','A4Y7N','19-04-17'),('Jasmine','Yang','D6L6Z','19-04-16'),('Jacqueline','Cantrell','B1K5I','19-04-16'); INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Zoe','Huffman','H1C0V','19-04-17'),('Keane','House','F7W8C','19-04-15'),('Kane','Soto','D2S2R','19-04-16'),('Ulric','Salas','R6S8M','19-04-16'),('Sage','Watson','X9Z6M','19-04-15'),('Phillip','Hayden','L7P3N','19-04-15'),('Alexa','Conrad','X7X3B','19-04-17'),('Amena','Bonner','Q9F1R','19-04-15'),('Derek','Bradshaw','J2W1X','19-04-16'),('Tanek','Morin','Q7C6Q','19-04-16'); INSERT INTO "genScaffold" (firstname,surname,membertype,dateofbirth) VALUES ('Devin','Vazquez','P0X6H','19-04-16'),('Idona','Barker','X9B9L','19-04-15'),('Jocelyn','Pollard','N1X0S','19-04-16'),('Michael','Lamb','S3U1W','19-04-16'),('Matthew','Joseph','U2Z0H','19-04-17'),('Rogan','Dominguez','A4E0X','19-04-16'),('Chloe','Guzman','R1R2Z','19-04-16'),('Isabelle','Stark','B3Z7X','19-04-15'),('Hayes','Kaufman','Y6P1I','19-04-16'),('Drew','Henry','Q2T7U','19-04-15'); + + +-- +-- Table structures for testing generating scaffold compatible Windows / Unix +-- +CREATE TABLE "customers" ( + id SERIAL PRIMARY KEY, + firstname varchar(255) default NULL, + surname varchar(255) default NULL, + membertype varchar(255), + dateofbirth varchar(255) +); + +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Geoffrey','Horne','A4X9V','19-04-16'),('Vielka','Vaughan','Q0N0T','19-04-15'),('Amery','Armstrong','T0Y1D','19-04-16'),('Malcolm','Rosario','E7D7H','19-04-16'),('Tanya','Stafford','P6X1A','19-04-17'),('Mannix','Jackson','G8Q8I','19-04-16'),('Uriah','Jensen','E6R4U','19-04-17'),('Keely','Mercado','S8T7U','19-04-17'),('Stone','Flores','S3S1E','19-04-17'),('Karly','Clarke','T9F9W','19-04-16'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('August','Gallegos','F8V3Z','19-04-15'),('Pascale','Mccullough','I0Q1U','19-04-15'),('Isabella','Talley','W5E3G','19-04-17'),('Ingrid','Sampson','L9J9D','19-04-17'),('Cyrus','Woodward','D4E4L','19-04-15'),('Wade','Weaver','H5E9I','19-04-17'),('Breanna','Bass','N8U9K','19-04-17'),('Joan','Curtis','W2Q8O','19-04-16'),('Marcia','Watson','V7B5G','19-04-15'),('Lars','Foreman','C4N3P','19-04-17'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Branden','Alvarado','P9D4P','19-04-17'),('Adena','Kramer','Z7A0Z','19-04-15'),('Maite','Deleon','Q7U7A','19-04-17'),('Clayton','Harrison','Z7J1G','19-04-16'),('Samson','Daugherty','T9H0S','19-04-17'),('Bree','Dickson','A6N2H','19-04-16'),('Lawrence','Warner','X8G9A','19-04-15'),('Wang','Richards','R9Y8S','19-04-17'),('Yoko','Haynes','J4T8Q','19-04-17'),('Kasper','Bullock','U6Z2K','19-04-16'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Damian','Wheeler','X9F6H','19-04-15'),('Thane','Herring','O1R8A','19-04-15'),('Julian','Fry','B4S4N','19-04-17'),('Noah','Marshall','M2K0E','19-04-15'),('Slade','Riddle','T1D4K','19-04-16'),('Barry','Espinoza','K9R6W','19-04-17'),('Axel','Hoffman','Q0K1Z','19-04-16'),('Amy','Ewing','R1R0F','19-04-15'),('Ali','Black','O4L5F','19-04-15'),('Lucius','Morgan','C1Q3J','19-04-15'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Olivia','Rosales','B1C5A','19-04-15'),('Dylan','Lewis','H2A9F','19-04-17'),('Sandra','Johns','O0A4H','19-04-15'),('Myra','Stephens','P4E4B','19-04-16'),('Blaine','Simmons','W9T6I','19-04-17'),('Emily','Richard','A0K1M','19-04-17'),('Quintessa','Osborn','B8H1I','19-04-15'),('Cameron','Buckley','D2B1F','19-04-17'),('Edward','Perez','X1W8Y','19-04-16'),('Byron','Melendez','W3Z6V','19-04-16'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Jena','Hester','L2S3Q','19-04-17'),('Alfreda','Ortiz','H7X1P','19-04-16'),('Francesca','Delgado','T2F8I','19-04-16'),('Sage','Koch','E4B3Y','19-04-16'),('Iona','Morgan','P0B7B','19-04-17'),('Ima','Bradford','I8G6T','19-04-17'),('Imani','Perez','C6O7J','19-04-15'),('Curran','Rutledge','F2R5P','19-04-16'),('Karen','Nichols','K0W9M','19-04-15'),('Richard','Pittman','V0A6S','19-04-17'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Steven','Cohen','T3O5T','19-04-17'),('Dara','Osborne','I7C5C','19-04-16'),('Timothy','Walker','G9P1K','19-04-15'),('Kylee','Mckenzie','L6Y0D','19-04-17'),('Chanda','Booker','T6X2H','19-04-16'),('Luke','Wyatt','L6Y5X','19-04-15'),('Sydney','Burks','M2W7F','19-04-16'),('Mariam','Dixon','F8P5N','19-04-16'),('Susan','Hunter','X5R0A','19-04-15'),('Alec','Snow','F3W2L','19-04-17'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Scarlet','Dixon','P5U9M','19-04-15'),('Noelle','Miranda','X4A5C','19-04-16'),('Mariko','Solomon','P1O3P','19-04-17'),('Nathan','Martin','Q8B5T','19-04-16'),('Ryder','Willis','K4L9W','19-04-15'),('Kevin','Ballard','A9I2E','19-04-15'),('Leah','Knapp','H9H5P','19-04-16'),('Nita','Webb','A4Y7N','19-04-17'),('Jasmine','Yang','D6L6Z','19-04-16'),('Jacqueline','Cantrell','B1K5I','19-04-16'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Zoe','Huffman','H1C0V','19-04-17'),('Keane','House','F7W8C','19-04-15'),('Kane','Soto','D2S2R','19-04-16'),('Ulric','Salas','R6S8M','19-04-16'),('Sage','Watson','X9Z6M','19-04-15'),('Phillip','Hayden','L7P3N','19-04-15'),('Alexa','Conrad','X7X3B','19-04-17'),('Amena','Bonner','Q9F1R','19-04-15'),('Derek','Bradshaw','J2W1X','19-04-16'),('Tanek','Morin','Q7C6Q','19-04-16'); +INSERT INTO "customers" (firstname,surname,membertype,dateofbirth) VALUES ('Devin','Vazquez','P0X6H','19-04-16'),('Idona','Barker','X9B9L','19-04-15'),('Jocelyn','Pollard','N1X0S','19-04-16'),('Michael','Lamb','S3U1W','19-04-16'),('Matthew','Joseph','U2Z0H','19-04-17'),('Rogan','Dominguez','A4E0X','19-04-16'),('Chloe','Guzman','R1R2Z','19-04-16'),('Isabelle','Stark','B3Z7X','19-04-15'),('Hayes','Kaufman','Y6P1I','19-04-16'),('Drew','Henry','Q2T7U','19-04-15'); diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index aee299f0e..7291b21e5 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -20,9 +20,7 @@ public function before(AcceptanceTester $I): void $I->amOnPage('/webtools.php/scaffold/generate'); $I->selectOption('form select[name=templateEngine]', 'Volt'); - Fixtures::add('tablename', 'genscaffold'); - //Fixtures::add('tablename', 'genScaffold'); - Fixtures::add('pageename', 'genscaffold'); + Fixtures::add('tablename', 'customers'); $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); @@ -67,46 +65,46 @@ public function testGenScaffoldFileExist(AcceptanceTester $I): void Fixtures::add('controller', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controllers' . - DIRECTORY_SEPARATOR . 'GenscaffoldController.php'); + DIRECTORY_SEPARATOR . 'CustomersController.php'); Fixtures::add('model', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'models' . - DIRECTORY_SEPARATOR . 'Genscaffold.php'); + DIRECTORY_SEPARATOR . 'Customers.php'); Fixtures::add('layout', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'layouts' . - DIRECTORY_SEPARATOR . 'genscaffold.volt'); + DIRECTORY_SEPARATOR . 'customers.volt'); Fixtures::add('views', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold'); + DIRECTORY_SEPARATOR . 'customers'); Fixtures::add('views_edit', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'customers' . DIRECTORY_SEPARATOR . 'edit.volt'); Fixtures::add('views_index', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'customers' . DIRECTORY_SEPARATOR . 'index.volt'); Fixtures::add('views_new', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'customers' . DIRECTORY_SEPARATOR . 'new.volt'); Fixtures::add('views_search', $basePath . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'genscaffold' . + DIRECTORY_SEPARATOR . 'customers' . DIRECTORY_SEPARATOR . 'search.volt'); $I->seeFileFound(Fixtures::get('controller')); @@ -123,9 +121,9 @@ public function testGenScaffoldFileExist(AcceptanceTester $I): void */ public function testSearchAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold'); - $I->see('Scaffold'); - $I->see('Search '.Fixtures::get('pageename')); + $I->amOnPage('/'.Fixtures::get('tablename')); + $I->see(Fixtures::get('tablename')); + $I->see('Search '.Fixtures::get('tablename')); $I->see('Dateofbirth'); $I->fillField('dateofbirth', '2019-04-17'); $I->click('input[type=submit]'); @@ -139,7 +137,7 @@ public function testSearchAction(AcceptanceTester $I): void */ public function testSearchButtonAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold/search'); + $I->amOnPage('/'.Fixtures::get('tablename').'/search'); $I->see('Search result'); $I->click("#next"); @@ -166,8 +164,8 @@ public function testSearchButtonAction(AcceptanceTester $I): void */ public function testNewAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold/new'); - $I->see('Create genscaffold'); + $I->amOnPage('/'.Fixtures::get('tablename').'/new'); + $I->see('Create '.Fixtures::get('tablename')); $I->fillField('firstname', 'jeremy'); $I->fillField('surname', 'jenovateurs'); $I->fillField('membertype', 'aaa'); @@ -181,7 +179,8 @@ public function testNewAction(AcceptanceTester $I): void */ public function testEditAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); $I->click("a[href*='edit/2']"); $I->see('Lillian'); @@ -195,12 +194,14 @@ public function testEditAction(AcceptanceTester $I): void */ public function testDeleteAction(AcceptanceTester $I): void { - $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); $I->click("a[href*='delete/2']"); $I->see('genscaffold was deleted successfully'); - $I->amOnPage('/genscaffold/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->cantSee('Lilian'); $I->click('input[type=submit]'); } @@ -211,7 +212,7 @@ public function testDeleteAction(AcceptanceTester $I): void */ public function after(AcceptanceTester $I): void { - /* $I->deleteFile(Fixtures::get('controller')); + /*$I->deleteFile(Fixtures::get('controller')); $I->deleteFile(Fixtures::get('model')); $I->deleteFile(Fixtures::get('layout')); $I->deleteDir(Fixtures::get('views'));*/ From 346e3b85325872990ba0c3cebcec2dacd688e089 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 16:44:13 +0200 Subject: [PATCH 17/31] feat: update tests --- .../Web/Template/ScaffoldVoltCest.php | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 7291b21e5..417210d6f 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -180,12 +180,18 @@ public function testNewAction(AcceptanceTester $I): void public function testEditAction(AcceptanceTester $I): void { $I->amOnPage('/'.Fixtures::get('tablename'). - '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + '/search'); $I->see('Search result'); - $I->click("a[href*='edit/2']"); - $I->see('Lillian'); - $I->fillField('firstname', 'jeremy'); + $I->click(['link' => 'Edit']); + $I->seeInField('firstname', 'Hedley'); + $I->fillField('firstname', 'samedi'); $I->click('input[type=submit]'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + //Check if edit work + // $I->see('samedi'); + } /** @@ -197,13 +203,12 @@ public function testDeleteAction(AcceptanceTester $I): void $I->amOnPage('/'.Fixtures::get('tablename'). '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->see('Search result'); - $I->click("a[href*='delete/2']"); - $I->see('genscaffold was deleted successfully'); + $I->click("a[href*='delete/3']"); + $I->see('customer was deleted successfully'); $I->amOnPage('/'.Fixtures::get('tablename'). '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); $I->cantSee('Lilian'); - $I->click('input[type=submit]'); } /** From d8a29488ddddaa48e162a1c06688f115f9a8b228 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 17:02:09 +0200 Subject: [PATCH 18/31] feat: update tests --- tests/acceptance/Web/Template/ScaffoldVoltCest.php | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php index 417210d6f..c2114d171 100644 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/ScaffoldVoltCest.php @@ -191,7 +191,6 @@ public function testEditAction(AcceptanceTester $I): void $I->see('Search result'); //Check if edit work // $I->see('samedi'); - } /** @@ -201,14 +200,14 @@ public function testEditAction(AcceptanceTester $I): void public function testDeleteAction(AcceptanceTester $I): void { $I->amOnPage('/'.Fixtures::get('tablename'). - '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); + '/search'); $I->see('Search result'); - $I->click("a[href*='delete/3']"); + $I->click(['link' => 'Delete']); $I->see('customer was deleted successfully'); $I->amOnPage('/'.Fixtures::get('tablename'). - '/search?id=&firstname=&surname=&membertype=&dateofbirth=2019-04-17'); - $I->cantSee('Lilian'); + '/search'); + $I->cantSee('Hedley'); } /** @@ -217,9 +216,9 @@ public function testDeleteAction(AcceptanceTester $I): void */ public function after(AcceptanceTester $I): void { - /*$I->deleteFile(Fixtures::get('controller')); + $I->deleteFile(Fixtures::get('controller')); $I->deleteFile(Fixtures::get('model')); $I->deleteFile(Fixtures::get('layout')); - $I->deleteDir(Fixtures::get('views'));*/ + $I->deleteDir(Fixtures::get('views')); } } From 4089b76bfda88d692f5d0daf99ab58a2660c5c1f Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 17:21:45 +0200 Subject: [PATCH 19/31] feat:remove pgsql on ScaffoldVolt and add phtml tests --- .../Web/Template/ScaffoldVoltCest.php | 224 ------------------ 1 file changed, 224 deletions(-) delete mode 100644 tests/acceptance/Web/Template/ScaffoldVoltCest.php diff --git a/tests/acceptance/Web/Template/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/ScaffoldVoltCest.php deleted file mode 100644 index c2114d171..000000000 --- a/tests/acceptance/Web/Template/ScaffoldVoltCest.php +++ /dev/null @@ -1,224 +0,0 @@ -amOnPage('/webtools.php/scaffold/generate'); - $I->selectOption('form select[name=templateEngine]', 'Volt'); - - Fixtures::add('tablename', 'customers'); - - $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); - - $basePath = $I->grabValueFrom('#basePath'); - Fixtures::add('base_path', $basePath); - - $I->fillField('modelsNamespace', $namespace); - $I->checkOption('#force'); - $I->click('input[type=submit]'); - $I->see('Migrations'); - $I->see('All migrations that we managed to find'); - - //add namespace in loader file - $loaderFile = $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'config' . - DIRECTORY_SEPARATOR . 'loader.php'; - - $content = file_get_contents($loaderFile); - - //Add namespace - $returnLine = "\r\n"; - - $content .= $returnLine . - '$loader->registerNamespaces(' . - $returnLine . '[ '. - '"'.$namespace.'" => $config->application->modelsDir' . - $returnLine . ' ]' . - $returnLine . ');'; - - file_put_contents($loaderFile, $content); - } - - /** - * @group mysql - * @group pgsql - */ - public function testGenScaffoldFileExist(AcceptanceTester $I): void - { - $basePath = Fixtures::get('base_path'); - - Fixtures::add('controller', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'controllers' . - DIRECTORY_SEPARATOR . 'CustomersController.php'); - - Fixtures::add('model', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'models' . - DIRECTORY_SEPARATOR . 'Customers.php'); - - Fixtures::add('layout', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'layouts' . - DIRECTORY_SEPARATOR . 'customers.volt'); - - Fixtures::add('views', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'customers'); - - Fixtures::add('views_edit', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'customers' . - DIRECTORY_SEPARATOR . 'edit.volt'); - - Fixtures::add('views_index', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'customers' . - DIRECTORY_SEPARATOR . 'index.volt'); - - Fixtures::add('views_new', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'customers' . - DIRECTORY_SEPARATOR . 'new.volt'); - - Fixtures::add('views_search', $basePath . - DIRECTORY_SEPARATOR . 'app' . - DIRECTORY_SEPARATOR . 'views' . - DIRECTORY_SEPARATOR . 'customers' . - DIRECTORY_SEPARATOR . 'search.volt'); - - $I->seeFileFound(Fixtures::get('controller')); - $I->seeFileFound(Fixtures::get('model')); - $I->seeFileFound(Fixtures::get('layout')); - $I->seeFileFound(Fixtures::get('views_edit')); - $I->seeFileFound(Fixtures::get('views_index')); - $I->seeFileFound(Fixtures::get('views_search')); - } - - /** - * @group mysql - * @group pgsql - */ - public function testSearchAction(AcceptanceTester $I): void - { - $I->amOnPage('/'.Fixtures::get('tablename')); - $I->see(Fixtures::get('tablename')); - $I->see('Search '.Fixtures::get('tablename')); - $I->see('Dateofbirth'); - $I->fillField('dateofbirth', '2019-04-17'); - $I->click('input[type=submit]'); - - $I->see('Brandon'); - } - - /** - * @group mysql - * @group pgsql - */ - public function testSearchButtonAction(AcceptanceTester $I): void - { - $I->amOnPage('/'.Fixtures::get('tablename').'/search'); - $I->see('Search result'); - - $I->click("#next"); - - $I->see("K1S6X"); - - $I->click("#previous"); - - $I->see("U7B0Q"); - - $I->click("#last"); - - $I->see("N2Z7T"); - - $I->click("#first"); - - $I->see("U7B0Q"); - } - - - /** - * @group mysql - * @group pgsql - */ - public function testNewAction(AcceptanceTester $I): void - { - $I->amOnPage('/'.Fixtures::get('tablename').'/new'); - $I->see('Create '.Fixtures::get('tablename')); - $I->fillField('firstname', 'jeremy'); - $I->fillField('surname', 'jenovateurs'); - $I->fillField('membertype', 'aaa'); - $I->fillField('dateofbirth', '2019-04-17'); - $I->click('input[type=submit]'); - } - - /** - * @group mysql - * @group pgsql - */ - public function testEditAction(AcceptanceTester $I): void - { - $I->amOnPage('/'.Fixtures::get('tablename'). - '/search'); - $I->see('Search result'); - $I->click(['link' => 'Edit']); - $I->seeInField('firstname', 'Hedley'); - $I->fillField('firstname', 'samedi'); - $I->click('input[type=submit]'); - $I->amOnPage('/'.Fixtures::get('tablename'). - '/search'); - $I->see('Search result'); - //Check if edit work - // $I->see('samedi'); - } - - /** - * @group mysql - * @group pgsql - */ - public function testDeleteAction(AcceptanceTester $I): void - { - $I->amOnPage('/'.Fixtures::get('tablename'). - '/search'); - $I->see('Search result'); - $I->click(['link' => 'Delete']); - $I->see('customer was deleted successfully'); - - $I->amOnPage('/'.Fixtures::get('tablename'). - '/search'); - $I->cantSee('Hedley'); - } - - /** - * @group mysql - * @group pgsql - */ - public function after(AcceptanceTester $I): void - { - $I->deleteFile(Fixtures::get('controller')); - $I->deleteFile(Fixtures::get('model')); - $I->deleteFile(Fixtures::get('layout')); - $I->deleteDir(Fixtures::get('views')); - } -} From cd638667ba15331bbb516381d98eb7df51ff2d16 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 17:33:25 +0200 Subject: [PATCH 20/31] feat: add phtml tests --- src/Builder/Component/Model.php | 4 +- .../Web/Template/phtml/ScaffoldPhtmlCest.php | 216 ++++++++++++++++++ .../Web/Template/volt/ScaffoldVoltCest.php | 216 ++++++++++++++++++ 3 files changed, 435 insertions(+), 1 deletion(-) create mode 100644 tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php create mode 100644 tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php diff --git a/src/Builder/Component/Model.php b/src/Builder/Component/Model.php index 365407a5e..f43774f1e 100644 --- a/src/Builder/Component/Model.php +++ b/src/Builder/Component/Model.php @@ -338,9 +338,11 @@ public function build(): void foreach ($reflection->getProperties() as $property) { $propertyName = $property->getName(); + /** @var null|string $possibleFieldsValue */ + $possibleFieldsValue = $possibleFieldsTransformed[$propertyName]; if ($property->getDeclaringClass()->getName() != $fullClassName || - !empty($possibleFieldsTransformed[$propertyName])) { + !empty($possibleFieldsValue)) { continue; } diff --git a/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php b/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php new file mode 100644 index 000000000..9ad31e354 --- /dev/null +++ b/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php @@ -0,0 +1,216 @@ +amOnPage('/webtools.php/scaffold/generate'); + $I->selectOption('form select[name=templateEngine]', 'PHP'); + + Fixtures::add('tablename', 'customers'); + + $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); + + $basePath = $I->grabValueFrom('#basePath'); + Fixtures::add('base_path', $basePath); + + $I->fillField('modelsNamespace', $namespace); + $I->checkOption('#force'); + $I->click('input[type=submit]'); + $I->see('Migrations'); + $I->see('All migrations that we managed to find'); + + //add namespace in loader file + $loaderFile = $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'config' . + DIRECTORY_SEPARATOR . 'loader.php'; + + $content = file_get_contents($loaderFile); + + //Add namespace + $returnLine = "\r\n"; + + $content .= $returnLine . + '$loader->registerNamespaces(' . + $returnLine . '[ '. + '"'.$namespace.'" => $config->application->modelsDir' . + $returnLine . ' ]' . + $returnLine . ');'; + + file_put_contents($loaderFile, $content); + } + + /** + * @group mysql + */ + public function testGenScaffoldFileExist(AcceptanceTester $I): void + { + $basePath = Fixtures::get('base_path'); + + Fixtures::add('controller', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'controllers' . + DIRECTORY_SEPARATOR . 'CustomersController.php'); + + Fixtures::add('model', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'models' . + DIRECTORY_SEPARATOR . 'Customers.php'); + + Fixtures::add('layout', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'layouts' . + DIRECTORY_SEPARATOR . 'customers.phtml'); + + Fixtures::add('views', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers'); + + Fixtures::add('views_edit', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'edit.phtml'); + + Fixtures::add('views_index', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'index.phtml'); + + Fixtures::add('views_new', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'new.phtml'); + + Fixtures::add('views_search', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'search.phtml'); + + $I->seeFileFound(Fixtures::get('controller')); + $I->seeFileFound(Fixtures::get('model')); + $I->seeFileFound(Fixtures::get('layout')); + $I->seeFileFound(Fixtures::get('views_edit')); + $I->seeFileFound(Fixtures::get('views_index')); + $I->seeFileFound(Fixtures::get('views_search')); + } + + /** + * @group mysql + */ + public function testSearchAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename')); + $I->see(Fixtures::get('tablename')); + $I->see('Search '.Fixtures::get('tablename')); + $I->see('Dateofbirth'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); + + $I->see('Brandon'); + } + + /** + * @group mysql + */ + public function testSearchButtonAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename').'/search'); + $I->see('Search result'); + + $I->click("#next"); + + $I->see("K1S6X"); + + $I->click("#previous"); + + $I->see("U7B0Q"); + + $I->click("#last"); + + $I->see("N2Z7T"); + + $I->click("#first"); + + $I->see("U7B0Q"); + } + + + /** + * @group mysql + */ + public function testNewAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename').'/new'); + $I->see('Create '.Fixtures::get('tablename')); + $I->fillField('firstname', 'jeremy'); + $I->fillField('surname', 'jenovateurs'); + $I->fillField('membertype', 'aaa'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); + } + + /** + * @group mysql + */ + public function testEditAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + $I->click(['link' => 'Edit']); + $I->seeInField('firstname', 'Hedley'); + $I->fillField('firstname', 'samedi'); + $I->click('input[type=submit]'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + //Check if edit work + // $I->see('samedi'); + } + + /** + * @group mysql + */ + public function testDeleteAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + $I->click(['link' => 'Delete']); + $I->see('customer was deleted successfully'); + + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->cantSee('Hedley'); + } + + /** + * @group mysql + */ + public function after(AcceptanceTester $I): void + { + $I->deleteFile(Fixtures::get('controller')); + $I->deleteFile(Fixtures::get('model')); + $I->deleteFile(Fixtures::get('layout')); + $I->deleteDir(Fixtures::get('views')); + } +} diff --git a/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php new file mode 100644 index 000000000..fec68b123 --- /dev/null +++ b/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php @@ -0,0 +1,216 @@ +amOnPage('/webtools.php/scaffold/generate'); + $I->selectOption('form select[name=templateEngine]', 'Volt'); + + Fixtures::add('tablename', 'customers'); + + $I->selectOption('form select[name=tableName]', Fixtures::get('tablename')); + + $basePath = $I->grabValueFrom('#basePath'); + Fixtures::add('base_path', $basePath); + + $I->fillField('modelsNamespace', $namespace); + $I->checkOption('#force'); + $I->click('input[type=submit]'); + $I->see('Migrations'); + $I->see('All migrations that we managed to find'); + + //add namespace in loader file + $loaderFile = $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'config' . + DIRECTORY_SEPARATOR . 'loader.php'; + + $content = file_get_contents($loaderFile); + + //Add namespace + $returnLine = "\r\n"; + + $content .= $returnLine . + '$loader->registerNamespaces(' . + $returnLine . '[ '. + '"'.$namespace.'" => $config->application->modelsDir' . + $returnLine . ' ]' . + $returnLine . ');'; + + file_put_contents($loaderFile, $content); + } + + /** + * @group mysql + */ + public function testGenScaffoldFileExist(AcceptanceTester $I): void + { + $basePath = Fixtures::get('base_path'); + + Fixtures::add('controller', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'controllers' . + DIRECTORY_SEPARATOR . 'CustomersController.php'); + + Fixtures::add('model', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'models' . + DIRECTORY_SEPARATOR . 'Customers.php'); + + Fixtures::add('layout', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'layouts' . + DIRECTORY_SEPARATOR . 'customers.volt'); + + Fixtures::add('views', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers'); + + Fixtures::add('views_edit', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'edit.volt'); + + Fixtures::add('views_index', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'index.volt'); + + Fixtures::add('views_new', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'new.volt'); + + Fixtures::add('views_search', $basePath . + DIRECTORY_SEPARATOR . 'app' . + DIRECTORY_SEPARATOR . 'views' . + DIRECTORY_SEPARATOR . 'customers' . + DIRECTORY_SEPARATOR . 'search.volt'); + + $I->seeFileFound(Fixtures::get('controller')); + $I->seeFileFound(Fixtures::get('model')); + $I->seeFileFound(Fixtures::get('layout')); + $I->seeFileFound(Fixtures::get('views_edit')); + $I->seeFileFound(Fixtures::get('views_index')); + $I->seeFileFound(Fixtures::get('views_search')); + } + + /** + * @group mysql + */ + public function testSearchAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename')); + $I->see(Fixtures::get('tablename')); + $I->see('Search '.Fixtures::get('tablename')); + $I->see('Dateofbirth'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); + + $I->see('Brandon'); + } + + /** + * @group mysql + */ + public function testSearchButtonAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename').'/search'); + $I->see('Search result'); + + $I->click("#next"); + + $I->see("K1S6X"); + + $I->click("#previous"); + + $I->see("U7B0Q"); + + $I->click("#last"); + + $I->see("N2Z7T"); + + $I->click("#first"); + + $I->see("U7B0Q"); + } + + + /** + * @group mysql + */ + public function testNewAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename').'/new'); + $I->see('Create '.Fixtures::get('tablename')); + $I->fillField('firstname', 'jeremy'); + $I->fillField('surname', 'jenovateurs'); + $I->fillField('membertype', 'aaa'); + $I->fillField('dateofbirth', '2019-04-17'); + $I->click('input[type=submit]'); + } + + /** + * @group mysql + */ + public function testEditAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + $I->click(['link' => 'Edit']); + $I->seeInField('firstname', 'Hedley'); + $I->fillField('firstname', 'samedi'); + $I->click('input[type=submit]'); + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + //Check if edit work + // $I->see('samedi'); + } + + /** + * @group mysql + */ + public function testDeleteAction(AcceptanceTester $I): void + { + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->see('Search result'); + $I->click(['link' => 'Delete']); + $I->see('customer was deleted successfully'); + + $I->amOnPage('/'.Fixtures::get('tablename'). + '/search'); + $I->cantSee('Hedley'); + } + + /** + * @group mysql + */ + public function after(AcceptanceTester $I): void + { + $I->deleteFile(Fixtures::get('controller')); + $I->deleteFile(Fixtures::get('model')); + $I->deleteFile(Fixtures::get('layout')); + $I->deleteDir(Fixtures::get('views')); + } +} From 110c6c9a589ab5caba0d4bae58c97893d91e5c3d Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 17:50:00 +0200 Subject: [PATCH 21/31] feat: add phtml tests --- templates/scaffold/no-forms/views/search.phtml | 8 ++++---- tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/templates/scaffold/no-forms/views/search.phtml b/templates/scaffold/no-forms/views/search.phtml index 1bb7e5cc1..a759b2a3f 100644 --- a/templates/scaffold/no-forms/views/search.phtml +++ b/templates/scaffold/no-forms/views/search.phtml @@ -49,10 +49,10 @@
diff --git a/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php b/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php index 9ad31e354..8d60a5009 100644 --- a/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php +++ b/tests/acceptance/Web/Template/phtml/ScaffoldPhtmlCest.php @@ -208,9 +208,9 @@ public function testDeleteAction(AcceptanceTester $I): void */ public function after(AcceptanceTester $I): void { - $I->deleteFile(Fixtures::get('controller')); + /*$I->deleteFile(Fixtures::get('controller')); $I->deleteFile(Fixtures::get('model')); $I->deleteFile(Fixtures::get('layout')); - $I->deleteDir(Fixtures::get('views')); + $I->deleteDir(Fixtures::get('views'));*/ } } From 661e2cad41e3bd45a24295d47f0a5c90155b3edb Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 18:02:43 +0200 Subject: [PATCH 22/31] feat: add phtml tests --- tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php b/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php index fec68b123..63c78430b 100644 --- a/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php +++ b/tests/acceptance/Web/Template/volt/ScaffoldVoltCest.php @@ -142,7 +142,7 @@ public function testSearchButtonAction(AcceptanceTester $I): void $I->click("#previous"); - $I->see("U7B0Q"); + $I->see("W2Q7K"); $I->click("#last"); @@ -150,7 +150,7 @@ public function testSearchButtonAction(AcceptanceTester $I): void $I->click("#first"); - $I->see("U7B0Q"); + $I->see("W2Q7K"); } @@ -177,7 +177,7 @@ public function testEditAction(AcceptanceTester $I): void '/search'); $I->see('Search result'); $I->click(['link' => 'Edit']); - $I->seeInField('firstname', 'Hedley'); + $I->seeInField('firstname', 'Lillian'); $I->fillField('firstname', 'samedi'); $I->click('input[type=submit]'); $I->amOnPage('/'.Fixtures::get('tablename'). @@ -200,7 +200,7 @@ public function testDeleteAction(AcceptanceTester $I): void $I->amOnPage('/'.Fixtures::get('tablename'). '/search'); - $I->cantSee('Hedley'); + $I->cantSee('samedi'); } /** From 3826cbc87f62b2523ea71c6fab5ac08abe331a3b Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 17 Apr 2020 18:24:23 +0200 Subject: [PATCH 23/31] fix: trouble with phpstan --- src/Builder/Project/Simple.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Builder/Project/Simple.php b/src/Builder/Project/Simple.php index 8a13c926b..5ef606419 100644 --- a/src/Builder/Project/Simple.php +++ b/src/Builder/Project/Simple.php @@ -70,7 +70,7 @@ public function build() ->createControllerFile() ->createHtrouterFile(); - if ($this->options->has('enableWebTools') && true === $this->options->enableWebTools) { + if ($this->options->has('enableWebTools') && true === $this->options->get('enableWebTools')) { Tools::install($this->options->get('projectPath')); } From a1f4992b0b2cb4c8bfa5b89aeaf83275dcc98b9e Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 21:29:13 +0100 Subject: [PATCH 24/31] Change autoload paths --- bootstrap/autoload.php | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/bootstrap/autoload.php b/bootstrap/autoload.php index 848321a64..c20d54ae4 100644 --- a/bootstrap/autoload.php +++ b/bootstrap/autoload.php @@ -1,5 +1,4 @@ Date: Sat, 25 Apr 2020 21:29:29 +0100 Subject: [PATCH 25/31] Bump version to 4.0.3 --- src/Version.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Version.php b/src/Version.php index 11c77b3e0..4a205e537 100644 --- a/src/Version.php +++ b/src/Version.php @@ -27,7 +27,7 @@ class Version extends PhVersion // phpcs:disable protected static function _getVersion(): array { - return [4, 0, 1, 0, 0]; + return [4, 0, 3, 0, 0]; } // phpcs:enable } From c572000023df17f023e0e8ec0418c379ce627c7a Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 21:40:34 +0100 Subject: [PATCH 26/31] Remove duplicate code --- bootstrap/autoload.php | 7 ------- 1 file changed, 7 deletions(-) diff --git a/bootstrap/autoload.php b/bootstrap/autoload.php index c20d54ae4..fd70fb633 100644 --- a/bootstrap/autoload.php +++ b/bootstrap/autoload.php @@ -113,13 +113,6 @@ } } -foreach ($vendorAutoload as $file) { - if (file_exists($file)) { - require_once $file; - break; - } -} - if (false === class_exists('Composer\Autoload\ClassLoader', false)) { throw new Exception('Please run composer install'); } From cfd89db327ac5e0c1d5b8762baeda521b41b8dd1 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 21:42:20 +0100 Subject: [PATCH 27/31] #1378 - Add autoload paths --- bootstrap/autoload.php | 1 + 1 file changed, 1 insertion(+) diff --git a/bootstrap/autoload.php b/bootstrap/autoload.php index fd70fb633..a0749ceda 100644 --- a/bootstrap/autoload.php +++ b/bootstrap/autoload.php @@ -101,6 +101,7 @@ * Register the Composer autoloader (if any) */ $vendorAutoload = [ + __DIR__ . DS . '..' . DS . '..' . DS . '..' . DS . 'autoload.php', __DIR__ . DS . '..' . DS . '..' . DS . 'autoload.php', __DIR__ . DS . '..' . DS . 'vendor' . DS . 'autoload.php', __DIR__ . DS . 'vendor' . DS . 'autoload.php', From c1f3aad59fc26cb3b3527c46f139ac16202b5bce Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 21:44:19 +0100 Subject: [PATCH 28/31] Updated CHANGELOG.md --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a4eb22fd..82fc6afd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,10 @@ +# [4.0.3](https://github.com/phalcon/cphalcon/releases/tag/v4.0.3) (2020-xx-xx) +## Fixed +- Fixed global autoload + # [4.0.2](https://github.com/phalcon/cphalcon/releases/tag/v4.0.2) (2020-04-11) ## Added - Added launcher.bat to run cli with Windows and used DIRECTORY_SEPARATOR to find the file. [#1440](https://github.com/phalcon/phalcon-devtools/issues/1440) [@jenovateurs](https://github.com/jenovateurs) -## Changed ## Fixed - Fixed include order of files in created project [#1417](https://github.com/phalcon/phalcon-devtools/issues/1417) From c2da8b7f1ee19e9c28a83f4e47955c06582c0b5a Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 23:00:56 +0100 Subject: [PATCH 29/31] Enable 'force-autodiscovery' in box.json --- box.json | 1 + 1 file changed, 1 insertion(+) diff --git a/box.json b/box.json index ce1a6eab5..f1854b048 100644 --- a/box.json +++ b/box.json @@ -1,4 +1,5 @@ { + "force-autodiscovery": true, "directories": [ "bootstrap", "resources", From 2de267db8e7f46fe7b4bb8de3e5ea17306df9ca1 Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sat, 25 Apr 2020 23:06:08 +0100 Subject: [PATCH 30/31] Updated CHANGELOG.md --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 82fc6afd0..b2627b923 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ # [4.0.3](https://github.com/phalcon/cphalcon/releases/tag/v4.0.3) (2020-xx-xx) ## Fixed -- Fixed global autoload +- Fixed global autoload [#1378](https://github.com/phalcon/phalcon-devtools/issues/1378) +- Fixed empty `vendor/` directory inside `phalcon.phar` during building [#1456](https://github.com/phalcon/phalcon-devtools/pull/1456) # [4.0.2](https://github.com/phalcon/cphalcon/releases/tag/v4.0.2) (2020-04-11) ## Added From 0ea555e3b83f7ea2a50092607540a28061d3deed Mon Sep 17 00:00:00 2001 From: Anton Vasiliev Date: Sun, 26 Apr 2020 00:03:16 +0100 Subject: [PATCH 31/31] Updated CHANGELOG.md --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b2627b923..5a55f77b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ -# [4.0.3](https://github.com/phalcon/cphalcon/releases/tag/v4.0.3) (2020-xx-xx) +# [4.0.3](https://github.com/phalcon/cphalcon/releases/tag/v4.0.3) (2020-04-26) ## Fixed +- Fixed notice error during SQLite connection [#1451](https://github.com/phalcon/phalcon-devtools/pull/1451) - Fixed global autoload [#1378](https://github.com/phalcon/phalcon-devtools/issues/1378) - Fixed empty `vendor/` directory inside `phalcon.phar` during building [#1456](https://github.com/phalcon/phalcon-devtools/pull/1456)