### Question:
AbstractComponentNode implements ComponentNode { @Override public ValidationStatus getValidationStatus() { return validationState.get().getStatus(); } AbstractComponentNode(final String id,
                                       final ValidationContextFactory validationContextFactory, final ControllerServiceProvider serviceProvider,
                                       final String componentType, final String componentCanonicalClass, final ComponentVariableRegistry variableRegistry,
        final ReloadComponent reloadComponent, final ValidationTrigger validationTrigger, final boolean isExtensionMissing); @Override String getIdentifier(); @Override void setExtensionMissing(boolean extensionMissing); @Override boolean isExtensionMissing(); @Override String getName(); @Override void setName(final String name); @Override String getAnnotationData(); @Override void setAnnotationData(final String data); @Override Set<URL> getAdditionalClasspathResources(final List<PropertyDescriptor> propertyDescriptors); @Override void setProperties(final Map<String, String> properties, final boolean allowRemovalOfRequiredProperties); @Override Map<PropertyDescriptor, String> getProperties(); @Override String getProperty(final PropertyDescriptor property); @Override void refreshProperties(); @Override synchronized void reloadAdditionalResourcesIfNecessary(); @Override int hashCode(); @Override boolean equals(final Object obj); @Override String toString(); @Override final void performValidation(); @Override PropertyDescriptor getPropertyDescriptor(final String name); @Override List<PropertyDescriptor> getPropertyDescriptors(); @Override ValidationStatus getValidationStatus(); @Override ValidationStatus getValidationStatus(long timeout, TimeUnit timeUnit); @Override void pauseValidationTrigger(); @Override void resumeValidationTrigger(); @Override Collection<ValidationResult> getValidationErrors(); abstract void verifyModifiable(); @Override String getCanonicalClassName(); @Override String getComponentType(); @Override ComponentVariableRegistry getVariableRegistry(); @Override void verifyCanUpdateBundle(final BundleCoordinate incomingCoordinate);  }### Answer:
@Test(timeout = 5000) public void testGetValidationStatusWithTimeout() { final ValidationControlledAbstractComponentNode node = new ValidationControlledAbstractComponentNode(5000, Mockito.mock(ValidationTrigger.class)); final ValidationStatus status = node.getValidationStatus(1, TimeUnit.MILLISECONDS); assertEquals(ValidationStatus.VALIDATING, status); }