Search in sources :

Example 26 with StartProcessResponse

use of com.walmartlabs.concord.client.StartProcessResponse in project concord by walmartlabs.

the class SecretsTaskIT method test.

@Test
public void test() throws Exception {
    String secretName = "secret_" + randomString();
    byte[] payload = archive(SecretsTaskIT.class.getResource("secretsTask").toURI());
    Map<String, Object> input = new HashMap<>();
    input.put("archive", payload);
    input.put("arguments.secretName", secretName);
    StartProcessResponse spr = start(input);
    ProcessApi processApi = new ProcessApi(getApiClient());
    ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
    assertNotNull(pir.getLogFileName());
    byte[] bytes = getLog(pir.getLogFileName());
    // System.out.println(new String(bytes));
    assertLog(".* Delete secret2.*", bytes);
}
Also used : ProcessApi(com.walmartlabs.concord.client.ProcessApi) HashMap(java.util.HashMap) ProcessEntry(com.walmartlabs.concord.client.ProcessEntry) StartProcessResponse(com.walmartlabs.concord.client.StartProcessResponse) Test(org.junit.jupiter.api.Test)

Example 27 with StartProcessResponse

use of com.walmartlabs.concord.client.StartProcessResponse in project concord by walmartlabs.

the class VariablesInjectionIT method test.

@Test
public void test() throws Exception {
    byte[] payload = archive(VariablesInjectionIT.class.getResource("inject").toURI(), ITConstants.DEPENDENCIES_DIR);
    ProcessApi processApi = new ProcessApi(getApiClient());
    StartProcessResponse spr = start(payload);
    assertNotNull(spr.getInstanceId());
    ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
    byte[] ab = getLog(pir.getLogFileName());
    assertLog(".*Hello, Concord!.*", ab);
    assertLog(".*Hello, world!!!.*", ab);
    assertLog(".*Hello, world. \\(from method param\\).*", ab);
    assertLog(".*Hello, world. \\(from injected var\\).*", ab);
}
Also used : ProcessApi(com.walmartlabs.concord.client.ProcessApi) ProcessEntry(com.walmartlabs.concord.client.ProcessEntry) StartProcessResponse(com.walmartlabs.concord.client.StartProcessResponse) Test(org.junit.jupiter.api.Test)

Example 28 with StartProcessResponse

use of com.walmartlabs.concord.client.StartProcessResponse in project concord by walmartlabs.

the class SuspendIT method test.

@Test
public void test() throws Exception {
    URI dir = SuspendIT.class.getResource("suspend").toURI();
    byte[] payload = archive(dir);
    // ---
    ProcessApi processApi = new ProcessApi(getApiClient());
    StartProcessResponse spr = start(payload);
    // ---
    ProcessEntry pir = waitForStatus(processApi, spr.getInstanceId(), ProcessEntry.StatusEnum.SUSPENDED);
    byte[] ab = getLog(pir.getLogFileName());
    assertLog(".*aaaa.*", ab);
    // ---
    String testValue = "test#" + randomString();
    Map<String, Object> args = Collections.singletonMap("testValue", testValue);
    Map<String, Object> req = Collections.singletonMap(Constants.Request.ARGUMENTS_KEY, args);
    processApi.resume(spr.getInstanceId(), "ev1", null, req);
    pir = waitForCompletion(processApi, spr.getInstanceId());
    assertEquals(ProcessEntry.StatusEnum.FINISHED, pir.getStatus());
    waitForLog(pir.getLogFileName(), ".*bbbb.*");
    waitForLog(pir.getLogFileName(), ".*" + Pattern.quote(testValue) + ".*");
}
Also used : ProcessApi(com.walmartlabs.concord.client.ProcessApi) ProcessEntry(com.walmartlabs.concord.client.ProcessEntry) URI(java.net.URI) StartProcessResponse(com.walmartlabs.concord.client.StartProcessResponse) Test(org.junit.jupiter.api.Test)

Example 29 with StartProcessResponse

use of com.walmartlabs.concord.client.StartProcessResponse in project concord by walmartlabs.

the class ThrowExceptionTaskIT method testThrowException.

@Test
public void testThrowException() throws Exception {
    URI uri = ThrowExceptionTaskIT.class.getResource("throwExceptionTask").toURI();
    byte[] payload = archive(uri);
    // start the process
    ProcessApi processApi = new ProcessApi(getApiClient());
    StartProcessResponse spr = start(payload);
    // wait for completion
    ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
    assertEquals(ProcessEntry.StatusEnum.FAILED, pir.getStatus());
    // check logs
    byte[] ab = getLog(pir.getLogFileName());
    assertLog(".*Catch that!.*", 3, ab);
}
Also used : ProcessApi(com.walmartlabs.concord.client.ProcessApi) ProcessEntry(com.walmartlabs.concord.client.ProcessEntry) URI(java.net.URI) StartProcessResponse(com.walmartlabs.concord.client.StartProcessResponse) Test(org.junit.jupiter.api.Test)

Example 30 with StartProcessResponse

use of com.walmartlabs.concord.client.StartProcessResponse in project concord by walmartlabs.

the class OutVariablesIT method test.

@Test
public void test() throws Exception {
    byte[] payload = archive(ProcessIT.class.getResource("out").toURI());
    String[] out = { "x", "y.some.boolean", "z" };
    Map<String, Object> input = new HashMap<>();
    input.put("archive", payload);
    input.put("out", out);
    StartProcessResponse spr = start(input);
    Map<String, Object> data = getOutVars(spr.getInstanceId());
    assertNotNull(data);
    assertEquals(123, data.get("x"));
    assertEquals(true, data.get("y.some.boolean"));
    assertFalse(data.containsKey("z"));
}
Also used : StartProcessResponse(com.walmartlabs.concord.client.StartProcessResponse) Test(org.junit.jupiter.api.Test)

Aggregations

StartProcessResponse (com.walmartlabs.concord.client.StartProcessResponse)57 Test (org.junit.jupiter.api.Test)56 ProcessApi (com.walmartlabs.concord.client.ProcessApi)54 ProcessEntry (com.walmartlabs.concord.client.ProcessEntry)54 HashMap (java.util.HashMap)34 URI (java.net.URI)23 Path (java.nio.file.Path)4 File (java.io.File)3 ByteArrayOutputStream (java.io.ByteArrayOutputStream)2 UUID (java.util.UUID)2 ZipArchiveOutputStream (org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream)2 ApiClient (com.walmartlabs.concord.ApiClient)1 ApiException (com.walmartlabs.concord.ApiException)1 ProjectEntry (com.walmartlabs.concord.client.ProjectEntry)1 ProjectsApi (com.walmartlabs.concord.client.ProjectsApi)1 PosixFilePermission (java.nio.file.attribute.PosixFilePermission)1 HashSet (java.util.HashSet)1 WebElement (org.openqa.selenium.WebElement)1