blob: 6fe6c72523f4c7ddf4ea5f5a50662b3edb6a5022 [file] [log] [blame]
package auditor
import (
"reflect"
"veyron.io/veyron/veyron/security/audit"
)
func NewMockBlessingAuditor() (audit.Auditor, BlessingLogReader) {
db := &mockDatabase{}
return &blessingAuditor{db}, &blessingLogReader{db}
}
type mockDatabase struct {
NextEntry databaseEntry
}
func (db *mockDatabase) Insert(entry databaseEntry) error {
db.NextEntry = entry
return nil
}
func (db *mockDatabase) Query(email string) <-chan databaseEntry {
c := make(chan databaseEntry)
go func() {
var empty databaseEntry
if !reflect.DeepEqual(db.NextEntry, empty) {
c <- db.NextEntry
}
close(c)
}()
return c
}