Search in sources :

Example 71 with Argument

use of com.yahoo.elide.core.request.Argument in project elide by yahoo.

the class GraphQLEntityProjectMakerTest method testParameterizedAttribute.

@Test
public void testParameterizedAttribute() {
    String graphQLRequest = document(selection(field("parameterizedExample", arguments(argument("entityArgument", "xyz", true)), selections(field("attribute", arguments(argument("argument", "abc", true))))))).toQuery();
    GraphQLEntityProjectionMaker projectionMaker = new GraphQLEntityProjectionMaker(settings);
    GraphQLProjectionInfo projectionInfo = projectionMaker.make(graphQLRequest);
    assertEquals(1, projectionInfo.getProjections().size());
    EntityProjection projection = projectionInfo.getProjections().values().iterator().next();
    // Verify Entity Argument
    assertEquals(1, projection.getArguments().size());
    Argument entityArgument = projection.getArguments().iterator().next();
    assertEquals("entityArgument", entityArgument.getName());
    assertEquals(String.class, entityArgument.getType());
    assertEquals("xyz", entityArgument.getValue());
    // Verify Attribute Argument
    assertEquals(1, projection.getAttributes().size());
    Attribute attribute = projection.getAttributes().iterator().next();
    assertEquals(1, attribute.getArguments().size());
    Argument argument = attribute.getArguments().iterator().next();
    assertEquals("argument", argument.getName());
    assertEquals(String.class, argument.getType());
    assertEquals("abc", argument.getValue());
}
Also used : EntityProjection(com.yahoo.elide.core.request.EntityProjection) Argument(com.yahoo.elide.core.request.Argument) Attribute(com.yahoo.elide.core.request.Attribute) PersistentResourceFetcherTest(com.yahoo.elide.graphql.PersistentResourceFetcherTest) Test(org.junit.jupiter.api.Test)

Aggregations

Argument (com.yahoo.elide.core.request.Argument)71 Test (org.junit.jupiter.api.Test)59 HashMap (java.util.HashMap)48 Query (com.yahoo.elide.datastores.aggregation.query.Query)38 FilterExpression (com.yahoo.elide.core.filter.expression.FilterExpression)35 SQLUnitTest (com.yahoo.elide.datastores.aggregation.framework.SQLUnitTest)25 SQLTable (com.yahoo.elide.datastores.aggregation.queryengines.sql.metadata.SQLTable)22 FilterPredicate (com.yahoo.elide.core.filter.predicates.FilterPredicate)15 Day (com.yahoo.elide.datastores.aggregation.timegrains.Day)14 HashSet (java.util.HashSet)14 Path (com.yahoo.elide.core.Path)12 ToString (lombok.ToString)12 OrFilterExpression (com.yahoo.elide.core.filter.expression.OrFilterExpression)11 AndFilterExpression (com.yahoo.elide.core.filter.expression.AndFilterExpression)10 Date (java.util.Date)10 SQLDimensionProjection (com.yahoo.elide.datastores.aggregation.queryengines.sql.query.SQLDimensionProjection)9 GameRevenue (example.GameRevenue)7 PlayerStats (example.PlayerStats)6 SQLMetricProjection (com.yahoo.elide.datastores.aggregation.queryengines.sql.query.SQLMetricProjection)5 Month (com.yahoo.elide.datastores.aggregation.timegrains.Month)5