Bug 331668 ESelectionService should not notify listeners if the active part does not post selections
Even if you do not set a selection provider for your IWorkbenchPart implementation, we are still propagating selection events for that part within the given workbench window.
tests/org.eclipse.e4.ui.tests/src/org/eclipse/e4/ui/tests/application/ESelectionServiceTest.java
SelectionListener listener = new SelectionListener();
		windowService.addSelectionListener(listener);
		MPerspectiveStack perspectiveStack = AdvancedFactoryImpl.eINSTANCE
				.createPerspectiveStack();
		window.getChildren().add(perspectiveStack);
		window.setSelectedElement(perspectiveStack);
		MPerspective perspective = AdvancedFactoryImpl.eINSTANCE
				.createPerspective();
		perspectiveStack.getChildren().add(perspective);
		perspectiveStack.setSelectedElement(perspective);
		MPart partA = BasicFactoryImpl.eINSTANCE.createPart();
		partA.setElementId("partA"); 
		perspective.getChildren().add(partA);
		perspective.setSelectedElement(partA);
		MPart partB = BasicFactoryImpl.eINSTANCE.createPart();
		partB.setElementId("partB"); 
		perspective.getChildren().add(partB);
		IEclipseContext contextB = partB.getContext();
		ESelectionService serviceB = (ESelectionService) contextB
				.get(ESelectionService.class.getName());
		Object selection = new Object();
		serviceB.setSelection(selection);
		listener.reset();
		partService.activate(partB);
		assertEquals(partB, listener.getPart());
		assertEquals(selection, listener.getSelection());
		windowService.removeSelectionListener(listener);
		listener.reset();
		partService.activate(partA);
		assertNull(listener.getPart());