use of ai.grakn.graql.Match in project grakn by graknlabs.
the class GraqlPrinterTest method testRelationOutput.
@Test
public void testRelationOutput() {
Printer printer = Printers.graql(true);
Match match = rule.tx().graql().match(var("r").isa("has-cast").rel(var().has("name", "Al Pacino")).rel(var().has("name", "Michael Corleone")).rel(var().has("title", "Godfather")));
String relationString = printer.graqlString(match.get("r").iterator().next());
assertThat(relationString, containsString("has-cast"));
assertThat(relationString, containsString("actor"));
assertThat(relationString, containsString("production-with-cast"));
assertThat(relationString, containsString("character-being-played"));
}
use of ai.grakn.graql.Match in project grakn by graknlabs.
the class GraqlPrinterTest method whenGettingOutputForResource_IncludesValueOfResource.
@Test
public void whenGettingOutputForResource_IncludesValueOfResource() {
Printer printer = Printers.graql(false);
Match match = rule.tx().graql().match(var("x").isa("title").val("Godfather"));
String result = printer.graqlString(match.iterator().next());
assertEquals("$x val \"Godfather\" isa title;", result.trim());
}
use of ai.grakn.graql.Match in project grakn by graknlabs.
the class GraqlPrinterTest method whenGettingOutputForRelation_TheResultShouldHaveCommasBetweenRolePlayers.
@Test
public void whenGettingOutputForRelation_TheResultShouldHaveCommasBetweenRolePlayers() {
Printer printer = Printers.graql(true);
Match match = rule.tx().graql().match(var("r").isa("has-cluster"));
Relationship relationship = match.get("r").iterator().next().asRelationship();
long numRolePlayers = relationship.rolePlayers().count();
long numCommas = numRolePlayers - 1;
String relationString = printer.graqlString(relationship);
assertEquals(relationString + " should have " + numCommas + " commas separating role-players", numCommas, StringUtils.countMatches(relationString, ","));
}
use of ai.grakn.graql.Match in project grakn by graknlabs.
the class QueryBuilderTest method whenExecutingAMatchWithoutAGraph_Throw.
@Test
public void whenExecutingAMatchWithoutAGraph_Throw() {
Match match = match(x.isa("movie"));
exception.expect(GraqlQueryException.class);
exception.expectMessage("graph");
// noinspection ResultOfMethodCallIgnored
match.iterator();
}
use of ai.grakn.graql.Match in project grakn by graknlabs.
the class QueryBuilderTest method whenGraphIsProvidedAndQueryExecutedWithNonexistentType_Throw.
@Test
public void whenGraphIsProvidedAndQueryExecutedWithNonexistentType_Throw() {
Match match = match(x.isa("not-a-thing"));
exception.expect(GraqlQueryException.class);
// noinspection ResultOfMethodCallIgnored
match.withTx(movieKB.tx()).stream();
}
Aggregations