tests(f2/repl): migrate basic tests

Change-Id: I22241734a7249d376c86b3a226c5f1a82c03fd33
This commit is contained in:
rootile
2026-06-11 16:19:20 +02:00
parent f7ce20d879
commit ab8cdcc9b8
9 changed files with 286 additions and 208 deletions
@@ -0,0 +1,71 @@
---
args: ['-v']
---
Adding variables gives simple user feedback
```nix
foo = 5
foo = 10
```
```output
Added foo.
Updated foo.
```
Optional semicolon at the end, allow setting multiple variables in one line
```nix
foo = 2;
foo = 2; bar = 3;
```
```output
Updated foo.
Updated foo.
Added bar.
```
String identifiers work
```nix
"silly name" = null
```
```output
Added "silly name".
```
Attrset syntax works, but without dynamic attrs or merging
```nix
foo.bar = "baz"
foo
foo."this works" = 42
foo
foo.bar = "baz"; foo.more = "error"
${foo} = 10
```
```output
Updated foo.
{ bar = "baz"; }
Updated foo.
{ "this works" = 42; }
error: attribute 'foo' already defined at «string»:1:18
at «string»:1:12:
1| foo.bar = "baz"; foo.more = "error"
| ^
error: dynamic attributes not allowed in REPL
at «string»:1:1:
1| ${foo} = 10
| ^
```