Merge pull request #2180 from alixander/nested-layer-ref

d2lsp: fix nested board finding
This commit is contained in:
Alexander Wang 2024-10-29 19:14:14 -06:00 committed by GitHub
commit b2cf9d3647
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 13 additions and 3 deletions

View file

@ -1838,7 +1838,7 @@ func (m *Map) FindBoardRoot(path []string) *Map {
if len(path) == 1 {
return f.Map()
}
return layersf.Map().FindBoardRoot(path[1:])
return f.Map().FindBoardRoot(path[1:])
}
}
}
@ -1849,7 +1849,7 @@ func (m *Map) FindBoardRoot(path []string) *Map {
if len(path) == 1 {
return f.Map()
}
return scenariosf.Map().FindBoardRoot(path[1:])
return f.Map().FindBoardRoot(path[1:])
}
}
}
@ -1860,7 +1860,7 @@ func (m *Map) FindBoardRoot(path []string) *Map {
if len(path) == 1 {
return f.Map()
}
return stepsf.Map().FindBoardRoot(path[1:])
return f.Map().FindBoardRoot(path[1:])
}
}
}

View file

@ -117,6 +117,12 @@ hi
layers: {
x: {
hello
layers: {
y: {
qwer
}
}
}
}
`,
@ -130,6 +136,10 @@ layers: {
assert.Success(t, err)
assert.Equal(t, 0, len(ranges))
ranges, _, err = d2lsp.GetRefRanges("index.d2", fs, []string{"x", "y"}, "qwer")
assert.Success(t, err)
assert.Equal(t, 1, len(ranges))
_, _, err = d2lsp.GetRefRanges("index.d2", fs, []string{"y"}, "hello")
assert.Equal(t, `board "[y]" not found`, err.Error())
}