From b7f1f8561aa6c7dee78ae1c0a9218c2260225990 Mon Sep 17 00:00:00 2001 From: Jacalz Date: Sun, 12 Jul 2020 17:09:43 +0200 Subject: [PATCH 1/3] Make file filter case-insensitive Curently, a file filter set as ".jpg" would not pick up and files that was saved using ".JPG". This updates the filter to use strings.EqualFold() for case-insensitive lookup. --- storage/filter.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/filter.go b/storage/filter.go index 8f043eaee8..1837eaccbf 100644 --- a/storage/filter.go +++ b/storage/filter.go @@ -27,7 +27,7 @@ type MimeTypeFileFilter struct { func (e *ExtensionFileFilter) Matches(uri fyne.URI) bool { extension := uri.Extension() for _, ext := range e.Extensions { - if extension == ext { + if strings.EqualFold(extension, ext) { return true } } From 9eeff469805dd2e2b2d7709c4e6b1a462b6d046e Mon Sep 17 00:00:00 2001 From: Jacalz Date: Sun, 19 Jul 2020 18:33:44 +0200 Subject: [PATCH 2/3] Add test to file filter --- storage/filter_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 storage/filter_test.go diff --git a/storage/filter_test.go b/storage/filter_test.go new file mode 100644 index 0000000000..ea222b343a --- /dev/null +++ b/storage/filter_test.go @@ -0,0 +1,25 @@ +package storage_test + +import ( + "testing" + + "fyne.io/fyne/storage" + + _ "fyne.io/fyne/test" + + "github.com/stretchr/testify/assert" +) + +func TestFIleFilter(t *testing.T) { + filter := storage.NewExtensionFileFilter([]string{".jpg", ".png"}) + + assert.NotNil(t, filter) + assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.JPG"))) + assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.jpg"))) + + assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.PNG"))) + assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.png"))) + + assert.Equal(t, false, filter.Matches(storage.NewURI("content:///otherapp/something/pic.TIFF"))) + assert.Equal(t, false, filter.Matches(storage.NewURI("content:///otherapp/something/pic.tiff"))) +} From d7332c7165e74d4dd063ad40b2251121242e3abd Mon Sep 17 00:00:00 2001 From: Jacob Date: Sun, 19 Jul 2020 21:29:23 +0200 Subject: [PATCH 3/3] Fix stray white spaces to make Travis happy --- storage/filter_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/storage/filter_test.go b/storage/filter_test.go index ea222b343a..2aed27850a 100644 --- a/storage/filter_test.go +++ b/storage/filter_test.go @@ -16,10 +16,10 @@ func TestFIleFilter(t *testing.T) { assert.NotNil(t, filter) assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.JPG"))) assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.jpg"))) - + assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.PNG"))) assert.Equal(t, true, filter.Matches(storage.NewURI("content:///otherapp/something/pic.png"))) - + assert.Equal(t, false, filter.Matches(storage.NewURI("content:///otherapp/something/pic.TIFF"))) assert.Equal(t, false, filter.Matches(storage.NewURI("content:///otherapp/something/pic.tiff"))) }