use of uk.gov.gchq.gaffer.graph.Graph in project Gaffer by gchq.
the class FederatedAddGraphWithHooksHandlerTest method shouldAddGraphUsingLibrary.
@Test
public void shouldAddGraphUsingLibrary() throws Exception {
store.initialise(FEDERATEDSTORE_GRAPH_ID, null, federatedStoreProperties);
Schema expectedSchema = new Schema.Builder().build();
assertEquals(0, store.getGraphs(testUser, null, ignore).size());
assertEquals(0, store.getGraphs(testUser, null, ignore).size());
FederatedAddGraphWithHooksHandler federatedAddGraphWithHooksHandler = new FederatedAddGraphWithHooksHandler();
federatedAddGraphWithHooksHandler.doOperation(new AddGraphWithHooks.Builder().graphId(EXPECTED_GRAPH_ID).schema(expectedSchema).storeProperties(PROPERTIES).build(), new Context(testUser), store);
Collection<Graph> graphs = store.getGraphs(testUser, null, ignore);
assertThat(graphs).hasSize(1);
Graph next = graphs.iterator().next();
assertEquals(EXPECTED_GRAPH_ID, next.getGraphId());
assertEquals(expectedSchema, next.getSchema());
final GraphLibrary library = new HashMapGraphLibrary();
library.add(EXPECTED_GRAPH_ID_3, expectedSchema, PROPERTIES);
store.setGraphLibrary(library);
federatedAddGraphWithHooksHandler.doOperation(new AddGraphWithHooks.Builder().graphId(EXPECTED_GRAPH_ID_3).build(), new Context(testUser), store);
graphs = store.getGraphs(testUser, null, ignore);
assertThat(graphs).hasSize(2);
Iterator<Graph> iterator = graphs.iterator();
final HashSet<String> set = Sets.newHashSet();
while (iterator.hasNext()) {
set.add(iterator.next().getGraphId());
}
assertThat(set).contains(EXPECTED_GRAPH_ID, EXPECTED_GRAPH_ID_3);
}
use of uk.gov.gchq.gaffer.graph.Graph in project Gaffer by gchq.
the class FederatedAddGraphWithHooksHandlerTest method shouldAddGraphWithHooks.
@Test
public void shouldAddGraphWithHooks() throws Exception {
store.initialise(FEDERATEDSTORE_GRAPH_ID, null, federatedStoreProperties);
Schema expectedSchema = new Schema.Builder().build();
assertEquals(0, store.getGraphs(testUser, null, ignore).size());
FederatedAddGraphWithHooksHandler federatedAddGraphHandler = new FederatedAddGraphWithHooksHandler();
federatedAddGraphHandler.doOperation(new AddGraphWithHooks.Builder().graphId(EXPECTED_GRAPH_ID).schema(expectedSchema).storeProperties(PROPERTIES).hooks(new Log4jLogger()).build(), new Context(testUser), store);
Collection<Graph> graphs = store.getGraphs(testUser, null, ignore);
List<Class<? extends GraphHook>> graphHooks = graphs.iterator().next().getGraphHooks();
assertThat(graphHooks).contains(Log4jLogger.class);
}
use of uk.gov.gchq.gaffer.graph.Graph in project Gaffer by gchq.
the class FederatedRemoveGraphHandlerTest method shouldRemoveGraphForAddingUser.
@Test
public void shouldRemoveGraphForAddingUser() throws Exception {
FederatedStore store = new FederatedStore();
final FederatedStoreProperties federatedStoreProperties = new FederatedStoreProperties();
federatedStoreProperties.setCacheProperties(CACHE_SERVICE_CLASS_STRING);
store.initialise(FEDERATEDSTORE_GRAPH_ID, null, federatedStoreProperties);
store.addGraphs(testUser.getOpAuths(), testUser.getUserId(), false, new GraphSerialisable.Builder().config(new GraphConfig(EXPECTED_GRAPH_ID)).schema(new Schema.Builder().build()).properties(PROPERTIES).build());
assertEquals(1, store.getGraphs(testUser, null, ignore).size());
new FederatedRemoveGraphHandler().doOperation(new RemoveGraph.Builder().graphId(EXPECTED_GRAPH_ID).build(), new Context(testUser), store);
Collection<Graph> graphs = store.getGraphs(testUser, null, ignore);
assertThat(graphs).isEmpty();
}
use of uk.gov.gchq.gaffer.graph.Graph in project Gaffer by gchq.
the class FederatedRemoveGraphHandlerTest method shouldNotRemoveGraphForNonAddingUser.
@Test
public void shouldNotRemoveGraphForNonAddingUser() throws Exception {
FederatedStore store = new FederatedStore();
final FederatedStoreProperties federatedStoreProperties = new FederatedStoreProperties();
federatedStoreProperties.setCacheProperties(CACHE_SERVICE_CLASS_STRING);
store.initialise(FEDERATEDSTORE_GRAPH_ID, null, federatedStoreProperties);
store.addGraphs(testUser.getOpAuths(), "other", false, new GraphSerialisable.Builder().config(new GraphConfig(EXPECTED_GRAPH_ID)).schema(new Schema.Builder().build()).properties(PROPERTIES).build());
assertEquals(1, store.getGraphs(testUser, null, ignore).size());
new FederatedRemoveGraphHandler().doOperation(new RemoveGraph.Builder().graphId(EXPECTED_GRAPH_ID).build(), new Context(testUser), store);
Collection<Graph> graphs = store.getGraphs(testUser, null, ignore);
assertThat(graphs).hasSize(1);
}
use of uk.gov.gchq.gaffer.graph.Graph in project Gaffer by gchq.
the class FederatedStoreUtilTest method shouldUpdateAddElementsFlagsWhenNullInputAndSkipFalse.
@Test
public void shouldUpdateAddElementsFlagsWhenNullInputAndSkipFalse() {
// Given
final Graph graph = createGraph();
final AddElements operation = new AddElements.Builder().validate(true).skipInvalidElements(false).build();
// When
final AddElements updatedOp = FederatedStoreUtil.updateOperationForGraph(operation, graph);
// Then
assertNotSame(operation, updatedOp);
assertNull(updatedOp.getInput());
assertTrue(updatedOp.isValidate());
assertTrue(updatedOp.isSkipInvalidElements());
}
Aggregations