diff options
| author | Paul Buetow <paul@buetow.org> | 2024-12-11 23:18:45 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2024-12-11 23:18:45 +0200 |
| commit | 8234bea43ea313cbee8b12c38e6d0e22795c107e (patch) | |
| tree | 2f8b590c1f098123be10d8e4a654bd13ee58cf8e | |
| parent | 121d2877cc7ed0aaf0bbe5c57b86abba982b0441 (diff) | |
Add entry name
| -rw-r--r-- | internal/entry/entry.go | 2 | ||||
| -rw-r--r-- | internal/entry/entry_test.go | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/internal/entry/entry.go b/internal/entry/entry.go index b866a19..6e8b64c 100644 --- a/internal/entry/entry.go +++ b/internal/entry/entry.go @@ -111,7 +111,7 @@ func (en *Entry) Name() string { base := filepath.Base(en.Path) parts := strings.Split(base, ".") - offset := len(parts) - 1 + offset := len(parts) switch en.State { case Queued: diff --git a/internal/entry/entry_test.go b/internal/entry/entry_test.go index f9df524..1d6cde3 100644 --- a/internal/entry/entry_test.go +++ b/internal/entry/entry_test.go @@ -40,6 +40,26 @@ func TestEntry(t *testing.T) { } } +func TestEntryName(t *testing.T) { + table := map[string]string{ + "/foo/bar/baz.txt": "baz.txt", + "/foo/bar/baz.foo.txt": "baz.foo.txt", + "/foo/bar/baz.foo.txt.20250101-010101.posted": "baz.foo.txt", + "/foo/bar/baz.foo.txt.20250101-010101.queued": "baz.foo.txt", + } + + for path, expectedName := range table { + en, err := New(path) + if err != nil { + t.Error(err) + } + if en.Name() != expectedName { + t.Errorf("expected entry name '%s' but got '%s' for path '%s'", + expectedName, en.Name(), path) + } + } +} + func TestEntryTags(t *testing.T) { tagss := []string{"prio", "share:linkedin:mastodon.now", "share:-mastodon", "ask", "invalid"} |
