MCPcopy
hub / github.com/perkeep/perkeep / TestQueryPermanodeLocation

Function TestQueryPermanodeLocation

pkg/search/query_test.go:577–626  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

575}
576
577func TestQueryPermanodeLocation(t *testing.T) {
578 testQuery(t, func(qt *queryTest) {
579 id := qt.id
580
581 p1 := id.NewPlannedPermanode("1")
582 p2 := id.NewPlannedPermanode("2")
583 p3 := id.NewPlannedPermanode("3")
584 id.SetAttribute(p1, "latitude", "51.5")
585 id.SetAttribute(p1, "longitude", "0")
586 id.SetAttribute(p2, "latitude", "51.5")
587 id.SetAttribute(p3, "longitude", "0")
588
589 p4 := id.NewPlannedPermanode("checkin")
590 p5 := id.NewPlannedPermanode("venue")
591 id.SetAttribute(p4, "camliNodeType", "foursquare.com:checkin")
592 id.SetAttribute(p4, "foursquareVenuePermanode", p5.String())
593 id.SetAttribute(p5, "latitude", "1.0")
594 id.SetAttribute(p5, "longitude", "2.0")
595
596 // Upload a basic image
597 srcRoot, err := osutil.PkSourceRoot()
598 if err != nil {
599 panic(fmt.Sprintf("source root folder not found: %v", err))
600 }
601 uploadFile := func(file string, modTime time.Time) blob.Ref {
602 fileName := filepath.Join(srcRoot, "pkg", "search", "testdata", file)
603 contents, err := os.ReadFile(fileName)
604 if err != nil {
605 panic(err)
606 }
607 br, _ := id.UploadFile(file, string(contents), modTime)
608 return br
609 }
610 fileRef := uploadFile("dude-gps.jpg", time.Time{})
611
612 p6 := id.NewPlannedPermanode("photo")
613 id.SetAttribute(p6, "camliContent", fileRef.String())
614
615 sq := &SearchQuery{
616 Constraint: &Constraint{
617 Permanode: &PermanodeConstraint{
618 Location: &LocationConstraint{
619 Any: true,
620 },
621 },
622 },
623 }
624 qt.wantRes(sq, p1, p4, p5, p6)
625 })
626}
627
628func TestQueryFileLocation(t *testing.T) {
629 testQueryTypes(t, memIndexTypes, func(qt *queryTest) {

Callers

nothing calls this directly

Calls 8

PkSourceRootFunction · 0.92
testQueryFunction · 0.85
NewPlannedPermanodeMethod · 0.80
SetAttributeMethod · 0.80
wantResMethod · 0.80
uploadFileFunction · 0.50
StringMethod · 0.45
UploadFileMethod · 0.45

Tested by

no test coverage detected