28 lines
655 B
Markdown
28 lines
655 B
Markdown
# Case: `init-is-idempotent-on-existing-db`
|
|
|
|
## 用例意义
|
|
|
|
验证 `init` 可以对已初始化过的数据库重复执行,而不会报错或破坏已有 schema。
|
|
|
|
## 前置条件
|
|
|
|
- `TMPDIR/coord.db` 已经执行过一次 `inbox --db TMPDIR/coord.db --json init`
|
|
|
|
## 输入
|
|
|
|
```bash
|
|
inbox --db TMPDIR/coord.db --json init
|
|
inbox --db TMPDIR/coord.db --json init
|
|
```
|
|
|
|
## 预期输出
|
|
|
|
- 两次命令都退出码为 `0`
|
|
- 两次响应都返回 `data.status == "initialized"`
|
|
- 两次响应都返回相同的 `data.db_path`
|
|
|
|
## 断言结论
|
|
|
|
- `init` 是幂等操作
|
|
- 对已存在 schema 的重复初始化不应引入额外迁移失败或状态漂移
|