media: Add some more relevant MIME types

This commit is contained in:
Bjørn Erik Pedersen 2017-03-28 00:09:25 +02:00
parent 4923273688
commit f2fbf0b2ea
2 changed files with 30 additions and 23 deletions

View file

@ -47,11 +47,14 @@ func (m Type) String() string {
} }
var ( var (
CalendarType = Type{"text", "calendar", "ics"} CalendarType = Type{"text", "calendar", "ics"}
CSSType = Type{"text", "css", "css"} CSSType = Type{"text", "css", "css"}
HTMLType = Type{"text", "html", "html"} HTMLType = Type{"text", "html", "html"}
JSONType = Type{"application", "json", "json"} JavascriptType = Type{"application", "javascript", "js"}
RSSType = Type{"application", "rss", "xml"} JSONType = Type{"application", "json", "json"}
RSSType = Type{"application", "rss", "xml"}
XMLType = Type{"application", "xml", "xml"}
TextType = Type{"text", "plain", "txt"}
) )
// TODO(bep) output mime.AddExtensionType // TODO(bep) output mime.AddExtensionType

View file

@ -20,25 +20,29 @@ import (
) )
func TestDefaultTypes(t *testing.T) { func TestDefaultTypes(t *testing.T) {
require.Equal(t, "text", CalendarType.MainType) for _, test := range []struct {
require.Equal(t, "calendar", CalendarType.SubType) tp Type
require.Equal(t, "ics", CalendarType.Suffix) expectedMainType string
expectedSubType string
expectedSuffix string
expectedType string
expectedString string
}{
{CalendarType, "text", "calendar", "ics", "text/calendar", "text/calendar+ics"},
{CSSType, "text", "css", "css", "text/css", "text/css+css"},
{HTMLType, "text", "html", "html", "text/html", "text/html+html"},
{JavascriptType, "application", "javascript", "js", "application/javascript", "application/javascript+js"},
{JSONType, "application", "json", "json", "application/json", "application/json+json"},
{RSSType, "application", "rss", "xml", "application/rss", "application/rss+xml"},
{TextType, "text", "plain", "txt", "text/plain", "text/plain+txt"},
} {
require.Equal(t, test.expectedMainType, test.tp.MainType)
require.Equal(t, test.expectedSubType, test.tp.SubType)
require.Equal(t, test.expectedSuffix, test.tp.Suffix)
require.Equal(t, "text/calendar+ics", CalendarType.String()) require.Equal(t, test.expectedType, test.tp.Type())
require.Equal(t, "text/calendar", CalendarType.Type()) require.Equal(t, test.expectedString, test.tp.String())
require.Equal(t, "text", HTMLType.MainType) }
require.Equal(t, "html", HTMLType.SubType)
require.Equal(t, "html", HTMLType.Suffix)
require.Equal(t, "text/html", HTMLType.Type())
require.Equal(t, "text/html+html", HTMLType.String())
require.Equal(t, "application", RSSType.MainType)
require.Equal(t, "rss", RSSType.SubType)
require.Equal(t, "xml", RSSType.Suffix)
require.Equal(t, "application/rss", RSSType.Type())
require.Equal(t, "application/rss+xml", RSSType.String())
} }