From c8cd855fc810f33ff18a33f77ebd1785b54deeb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maur=C3=ADcio=20Meneghini=20Fauth?= Date: Tue, 22 Feb 2022 14:45:35 -0300 Subject: [PATCH] Add basic test for `Table\SqlController` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MaurĂ­cio Meneghini Fauth --- .../Controllers/Table/SqlControllerTest.php | 70 +++++++++++++++++++ .../Table/StructureControllerTest.php | 1 - 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 test/classes/Controllers/Table/SqlControllerTest.php diff --git a/test/classes/Controllers/Table/SqlControllerTest.php b/test/classes/Controllers/Table/SqlControllerTest.php new file mode 100644 index 0000000000..6d35bf4a0f --- /dev/null +++ b/test/classes/Controllers/Table/SqlControllerTest.php @@ -0,0 +1,70 @@ +defaultServer; + + $this->dummyDbi->addSelectDb('test_db'); + $this->dummyDbi->addResult('SHOW TABLES LIKE \'test_table\';', [['test_table']]); + + $pageSettings = new PageSettings('Sql'); + $fields = $this->dbi->getColumns('test_db', 'test_table', true); + $template = new Template(); + + $expected = $pageSettings->getHTML(); + $expected .= $template->render('sql/query', [ + 'legend' => 'Run SQL query/queries on table test_db.test_table: ' . MySQLDocumentation::show('SELECT'), + 'textarea_cols' => 40, + 'textarea_rows' => 15, + 'textarea_auto_select' => false, + 'columns_list' => [ + 'id' => $fields['id'], + 'name' => $fields['name'], + 'datetimefield' => $fields['datetimefield'], + ], + 'codemirror_enable' => true, + 'has_bookmark' => false, + 'delimiter' => ';', + 'retain_query_box' => false, + 'is_upload' => true, + 'db' => 'test_db', + 'table' => 'test_table', + 'goto' => 'index.php?route=/table/sql&server=2&lang=en', + 'query' => 'SELECT * FROM `test_table` WHERE 1', + 'display_tab' => 'full', + 'bookmarks' => [], + 'can_convert_kanji' => false, + 'is_foreign_key_check' => true, + ]); + + $response = new ResponseRenderer(); + (new SqlController($response, $template, new SqlQueryForm($template)))(); + $this->assertSame($expected, $response->getHTMLResult()); + } +} diff --git a/test/classes/Controllers/Table/StructureControllerTest.php b/test/classes/Controllers/Table/StructureControllerTest.php index 18df5a1ed3..9ae2974a53 100644 --- a/test/classes/Controllers/Table/StructureControllerTest.php +++ b/test/classes/Controllers/Table/StructureControllerTest.php @@ -139,6 +139,5 @@ class StructureControllerTest extends AbstractTestCase ]); $this->assertSame($expected, $response->getHTMLResult()); - $this->assertAllQueriesConsumed(); } }