M1: PHPUnit test suite for crypto, repository and resumable runs

Dev tooling via composer (phpunit, psalm, nextcloud/ocp); vendor/ is
mounted from outside the repository by a helper script. 28 unit tests
ported from the phase-0 spikes (round trips, corruption, wrong keys,
dedup, incremental runs, partial restore, tampering, object binding,
time-boxed steps, file changed between steps).
This commit is contained in:
2026-10-02 00:32:56 +02:00
parent 08e4ed52d8
commit bf3437ae10
11 changed files with 5438 additions and 3 deletions
+34
View File
@@ -0,0 +1,34 @@
{
"name": "dillardblom/ng_backup",
"description": "NG Backup: encrypted, incremental Nextcloud backups",
"license": "AGPL-3.0-or-later",
"type": "project",
"autoload": {
"psr-4": {
"OCA\\NgBackup\\": "lib/"
}
},
"autoload-dev": {
"psr-4": {
"OCA\\NgBackup\\Tests\\": "tests/"
}
},
"require": {
"php": ">=8.1"
},
"require-dev": {
"phpunit/phpunit": "^10.5",
"nextcloud/ocp": "dev-stable32",
"vimeo/psalm": "^6.0"
},
"config": {
"optimize-autoloader": true,
"platform": {
"php": "8.2.27"
}
},
"scripts": {
"test:unit": "phpunit -c tests/phpunit.xml --testsuite unit",
"psalm": "psalm --no-cache --threads=1"
}
}