Files
global-autoresponder/tests/directadmin_sync_repository_test.php
2026-06-02 19:19:00 +02:00

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'));
});