Volkov: добавить Sprinter Commander
Реализовать двухпанельный Commander от платформенного PoC до этапов P6-P20: EMM-каталог, сортировку и выбор, операции с файлами и деревьями, транзакционное копирование, метаданные, политику конфликтов и предварительную проверку свободного места. Добавить проектную документацию, HDD/MAME-сценарии и проверенные артефакты. Расширить libc операцией bank_write_page, исправлением режима O_RDONLY и связанными регрессионными проверками.
This commit is contained in:
+53
@@ -0,0 +1,53 @@
|
||||
#!/bin/sh
|
||||
# Создаёт отдельный FAT16 HDD для интеграционных тестов Commander.
|
||||
# Аргументы: [образ [исполняемый файл]]; по умолчанию — локальный build/HDD.
|
||||
|
||||
set -eu
|
||||
|
||||
PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
||||
DEFAULT_IMAGE="$PROJECT_DIR/build/hdd/p3_stress.chd"
|
||||
IMAGE=${1:-$DEFAULT_IMAGE}
|
||||
EXECUTABLE=${2:-$PROJECT_DIR/build/sprcmd.exe}
|
||||
TEMP_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sprcmd-hdd.XXXXXX")
|
||||
FIXTURE_ROOT="$TEMP_DIR/P3DATA"
|
||||
|
||||
cleanup()
|
||||
{
|
||||
rm -rf -- "$TEMP_DIR"
|
||||
}
|
||||
trap cleanup EXIT HUP INT TERM
|
||||
|
||||
mkdir -p "$(dirname -- "$IMAGE")"
|
||||
mkdir "$FIXTURE_ROOT"
|
||||
mkdir "$FIXTURE_ROOT/EMPTY" "$FIXTURE_ROOT/TESTDIR" \
|
||||
"$FIXTURE_ROOT/MANY" "$FIXTURE_ROOT/BIGDIR"
|
||||
|
||||
cp "$PROJECT_DIR/tests/p3_data/INNER.TXT" \
|
||||
"$FIXTURE_ROOT/TESTDIR/INNER.TXT"
|
||||
|
||||
i=0
|
||||
while [ "$i" -lt 40 ]; do
|
||||
name=$(printf 'M%07d.TXT' "$i")
|
||||
cp "$PROJECT_DIR/tests/p3_data/P3ROOT.TXT" \
|
||||
"$FIXTURE_ROOT/MANY/$name"
|
||||
i=$((i + 1))
|
||||
done
|
||||
|
||||
i=0
|
||||
while [ "$i" -lt 680 ]; do
|
||||
name=$(printf 'B%07d.DAT' "$i")
|
||||
cp "$PROJECT_DIR/tests/p3_data/P3ROOT.TXT" \
|
||||
"$FIXTURE_ROOT/BIGDIR/$name"
|
||||
i=$((i + 1))
|
||||
done
|
||||
|
||||
cp "$PROJECT_DIR/tests/p3_data/P3ROOT.TXT" "$FIXTURE_ROOT/P3ROOT.TXT"
|
||||
cp "$PROJECT_DIR/tests/p3_data/ZETA.BIN" "$FIXTURE_ROOT/ZETA.BIN"
|
||||
|
||||
"$PROJECT_DIR/../../toolchain/make_hdd.sh" "$IMAGE" \
|
||||
"$EXECUTABLE" \
|
||||
"$FIXTURE_ROOT/EMPTY" "$FIXTURE_ROOT/TESTDIR" \
|
||||
"$FIXTURE_ROOT/MANY" "$FIXTURE_ROOT/BIGDIR" \
|
||||
"$FIXTURE_ROOT/P3ROOT.TXT" "$FIXTURE_ROOT/ZETA.BIN"
|
||||
|
||||
echo "P3 stress HDD ready: $IMAGE (D:, executable: SPRCMD.EXE)"
|
||||
Reference in New Issue
Block a user