### Question:
SpelNodeInclusionPolicy extends SpelInclusionPolicy implements NodeInclusionPolicy { @Override public boolean include(Node node) { return (Boolean) exp.getValue(new AttachedNode(node)); } SpelNodeInclusionPolicy(String expression); @Override boolean include(Node node); @Override Iterable<Node> getAll(GraphDatabaseService database);  }### Answer:
@Test public void shouldIncludeCorrectNodes() { try (Transaction tx = database.beginTx()) { assertTrue(simplePolicy1.include(michal())); assertFalse(simplePolicy1.include(graphaware())); assertFalse(simplePolicy1.include(vojta())); assertFalse(simplePolicy1.include(london())); assertFalse(simplePolicy2.include(michal())); assertTrue(simplePolicy2.include(graphaware())); assertTrue(simplePolicy2.include(vojta())); assertTrue(simplePolicy2.include(london())); assertTrue(policy1.include(michal())); assertTrue(policy1.include(graphaware())); assertTrue(policy1.include(vojta())); assertFalse(policy1.include(london())); assertTrue(policy2.include(michal())); assertFalse(policy2.include(graphaware())); assertTrue(policy2.include(vojta())); assertFalse(policy2.include(london())); assertFalse(policy3.include(michal())); assertTrue(policy3.include(graphaware())); assertFalse(policy3.include(vojta())); assertFalse(policy3.include(london())); assertFalse(policy4.include(michal())); assertTrue(policy4.include(graphaware())); assertFalse(policy4.include(vojta())); assertFalse(policy4.include(london())); assertFalse(policy5.include(michal())); assertFalse(policy5.include(graphaware())); assertFalse(policy5.include(vojta())); assertFalse(policy5.include(london())); tx.success(); } }