diff --git a/e2etests-cli/main_test.go b/e2etests-cli/main_test.go
index 7a8fd1844..f9b4c4565 100644
--- a/e2etests-cli/main_test.go
+++ b/e2etests-cli/main_test.go
@@ -52,6 +52,39 @@ func TestCLI_E2E(t *testing.T) {
},
{
name: "multiboard/life",
+ run: func(t *testing.T, ctx context.Context, dir string, env *xos.Env) {
+ writeFile(t, dir, "life.d2", `x -> y
+layers: {
+ core: {
+ belief
+ food
+ diet
+ }
+ broker: {
+ mortgage
+ realtor
+ }
+ stocks: {
+ TSX
+ NYSE
+ NASDAQ
+ }
+}
+
+scenarios: {
+ why: {
+ y -> x
+ }
+}
+`)
+ err := runTestMain(t, ctx, dir, env, "life.d2")
+ assert.Success(t, err)
+
+ assert.TestdataDir(t, filepath.Join(dir, "life"))
+ },
+ },
+ {
+ name: "multiboard/life_index_d2",
run: func(t *testing.T, ctx context.Context, dir string, env *xos.Env) {
writeFile(t, dir, "life/index.d2", `x -> y
layers: {
diff --git a/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/index.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/index.exp.svg
new file mode 100644
index 000000000..4787423c1
--- /dev/null
+++ b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/index.exp.svg
@@ -0,0 +1,23 @@
+
diff --git a/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/broker.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/broker.exp.svg
new file mode 100644
index 000000000..adaadb7a2
--- /dev/null
+++ b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/broker.exp.svg
@@ -0,0 +1,23 @@
+mortgagerealtor
+
+
+
diff --git a/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/core.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/core.exp.svg
new file mode 100644
index 000000000..c3aac3445
--- /dev/null
+++ b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/core.exp.svg
@@ -0,0 +1,23 @@
+belieffooddiet
+
+
+
diff --git a/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/stocks.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/stocks.exp.svg
new file mode 100644
index 000000000..bbfda5151
--- /dev/null
+++ b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/layers/stocks.exp.svg
@@ -0,0 +1,23 @@
+TSXNYSENASDAQ
+
+
+
diff --git a/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/scenarios/why.exp.svg b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/scenarios/why.exp.svg
new file mode 100644
index 000000000..e5ed30e0c
--- /dev/null
+++ b/e2etests-cli/testdata/TestCLI_E2E/multiboard/life_index_d2/scenarios/why.exp.svg
@@ -0,0 +1,23 @@
+xy
+
+
+