@Test
	public void testFilteringItems() throws ModelException {
		DeabstractedDataManager manager = new DeabstractedDataManager();
		Item foo = new Item();
		foo.setValue("Foo");
		Item bar = new Item();
		bar.setValue("Bar");
		Item joe = new Item();
		joe.setValue("BarJoe");
		manager.addItem(foo);
		manager.addItem(bar);
		manager.addItem(joe);
		
		Collection<Item> items = manager.filter(new Predicate<Item>() {
			@Override
			public boolean apply(Item input) {
				return input.getValue().contains("Bar");
			}
		});
		Assert.assertEquals(2, items.size());
		Assert.assertTrue(items.contains(bar));
		Assert.assertTrue(items.contains(joe));
		Assert.assertFalse(items.contains(foo));
	}