forked from Silverfish/proton-bridge
GODT-1193: don't use message.Read; permit non-UTF-8 charsets
This commit is contained in:
@ -33,6 +33,7 @@ import (
|
||||
"github.com/golang/mock/gomock"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"golang.org/x/text/encoding/htmlindex"
|
||||
)
|
||||
|
||||
func newTestFetcher(
|
||||
@ -298,6 +299,25 @@ func decryptsTo(kr *crypto.KeyRing, want string) decryptsToMatcher {
|
||||
return decryptsToMatcher{kr: kr, want: want}
|
||||
}
|
||||
|
||||
type decodesToMatcher struct {
|
||||
charset string
|
||||
want string
|
||||
}
|
||||
|
||||
func (matcher decodesToMatcher) match(t *testing.T, have string) {
|
||||
enc, err := htmlindex.Get(matcher.charset)
|
||||
require.NoError(t, err)
|
||||
|
||||
dec, err := enc.NewDecoder().String(have)
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, matcher.want, dec)
|
||||
}
|
||||
|
||||
func decodesTo(charset string, want string) decodesToMatcher {
|
||||
return decodesToMatcher{charset: charset, want: want}
|
||||
}
|
||||
|
||||
type verifiesAgainstMatcher struct {
|
||||
kr *crypto.KeyRing
|
||||
sig *crypto.PGPSignature
|
||||
|
||||
Reference in New Issue
Block a user