dummyDbi = $this->createDbiDummy(); $this->dbi = $this->createDatabaseInterface($this->dummyDbi); DatabaseInterface::$instance = $this->dbi; Current::$database = 'db'; Current::$table = 'table'; $config = Config::getInstance(); $config->selectedServer['DisableIS'] = false; $config->selectedServer['host'] = 'localhost'; $this->data = new Data($this->dbi, $config); } public function testSlowLog(): void { $response = new ResponseRenderer(); $dbi = DatabaseInterface::getInstance(); $controller = new SlowLogController( $response, new Template(), $this->data, new Monitor($dbi), $dbi, ); $request = self::createStub(ServerRequest::class); $request->method('isAjax')->willReturn(true); $request->method('getParsedBodyParam')->willReturnMap([['time_start', null, '0'], ['time_end', null, '10']]); $this->dummyDbi->addSelectDb('mysql'); $controller($request); $this->dummyDbi->assertAllSelectsConsumed(); $ret = $response->getJSONResult(); $resultRows = [['sql_text' => 'insert sql_text', '#' => 11], ['sql_text' => 'update sql_text', '#' => 10]]; $resultSum = ['insert' => 11, 'TOTAL' => 21, 'update' => 10]; self::assertSame(2, $ret['message']['numRows']); self::assertEquals($resultRows, $ret['message']['rows']); self::assertEquals($resultSum, $ret['message']['sum']); } }