use of org.eclipse.che.api.workspace.server.model.impl.devfile.PreviewUrlImpl in project devspaces-images by redhat-developer.
the class PreviewUrlLinksVariableGeneratorTest method variableNamesForTwoCommandsWithSimilarNameMustBeDifferent.
@Test
public void variableNamesForTwoCommandsWithSimilarNameMustBeDifferent() {
Map<String, String> commandAttrs = new HashMap<>();
commandAttrs.put(Command.PREVIEW_URL_ATTRIBUTE, "preview_url_host");
CommandImpl command = new CommandImpl("run command", "a", "a", new PreviewUrlImpl(123, null), commandAttrs);
CommandImpl command2 = new CommandImpl(command);
command2.setName("runcommand");
WorkspaceImpl w = createWorkspaceWithCommands(Arrays.asList(command, command2));
Map<String, String> linkMap = generator.genLinksMapAndUpdateCommands(w, uriBuilder);
assertEquals(linkMap.size(), 2);
List<? extends Command> commandsAfter = w.getRuntime().getCommands();
assertNotEquals(commandsAfter.get(1).getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE), commandsAfter.get(0).getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE));
}
use of org.eclipse.che.api.workspace.server.model.impl.devfile.PreviewUrlImpl in project devspaces-images by redhat-developer.
the class PreviewUrlLinksVariableGeneratorTest method shouldAppendPathWhenDefinedInPreviewUrl.
@Test
public void shouldAppendPathWhenDefinedInPreviewUrl() {
Map<String, String> commandAttrs = new HashMap<>();
commandAttrs.put(Command.PREVIEW_URL_ATTRIBUTE, "preview_url_host");
CommandImpl command = new CommandImpl("run command", "a", "a", new PreviewUrlImpl(123, "testpath"), commandAttrs);
WorkspaceImpl workspace = createWorkspaceWithCommands(singletonList(command));
Map<String, String> linkMap = generator.genLinksMapAndUpdateCommands(workspace, uriBuilder);
assertTrue(linkMap.values().iterator().next().endsWith("preview_url_host"));
String linkKey = linkMap.keySet().iterator().next();
assertEquals(workspace.getRuntime().getCommands().get(0).getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE), "${" + linkKey + "}testpath");
}
use of org.eclipse.che.api.workspace.server.model.impl.devfile.PreviewUrlImpl in project devspaces-images by redhat-developer.
the class PreviewUrlLinksVariableGeneratorTest method shouldGetHttpsWhenUriBuilderHasHttps.
@Test
public void shouldGetHttpsWhenUriBuilderHasHttps() {
UriBuilder httpsUriBuilder = UriBuilder.fromUri("https://host/path");
Map<String, String> commandAttrs = new HashMap<>();
commandAttrs.put(Command.PREVIEW_URL_ATTRIBUTE, "preview_url_host");
CommandImpl command = new CommandImpl("run command", "a", "a", new PreviewUrlImpl(123, null), commandAttrs);
Map<String, String> linkMap = generator.genLinksMapAndUpdateCommands(createWorkspaceWithCommands(singletonList(command)), httpsUriBuilder);
assertTrue(linkMap.values().iterator().next().startsWith("https://"));
}
use of org.eclipse.che.api.workspace.server.model.impl.devfile.PreviewUrlImpl in project devspaces-images by redhat-developer.
the class PreviewUrlLinksVariableGeneratorTest method shouldUpdateCommandAndReturnLinkMapWhenPreviewUrlFound.
@Test
public void shouldUpdateCommandAndReturnLinkMapWhenPreviewUrlFound() {
Map<String, String> commandAttrs = new HashMap<>();
commandAttrs.put(Command.PREVIEW_URL_ATTRIBUTE, "preview_url_host");
CommandImpl command = new CommandImpl("a", "a", "a", new PreviewUrlImpl(123, null), commandAttrs);
WorkspaceImpl w = createWorkspaceWithCommands(Arrays.asList(command, new CommandImpl("b", "b", "b")));
Map<String, String> linkMap = generator.genLinksMapAndUpdateCommands(w, uriBuilder);
assertEquals(linkMap.size(), 1);
assertEquals(linkMap.values().iterator().next(), "http://preview_url_host");
String varKey = linkMap.keySet().iterator().next();
assertTrue(varKey.startsWith("previewurl/"));
Command aCommand = w.getRuntime().getCommands().stream().filter(c -> c.getName().equals("a")).findFirst().get();
assertTrue(aCommand.getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE).contains(varKey));
assertEquals(aCommand.getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE), "${" + varKey + "}");
}
use of org.eclipse.che.api.workspace.server.model.impl.devfile.PreviewUrlImpl in project devspaces-images by redhat-developer.
the class PreviewUrlLinksVariableGeneratorTest method shouldAppendMultipleQueryParamsWhenDefinedInPreviewUrl.
@Test
public void shouldAppendMultipleQueryParamsWhenDefinedInPreviewUrl() {
Map<String, String> commandAttrs = new HashMap<>();
commandAttrs.put(Command.PREVIEW_URL_ATTRIBUTE, "preview_url_host");
CommandImpl command = new CommandImpl("run command", "a", "a", new PreviewUrlImpl(123, "?a=b&c=d"), commandAttrs);
WorkspaceImpl workspace = createWorkspaceWithCommands(singletonList(command));
Map<String, String> linkMap = generator.genLinksMapAndUpdateCommands(workspace, uriBuilder);
assertTrue(linkMap.values().iterator().next().endsWith("preview_url_host"));
String linkKey = linkMap.keySet().iterator().next();
assertEquals(workspace.getRuntime().getCommands().get(0).getAttributes().get(Command.PREVIEW_URL_ATTRIBUTE), "${" + linkKey + "}?a=b&c=d");
}
Aggregations