package migration

import "testing"

func TestIsGmailHistoryNotFound(t *testing.T) {
	if !isGmailHistoryNotFound(fmtError("gmail api 404 Not Found: historyId")) {
		t.Fatal("expected history 404")
	}
	if isGmailHistoryNotFound(fmtError("gmail api 403 Forbidden")) {
		t.Fatal("403 is not history not found")
	}
}

func fmtError(msg string) error {
	return &simpleError{msg: msg}
}

type simpleError struct{ msg string }

func (e *simpleError) Error() string { return e.msg }

func TestGraphMessageRemoved(t *testing.T) {
	removed := struct {
		Reason string `json:"reason"`
	}{Reason: "deleted"}
	msg := graphMessage{ID: "msg-1", Removed: &removed}
	if msg.Removed == nil {
		t.Fatal("expected removed marker")
	}
}
