pomerium/internal/cryptutil/mock_cipher.go
Bobby DeSimone 66b4c2d3cd
authenticate/proxy: add user impersonation, refresh, dashboard (#123)
proxy: Add user dashboard. [GH-123]
proxy/authenticate: Add manual refresh of their session. [GH-73]
authorize: Add administrator (super user) account support. [GH-110]
internal/policy: Allow administrators to impersonate other users. [GH-110]
2019-05-26 12:33:00 -07:00

28 lines
948 B
Go

package cryptutil // import "github.com/pomerium/pomerium/internal/cryptutil"
// MockCipher MockCSRFStore is a mock implementation of Cipher.
type MockCipher struct {
EncryptResponse []byte
EncryptError error
DecryptResponse []byte
DecryptError error
MarshalResponse string
MarshalError error
UnmarshalError error
}
// Encrypt is a mock implementation of MockCipher.
func (mc MockCipher) Encrypt(b []byte) ([]byte, error) { return mc.EncryptResponse, mc.EncryptError }
// Decrypt is a mock implementation of MockCipher.
func (mc MockCipher) Decrypt(b []byte) ([]byte, error) { return mc.DecryptResponse, mc.DecryptError }
// Marshal is a mock implementation of MockCipher.
func (mc MockCipher) Marshal(i interface{}) (string, error) {
return mc.MarshalResponse, mc.MarshalError
}
// Unmarshal is a mock implementation of MockCipher.
func (mc MockCipher) Unmarshal(s string, i interface{}) error {
return mc.UnmarshalError
}