### Question:
OpenstackCloudClient extends BuildServerAdapter implements CloudClientEx { @Nullable public OpenstackCloudImage findImageById(@NotNull final String imageId) { for (final OpenstackCloudImage image : getImages()) { if (image.getId().equals(imageId)) { return image; } } return null; } OpenstackCloudClient(@NotNull final CloudClientParameters params, @NotNull ServerPaths serverPaths,
            @NotNull final ExecutorServiceFactory factory); boolean isInitialized(); @Nullable OpenstackCloudImage findImageById(@NotNull final String imageId); @Nullable OpenstackCloudInstance findInstanceByAgent(@NotNull final AgentDescription agentDescription); @NotNull Collection<? extends OpenstackCloudImage> getImages(); @Nullable CloudErrorInfo getErrorInfo(); boolean canStartNewInstance(@NotNull final CloudImage image); @NotNull CloudInstance startNewInstance(@NotNull final CloudImage image, @NotNull final CloudInstanceUserData data); void restartInstance(@NotNull final CloudInstance instance); void terminateInstance(@NotNull final CloudInstance instance); @Nullable String generateAgentName(@NotNull final AgentDescription agentDescription); void dispose();  }### Answer:
@Test public void testFindImageById() throws Exception { Properties props = getTestProps(OpenStackVersion.THREE); OpenstackCloudClient client = getClient(props.getProperty(TEST_KEY_URL), props.getProperty(TEST_KEY_IDENTITY), props.getProperty(TEST_KEY_PASSWORD), props.getProperty(TEST_KEY_REGION), getTestYaml(OpenStackVersion.THREE.value)); for (OpenstackCloudImage image : client.getImages()) { OpenstackCloudImage newImage = client.findImageById(image.getId()); Assert.assertNotNull(newImage); Assert.assertEquals(image.getName(), newImage.getName()); } client.dispose(); }