blob: 0f98d5b04f1af9cda8300ee18bb7f2b5f8f0fc86 [file] [log] [blame]
// Copyright 2014 The Go Authors. All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file or at
// https://developers.google.com/open-source/licenses/bsd.
package main
import (
"net/http"
"net/http/httptest"
"reflect"
"strings"
"testing"
)
func TestFlashMessages(t *testing.T) {
resp := httptest.NewRecorder()
expectedMessages := []flashMessage{
{ID: "a", Args: []string{"one"}},
{ID: "b", Args: []string{"two", "three"}},
{ID: "c", Args: []string{}},
}
setFlashMessages(resp, expectedMessages)
req := &http.Request{Header: http.Header{"Cookie": {strings.Split(resp.Header().Get("Set-Cookie"), ";")[0]}}}
actualMessages := getFlashMessages(resp, req)
if !reflect.DeepEqual(actualMessages, expectedMessages) {
t.Errorf("got messages %+v, want %+v", actualMessages, expectedMessages)
}
}