@Test
	public void testRemoveProduct() {

		BlockingQueue<Product> currentObjectsList = null;

		Product product = new Product("Book", 1234, 2.30, 100);
		Product product2 = new Product("table", 4321, 3.00, 100);
		Product product3 = new Product("printer", 1334, 1.20, 100);

		facade.addProduct(product);
		facade.addProduct(product2);
		facade.addProduct(product3);

		try {
			Thread.sleep(3000);
		} catch (InterruptedException e1) {
			e1.printStackTrace();
		}
		facade.getListProduct(copyListOfAllProduct);

		try {
			currentObjectsList = copyListOfAllProduct.take();
		} catch (Exception e) {
			e.getMessage();
		}

		assertEquals(3, currentObjectsList.size());
		try {
			Thread.sleep(4000);
		} catch (Exception e) {
			e.getMessage();
		}

		facade.removeProduct(product);
		facade.removeProduct(product2);
		copyListOfAllProduct.clear();

		try {
			Thread.sleep(3000);
		} catch (Exception e) {
			e.getMessage();
		}
		facade.getListProduct(copyListOfAllProduct);

		try {
			currentObjectsList = copyListOfAllProduct.take();
		} catch (Exception e) {
			e.getMessage();
		}

		assertEquals(1, currentObjectsList.size());
		assertFalse(currentObjectsList.contains(product));
		assertTrue(currentObjectsList.contains(product3));
	}