1package ui23import "testing"45// Tracing a formula whose every precedent is on a hidden sheet says so,6// and where to show it; the same for dependents.7func TestTraceIntoHiddenSheet(t *testing.T) {8 m := hiddenBook(t)9 run(m, m.runCommand("sheet.hide"))10 press(t, m, "<ctrl+pgup>")11 m.cur = addr("A1")12 press(t, m, "<alt+,>")13 if got := line(m, contextLine); m.trace != nil || got != "Reads only Data, a hidden sheet; View > Hidden sheets shows it" {14 t.Errorf("trace %v, context %q", m.trace, got)15 }16 m.book().Lookup("Sheet3").Set(addr("B2"), "5")17 m.book().HideSheet(m.book().Lookup("Sheet3"))18 m.sheet.Set(addr("A2"), "=Data!A1+Sheet3!B2")19 m.cur = addr("A2")20 press(t, m, "<alt+,>")21 if got := line(m, contextLine); got != "Reads only Data and Sheet3, hidden sheets; View > Hidden sheets shows them" {22 t.Errorf("context %q", got)23 }24 // Precedents on a sheet shown are traced as ever.25 m.sheet.Set(addr("A3"), "=Data!A1+A2")26 m.cur = addr("A3")27 press(t, m, "<alt+,>")28 if m.trace == nil || m.cur != addr("A2") {29 t.Errorf("trace %v, on %v", m.trace, m.cur)30 }31 if got := noTrace(true, addr("B2"), []string{"Data"}); got != "Only formulas on Data, a hidden sheet, read B2; View > Hidden sheets shows it" {32 t.Errorf("dependents: %q", got)33 }34}