package plan import ( "testing" "oscarkilo.com/klex-git/config" "oscarkilo.com/klex-git/util" ) func TestNewPlan(t *testing.T) { cfg := &config.Config{ DatasetsDir: "data", FunctionsDir: "funcs", PipelinesDir: "pipes", } commit := &util.CommitInfo{ ChangedPaths: []string{ "README.md", "data/foo/0.txt", "data/foo/1.txt", "data/bar/0.txt", "data/bee/bop/boo.txt", "funcs/foo.js", "funcs/bar/baz.js", "funcs/README.md", "pipes/README.md", "pipes/qux.js", }, } p := NewPlan(cfg, commit, nil) golden := &Plan{ ChangedDatasets: []string{"bar", "bee/bop", "foo"}, ChangedFunctions: []string{"bar/baz", "foo"}, ChangedPipelines: []string{"qux"}, } if p.DebugString() != golden.DebugString() { t.Errorf("NewPlan() = %s, want %s", p.DebugString(), golden.DebugString()) } }