Search in sources :

Example 21 with DiscardOutput

use of uk.gov.gchq.gaffer.operation.impl.DiscardOutput in project Gaffer by gchq.

the class DiscardOutputHandlerTest method shouldDiscardOutput.

@Test
public void shouldDiscardOutput() throws OperationException {
    // Given
    final DiscardOutputHandler handler = new DiscardOutputHandler();
    final DiscardOutput operation = mock(DiscardOutput.class);
    given(operation.getInput()).willReturn(null);
    // When
    final Void results = handler.doOperation(operation, new Context(), null);
    // Then
    assertThat(results).isNull();
}
Also used : Context(uk.gov.gchq.gaffer.store.Context) DiscardOutput(uk.gov.gchq.gaffer.operation.impl.DiscardOutput) Test(org.junit.jupiter.api.Test)

Example 22 with DiscardOutput

use of uk.gov.gchq.gaffer.operation.impl.DiscardOutput in project Gaffer by gchq.

the class OperationChainTest method shouldBuildOperationChainWithTypeUnsafe.

@Test
public void shouldBuildOperationChainWithTypeUnsafe() {
    // When
    final GetAdjacentIds getAdjIds1 = new GetAdjacentIds();
    final ExportToSet<CloseableIterable<? extends EntityId>> exportToSet1 = new ExportToSet<>();
    final DiscardOutput discardOutput1 = new DiscardOutput();
    final GetSetExport getSetExport1 = new GetSetExport();
    final GetAdjacentIds getAdjIds2 = new GetAdjacentIds();
    final ExportToSet<CloseableIterable<? extends EntityId>> exportToSet2 = new ExportToSet<>();
    final DiscardOutput discardOutput2 = new DiscardOutput();
    final GetSetExport getSetExport2 = new GetSetExport();
    final OperationChain<CloseableIterable<? extends EntityId>> opChain = new Builder().first(getAdjIds1).then(exportToSet1).then(discardOutput1).then(getSetExport1).thenTypeUnsafe(// we can use the type unsafe here as we know the output from the set export will be an Iterable of EntityIds
    getAdjIds2).then(exportToSet2).then(discardOutput2).then(getSetExport2).buildTypeUnsafe();
    // Then
    final Operation[] expecteds = { getAdjIds1, exportToSet1, discardOutput1, getSetExport1, getAdjIds2, exportToSet2, discardOutput2, getSetExport2 };
    assertArrayEquals(expecteds, opChain.getOperationArray());
}
Also used : EntityId(uk.gov.gchq.gaffer.data.element.id.EntityId) GetAdjacentIds(uk.gov.gchq.gaffer.operation.impl.get.GetAdjacentIds) ExportToSet(uk.gov.gchq.gaffer.operation.impl.export.set.ExportToSet) CloseableIterable(uk.gov.gchq.gaffer.commonutil.iterable.CloseableIterable) Builder(uk.gov.gchq.gaffer.operation.OperationChain.Builder) DiscardOutput(uk.gov.gchq.gaffer.operation.impl.DiscardOutput) GetSetExport(uk.gov.gchq.gaffer.operation.impl.export.set.GetSetExport) Test(org.junit.jupiter.api.Test)

Example 23 with DiscardOutput

use of uk.gov.gchq.gaffer.operation.impl.DiscardOutput in project Gaffer by gchq.

the class OperationChainTest method shouldBuildOperationChain.

@Test
public void shouldBuildOperationChain() {
    // Given
    final AddElements addElements1 = mock(AddElements.class);
    final AddElements addElements2 = mock(AddElements.class);
    final GetAdjacentIds getAdj1 = mock(GetAdjacentIds.class);
    final GetAdjacentIds getAdj2 = mock(GetAdjacentIds.class);
    final GetAdjacentIds getAdj3 = mock(GetAdjacentIds.class);
    final GetElements getElements1 = mock(GetElements.class);
    final GetElements getElements2 = mock(GetElements.class);
    final GetAllElements getAllElements = mock(GetAllElements.class);
    final DiscardOutput discardOutput = mock(DiscardOutput.class);
    final GetJobDetails getJobDetails = mock(GetJobDetails.class);
    final GenerateObjects<EntityId> generateEntitySeeds = mock(GenerateObjects.class);
    final Limit<Element> limit = mock(Limit.class);
    final ToSet<Element> deduplicate = mock(ToSet.class);
    final CountGroups countGroups = mock(CountGroups.class);
    final ExportToSet<GroupCounts> exportToSet = mock(ExportToSet.class);
    final ExportToGafferResultCache<CloseableIterable<? extends Element>> exportToGafferCache = mock(ExportToGafferResultCache.class);
    final If<Iterable<? extends EntityId>, Iterable<? extends EntityId>> ifOp = mock(If.class);
    // When
    final OperationChain<JobDetail> opChain = new Builder().first(addElements1).then(getAdj1).then(getAdj2).then(getElements1).then(generateEntitySeeds).then(getAdj3).then(ifOp).then(getElements2).then(deduplicate).then(limit).then(countGroups).then(exportToSet).then(discardOutput).then(getAllElements).then(exportToGafferCache).then(addElements2).then(getJobDetails).build();
    // Then
    final Operation[] expecteds = { addElements1, getAdj1, getAdj2, getElements1, generateEntitySeeds, getAdj3, ifOp, getElements2, deduplicate, limit, countGroups, exportToSet, discardOutput, getAllElements, exportToGafferCache, addElements2, getJobDetails };
    assertArrayEquals(expecteds, opChain.getOperationArray());
}
Also used : AddElements(uk.gov.gchq.gaffer.operation.impl.add.AddElements) GetJobDetails(uk.gov.gchq.gaffer.operation.impl.job.GetJobDetails) GetAdjacentIds(uk.gov.gchq.gaffer.operation.impl.get.GetAdjacentIds) CloseableIterable(uk.gov.gchq.gaffer.commonutil.iterable.CloseableIterable) CloseableIterable(uk.gov.gchq.gaffer.commonutil.iterable.CloseableIterable) Element(uk.gov.gchq.gaffer.data.element.Element) Builder(uk.gov.gchq.gaffer.operation.OperationChain.Builder) GetElements(uk.gov.gchq.gaffer.operation.impl.get.GetElements) EntityId(uk.gov.gchq.gaffer.data.element.id.EntityId) JobDetail(uk.gov.gchq.gaffer.jobtracker.JobDetail) CountGroups(uk.gov.gchq.gaffer.operation.impl.CountGroups) GetAllElements(uk.gov.gchq.gaffer.operation.impl.get.GetAllElements) DiscardOutput(uk.gov.gchq.gaffer.operation.impl.DiscardOutput) GroupCounts(uk.gov.gchq.gaffer.data.GroupCounts) Test(org.junit.jupiter.api.Test)

Example 24 with DiscardOutput

use of uk.gov.gchq.gaffer.operation.impl.DiscardOutput in project Gaffer by gchq.

the class FederatedOperationTest method shouldReturnTrueWhenOpChainHasFederatedOps.

@Test
public void shouldReturnTrueWhenOpChainHasFederatedOps() {
    // Given
    final OperationChain<?> opChain = new OperationChain.Builder().first(new GetElements()).then(new DiscardOutput()).then(new TestFederatedOperation()).then(new GetElements()).build();
    // When
    final boolean result = FederatedOperation.hasFederatedOperations(opChain);
    // Then
    assertTrue(result);
}
Also used : OperationChain(uk.gov.gchq.gaffer.operation.OperationChain) GetElements(uk.gov.gchq.gaffer.operation.impl.get.GetElements) DiscardOutput(uk.gov.gchq.gaffer.operation.impl.DiscardOutput) Test(org.junit.jupiter.api.Test)

Aggregations

DiscardOutput (uk.gov.gchq.gaffer.operation.impl.DiscardOutput)24 OperationChain (uk.gov.gchq.gaffer.operation.OperationChain)17 Test (org.junit.jupiter.api.Test)16 GetElements (uk.gov.gchq.gaffer.operation.impl.get.GetElements)15 User (uk.gov.gchq.gaffer.user.User)12 GetAllElements (uk.gov.gchq.gaffer.operation.impl.get.GetAllElements)11 Context (uk.gov.gchq.gaffer.store.Context)10 GetAdjacentIds (uk.gov.gchq.gaffer.operation.impl.get.GetAdjacentIds)8 JobDetail (uk.gov.gchq.gaffer.jobtracker.JobDetail)7 Operation (uk.gov.gchq.gaffer.operation.Operation)7 SplitStoreFromFile (uk.gov.gchq.gaffer.operation.impl.SplitStoreFromFile)7 Count (uk.gov.gchq.gaffer.operation.impl.Count)6 CountGroups (uk.gov.gchq.gaffer.operation.impl.CountGroups)5 GetJobDetails (uk.gov.gchq.gaffer.operation.impl.job.GetJobDetails)5 Builder (uk.gov.gchq.gaffer.operation.OperationChain.Builder)4 Validate (uk.gov.gchq.gaffer.operation.impl.Validate)4 ExportToGafferResultCache (uk.gov.gchq.gaffer.operation.impl.export.resultcache.ExportToGafferResultCache)4 View (uk.gov.gchq.gaffer.data.elementdefinition.view.View)3 EntitySeed (uk.gov.gchq.gaffer.operation.data.EntitySeed)3 Limit (uk.gov.gchq.gaffer.operation.impl.Limit)3