From 6779117f72e2d92f708cff2bfc004d2cfd7d068b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Tue, 21 Dec 2021 10:35:33 +0100 Subject: media: Also consider extension in FromContent As used in `resources.GetRemote`. This will now reject image files with text and text files with images. --- media/mediaType_test.go | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) (limited to 'media/mediaType_test.go') diff --git a/media/mediaType_test.go b/media/mediaType_test.go index cd4439fe7..2e32568f1 100644 --- a/media/mediaType_test.go +++ b/media/mediaType_test.go @@ -15,7 +15,6 @@ package media import ( "encoding/json" - "fmt" "io/ioutil" "path/filepath" "sort" @@ -194,15 +193,39 @@ func TestFromContent(t *testing.T) { content, err := ioutil.ReadFile(filename) c.Assert(err, qt.IsNil) ext := strings.TrimPrefix(paths.Ext(filename), ".") - fmt.Println("=>", ext) + var exts []string + if ext == "jpg" { + exts = append(exts, "foo", "bar", "jpg") + } else { + exts = []string{ext} + } expected, _, found := mtypes.GetFirstBySuffix(ext) c.Assert(found, qt.IsTrue) - got := FromContent(mtypes, ext, content) + got := FromContent(mtypes, exts, content) c.Assert(got, qt.Equals, expected) }) } } +func TestFromContentFakes(t *testing.T) { + c := qt.New(t) + + files, err := filepath.Glob("./testdata/fake.*") + c.Assert(err, qt.IsNil) + mtypes := DefaultTypes + + for _, filename := range files { + name := filepath.Base(filename) + c.Run(name, func(c *qt.C) { + content, err := ioutil.ReadFile(filename) + c.Assert(err, qt.IsNil) + ext := strings.TrimPrefix(paths.Ext(filename), ".") + got := FromContent(mtypes, []string{ext}, content) + c.Assert(got, qt.Equals, zero) + }) + } +} + func TestDecodeTypes(t *testing.T) { c := qt.New(t) -- cgit v1.2.3