package steme import ( "testing" ) // TestQueryBuilder tests the fluent query builder API. func TestQueryBuilder(t *testing.T) { lens := LensConsensus lifecycle := LifecycleApproved params := NewQuery(). WithSubject("Tesla_Inc"). WithPredicate("has_revenue"). WithLens(lens). WithLifecycle(lifecycle). WithLimit(10). Build() if params.Subject == nil || *params.Subject != "Tesla_Inc" { t.Errorf("Subject = %v, want Tesla_Inc", params.Subject) } if params.Predicate == nil || *params.Predicate != "has_revenue" { t.Errorf("Predicate = %v, want has_revenue", params.Predicate) } if params.Lens == nil || *params.Lens != LensConsensus { t.Errorf("Lens = %v, want Consensus", params.Lens) } if params.Lifecycle == nil || *params.Lifecycle != LifecycleApproved { t.Errorf("Lifecycle = %v, want Approved", params.Lifecycle) } if params.Limit != 10 { t.Errorf("Limit = %d, want 10", params.Limit) } }