18 lines
829 B
PHP
18 lines
829 B
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
require_once PLUGIN_ROOT . '/exec/lib/DirectAdminSyncRepository.php';
|
|
|
|
test('directadmin sync repository only targets plugin tracked entries', function (): void {
|
|
$repo = new DirectAdminSyncRepository(TEST_TMP . '/data');
|
|
$repo->replaceRuleEntries('alice', 'rule-1', [
|
|
['domain' => 'example.com', 'mailbox' => 'info', 'api_key' => 'info@example.com'],
|
|
['domain' => 'example.com', 'mailbox' => 'sales', 'api_key' => 'sales@example.com'],
|
|
]);
|
|
|
|
assert_same(2, count($repo->entriesForRule('alice', 'rule-1')));
|
|
assert_same([], $repo->entriesForRule('bob', 'rule-1'));
|
|
assert_same(['info@example.com', 'sales@example.com'], array_column($repo->deleteRuleEntries('alice', 'rule-1'), 'api_key'));
|
|
assert_same([], $repo->entriesForRule('alice', 'rule-1'));
|
|
});
|