photoprism/internal/entity/subject_fixtures.go
Michael Mayer d198a056a7 People: Improve face matching performance and accuracy #22
By default, matching is now limited to unmatched faces and markers.
2021-08-29 13:26:05 +02:00

98 lines
2.5 KiB
Go

package entity
type SubjectMap map[string]Subject
func (m SubjectMap) Get(name string) Subject {
if result, ok := m[name]; ok {
return result
}
return Subject{}
}
func (m SubjectMap) Pointer(name string) *Subject {
if result, ok := m[name]; ok {
return &result
}
return &Subject{}
}
var SubjectFixtures = SubjectMap{
"john-doe": Subject{
SubjectUID: "jqu0xs11qekk9jx8",
SubjectSlug: "john-doe",
SubjectName: "John Doe",
SubjectType: SubjectPerson,
SubjectSrc: SrcManual,
Favorite: true,
Private: false,
Hidden: false,
SubjectDescription: "Subject Description",
SubjectNotes: "Short Note",
MetadataJSON: []byte(""),
PhotoCount: 1,
CreatedAt: TimeStamp(),
UpdatedAt: TimeStamp(),
DeletedAt: nil,
},
"joe-biden": Subject{
SubjectUID: "jqy3y652h8njw0sx",
SubjectSlug: "joe-biden",
SubjectName: "Joe Biden",
SubjectType: SubjectPerson,
SubjectSrc: SrcMarker,
Favorite: false,
Private: false,
Hidden: false,
SubjectDescription: "",
SubjectNotes: "",
MetadataJSON: []byte(""),
PhotoCount: 1,
CreatedAt: TimeStamp(),
UpdatedAt: TimeStamp(),
DeletedAt: nil,
},
"dangling": Subject{
SubjectUID: "jqy1y111h1njaaaa",
SubjectSlug: "dangling-subject",
SubjectName: "Dangling Subject",
SubjectType: SubjectPerson,
SubjectSrc: SrcMarker,
Favorite: false,
Private: false,
Hidden: false,
SubjectDescription: "",
SubjectNotes: "",
MetadataJSON: []byte(""),
PhotoCount: 0,
CreatedAt: TimeStamp(),
UpdatedAt: TimeStamp(),
DeletedAt: nil,
},
"jane-doe": Subject{
SubjectUID: "jqy1y111h1njaaab",
SubjectSlug: "jane-doe",
SubjectName: "Jane Doe",
SubjectType: SubjectPerson,
SubjectSrc: SrcMarker,
Favorite: false,
Private: false,
Hidden: false,
SubjectDescription: "",
SubjectNotes: "",
MetadataJSON: []byte(""),
PhotoCount: 3,
CreatedAt: TimeStamp(),
UpdatedAt: TimeStamp(),
DeletedAt: nil,
},
}
// CreateSubjectFixtures inserts known entities into the database for testing.
func CreateSubjectFixtures() {
for _, entity := range SubjectFixtures {
Db().Create(&entity)
}
}