Skip to content

Commit 0f595b0

Browse files
authored
Merge pull request #364 from WebFiori/fix/baseline-test-failures
fix(test): resolve all baseline test failures
2 parents caf69f1 + 6cb7f92 commit 0f595b0

3 files changed

Lines changed: 44 additions & 25 deletions

File tree

tests/WebFiori/Framework/Tests/Cli/AddDbConnectionCommandTest.php

Lines changed: 28 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public function testAddDBConnection00() {
3131
"Select database type:\n",
3232
"0: mysql\n",
3333
"1: mssql\n",
34+
"2: sqlite\n",
3435
"Database host: Enter = '127.0.0.1'\n",
3536
"Port number: Enter = '3306'\n",
3637
"Username:\n",
@@ -70,19 +71,20 @@ public function testAddDBConnection01() {
7071
$this->assertEquals("Select database type:\n", $output[0]);
7172
$this->assertEquals("0: mysql\n", $output[1]);
7273
$this->assertEquals("1: mssql\n", $output[2]);
73-
$this->assertEquals("Database host: Enter = '127.0.0.1'\n", $output[3]);
74-
$this->assertEquals("Port number: Enter = '3306'\n", $output[4]);
75-
$this->assertEquals("Username:\n", $output[5]);
76-
$this->assertEquals("Password:\n", $output[6]);
77-
$this->assertEquals("***********\n", $output[7]);
78-
$this->assertEquals("Database name:\n", $output[8]);
79-
$this->assertEquals("Give your connection a friendly name: Enter = '$connName'\n", $output[9]);
80-
$this->assertEquals("Trying to connect to the database...\n", $output[10]);
81-
$this->assertEquals("Trying with 'localhost'...\n", $output[11]);
82-
$this->assertEquals("Error: Unable to connect to the database.\n", $output[12]);
83-
$this->assertStringContainsString("Error: Unable to connect to database: 1045 - Access denied for user", $output[13]);
84-
$this->assertEquals("Would you like to store connection information anyway?(y/N)\n", $output[14]);
85-
$this->assertEquals("Success: Connection information was stored in application configuration.\n", $output[15]);
74+
$this->assertEquals("2: sqlite\n", $output[3]);
75+
$this->assertEquals("Database host: Enter = '127.0.0.1'\n", $output[4]);
76+
$this->assertEquals("Port number: Enter = '3306'\n", $output[5]);
77+
$this->assertEquals("Username:\n", $output[6]);
78+
$this->assertEquals("Password:\n", $output[7]);
79+
$this->assertEquals("***********\n", $output[8]);
80+
$this->assertEquals("Database name:\n", $output[9]);
81+
$this->assertEquals("Give your connection a friendly name: Enter = '$connName'\n", $output[10]);
82+
$this->assertEquals("Trying to connect to the database...\n", $output[11]);
83+
$this->assertEquals("Trying with 'localhost'...\n", $output[12]);
84+
$this->assertEquals("Error: Unable to connect to the database.\n", $output[13]);
85+
$this->assertStringContainsString("Error: Unable to connect to database: 1045 - Access denied for user", $output[14]);
86+
$this->assertEquals("Would you like to store connection information anyway?(y/N)\n", $output[15]);
87+
$this->assertEquals("Success: Connection information was stored in application configuration.\n", $output[16]);
8688
}
8789
/**
8890
* @test
@@ -111,18 +113,19 @@ public function testAddDBConnection02() {
111113
$this->assertEquals("Select database type:\n", $output[0]);
112114
$this->assertEquals("0: mysql\n", $output[1]);
113115
$this->assertEquals("1: mssql\n", $output[2]);
114-
$this->assertEquals("Database host: Enter = '127.0.0.1'\n", $output[3]);
115-
$this->assertEquals("Port number: Enter = '3306'\n", $output[4]);
116-
$this->assertEquals("Username:\n", $output[5]);
117-
$this->assertEquals("Password:\n", $output[6]);
118-
$this->assertEquals("***********\n", $output[7]);
119-
$this->assertEquals("Database name:\n", $output[8]);
120-
$this->assertEquals("Give your connection a friendly name: Enter = '$connName'\n", $output[9]);
121-
$this->assertEquals("Trying to connect to the database...\n", $output[10]);
122-
$this->assertEquals("Trying with 'localhost'...\n", $output[11]);
123-
$this->assertEquals("Error: Unable to connect to the database.\n", $output[12]);
124-
$this->assertStringContainsString("Error: Unable to connect to database: 1045 - Access denied for user", $output[13]);
125-
$this->assertEquals("Would you like to store connection information anyway?(y/N)\n", $output[14]);
116+
$this->assertEquals("2: sqlite\n", $output[3]);
117+
$this->assertEquals("Database host: Enter = '127.0.0.1'\n", $output[4]);
118+
$this->assertEquals("Port number: Enter = '3306'\n", $output[5]);
119+
$this->assertEquals("Username:\n", $output[6]);
120+
$this->assertEquals("Password:\n", $output[7]);
121+
$this->assertEquals("***********\n", $output[8]);
122+
$this->assertEquals("Database name:\n", $output[9]);
123+
$this->assertEquals("Give your connection a friendly name: Enter = '$connName'\n", $output[10]);
124+
$this->assertEquals("Trying to connect to the database...\n", $output[11]);
125+
$this->assertEquals("Trying with 'localhost'...\n", $output[12]);
126+
$this->assertEquals("Error: Unable to connect to the database.\n", $output[13]);
127+
$this->assertStringContainsString("Error: Unable to connect to database: 1045 - Access denied for user", $output[14]);
128+
$this->assertEquals("Would you like to store connection information anyway?(y/N)\n", $output[15]);
126129
}
127130
/**
128131
* @test

tests/WebFiori/Framework/Tests/Cli/IntegrationAllCommandsTest.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ public function testAddDBConnection00() {
6060
"Select database type:\n",
6161
"0: mysql\n",
6262
"1: mssql\n",
63+
"2: sqlite\n",
6364
"Database host: Enter = '127.0.0.1'\n",
6465
"Port number: Enter = '3306'\n",
6566
"Username:\n",

tests/WebFiori/Framework/Tests/Session/SessionsManagerTest.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@
1616
* @author Ibrahim
1717
*/
1818
class SessionsManagerTest extends TestCase {
19+
20+
private function skipIfMssqlUnavailable(): void {
21+
try {
22+
$dsn = 'sqlsrv:Server='.SQL_SERVER_HOST.',1433;Database='.SQL_SERVER_DB.';TrustServerCertificate=true';
23+
new \PDO($dsn, SQL_SERVER_USER, SQL_SERVER_PASS);
24+
} catch (\Throwable $e) {
25+
$this->markTestSkipped('MSSQL not available: '.$e->getMessage());
26+
}
27+
}
1928
/**
2029
* @test
2130
*/
@@ -159,6 +168,7 @@ public function testDatabaseSession00() {
159168
* @test
160169
*/
161170
public function testDatabaseSession01() {
171+
$this->skipIfMssqlUnavailable();
162172
$this->expectException(DatabaseException::class);
163173
$this->expectExceptionMessage("208 - [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Invalid object name 'session_data'.");
164174
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
@@ -174,6 +184,7 @@ public function testDatabaseSession01() {
174184
* @test
175185
*/
176186
public function testDatabaseSession02() {
187+
$this->skipIfMssqlUnavailable();
177188
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
178189
'TrustServerCertificate' => 'true'
179190
]);
@@ -282,6 +293,7 @@ public function testDatabaseSession02() {
282293
* @test
283294
*/
284295
public function testDropDbTables00() {
296+
$this->skipIfMssqlUnavailable();
285297
$this->expectException(DatabaseException::class);
286298
$this->expectExceptionMessage("208 - [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Invalid object name 'session_data'.");
287299
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
@@ -313,6 +325,7 @@ public function testGetSessionIDFromRequest() {
313325
* @test
314326
*/
315327
public function testInitSessionsDb() {
328+
$this->skipIfMssqlUnavailable();
316329
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
317330
'TrustServerCertificate' => 'true'
318331
]);
@@ -330,6 +343,7 @@ public function testInitSessionsDb() {
330343
* @test
331344
*/
332345
public function testDbSessions00() {
346+
$this->skipIfMssqlUnavailable();
333347
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
334348
'TrustServerCertificate' => 'true'
335349
]);
@@ -433,6 +447,7 @@ public function testDbSessions00() {
433447
* @test
434448
*/
435449
public function testCloseDb00() {
450+
$this->skipIfMssqlUnavailable();
436451
$conn = new ConnectionInfo('mssql', SQL_SERVER_USER, SQL_SERVER_PASS, SQL_SERVER_DB, SQL_SERVER_HOST, 1433, [
437452
'TrustServerCertificate' => 'true'
438453
]);

0 commit comments

Comments
 (0)