createDatabaseInterface();
//$_POST
$_POST['primary_add_user'] = 'primary_add_user';
$config = Config::getInstance();
$config->settings['MaxRows'] = 10;
$config->settings['ServerDefault'] = 'server';
$config->settings['RememberSorting'] = true;
$config->settings['SQP'] = [];
$config->settings['MaxCharactersInDisplayedSQL'] = 1000;
$config->settings['ShowSQL'] = true;
$config->settings['TableNavigationLinksMode'] = 'icons';
$config->settings['LimitChars'] = 100;
$config->settings['ShowHint'] = true;
Current::$table = 'table';
UrlParams::$params = [];
$this->replicationGui = new ReplicationGui(new Replication(DatabaseInterface::getInstance()), new Template());
}
public function testGetHtmlForPrimaryReplication(): void
{
$html = $this->replicationGui->getHtmlForPrimaryReplication(null, false, 'primary_add_user', null, null);
//validate 1: Primary replication
self::assertStringContainsString('
', $html);
self::assertStringContainsString('This server is configured as primary in a replication process.', $html);
//validate 2: getHtmlForReplicationStatusTable
self::assertStringContainsString('Server ID', $html);
self::assertStringContainsString('
Host | ', $html);
//replica host
self::assertStringContainsString('
Server_id1 | ', $html);
self::assertStringContainsString('
Server_id2 | ', $html);
self::assertStringContainsString('
Host1 | ', $html);
self::assertStringContainsString('
Host2 | ', $html);
//Notice
self::assertStringContainsString('Only replicas started with the', $html);
//validate 4: navigation URL
self::assertStringContainsString('
', $html);
}
public function testGetHtmlForReplicaConfiguration(): void
{
$replicationInfo = new ReplicationInfo(DatabaseInterface::getInstance());
$replicationInfo->load();
//Call the test function
$html = $this->replicationGui->getHtmlForReplicaConfiguration(
null,
true,
$replicationInfo->getReplicaStatus(),
isset($_POST['replica_configure']),
);
//legend
self::assertStringContainsString('', $html);
self::assertStringContainsString('', $html);
//notice
self::assertStringContainsString('Server is configured as replica in a replication process.', $html);
//replica session
self::assertStringContainsString('
replicationGui->getHtmlForReplicationChangePrimary('replica_changeprimary');
self::assertStringContainsString('