From 7dab387a115cd23891b726ed25dc21102c3a46c1 Mon Sep 17 00:00:00 2001 From: Jan De Dobbeleer Date: Fri, 4 Feb 2022 09:09:19 +0100 Subject: [PATCH] fix: migrate console title template relates to #1678 --- src/engine/migrate.go | 3 +++ src/engine/migrate_test.go | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/engine/migrate.go b/src/engine/migrate.go index 2cc5411a..6c97ad32 100644 --- a/src/engine/migrate.go +++ b/src/engine/migrate.go @@ -24,6 +24,9 @@ func (cfg *Config) Migrate(env environment.Environment) { for _, segment := range cfg.Tooltips { segment.migrate(env, cfg.Version) } + if strings.Contains(cfg.ConsoleTitleTemplate, ".Path") { + cfg.ConsoleTitleTemplate = strings.ReplaceAll(cfg.ConsoleTitleTemplate, ".Path", ".PWD") + } cfg.updated = true cfg.Version = configVersion } diff --git a/src/engine/migrate_test.go b/src/engine/migrate_test.go index 44d4a574..6d392f97 100644 --- a/src/engine/migrate_test.go +++ b/src/engine/migrate_test.go @@ -383,3 +383,22 @@ func TestMigratePreAndPostfix(t *testing.T) { assert.NotContains(t, segment.Properties, "postfix", tc.Case) } } + +func TestMigrateConfig(t *testing.T) { + cases := []struct { + Case string + Expected string + Template string + }{ + {Case: "Path", Expected: "{{ .PWD }}", Template: "{{ .Path }}"}, + {Case: "No Path", Expected: "foo", Template: "foo"}, + {Case: "Empty", Expected: "", Template: ""}, + } + for _, tc := range cases { + cfg := &Config{ + ConsoleTitleTemplate: tc.Template, + } + cfg.Migrate(&mock.MockedEnvironment{}) + assert.Equal(t, tc.Expected, cfg.ConsoleTitleTemplate, tc.Case) + } +}