Search in sources :

Example 36 with FileValue

use of org.camunda.bpm.engine.variable.value.FileValue in project camunda-bpm-platform by camunda.

the class TaskQueryTest method testQueryByFileCaseInstanceVariableValueNotEquals.

@Deployment(resources = { "org/camunda/bpm/engine/test/api/cmmn/oneTaskCase.cmmn" })
public void testQueryByFileCaseInstanceVariableValueNotEquals() {
    FileValue fileValue = createDefaultFileValue();
    String variableName = "aFileValue";
    startDefaultCaseWithVariable(fileValue, variableName);
    TaskQuery query = taskService.createTaskQuery();
    try {
        query.caseInstanceVariableValueNotEquals(variableName, fileValue).list();
        fail();
    } catch (ProcessEngineException e) {
        assertThat(e.getMessage(), containsString("Variables of type File cannot be used to query"));
    }
}
Also used : FileValue(org.camunda.bpm.engine.variable.value.FileValue) TaskQuery(org.camunda.bpm.engine.task.TaskQuery) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) ProcessEngineException(org.camunda.bpm.engine.ProcessEngineException) Deployment(org.camunda.bpm.engine.test.Deployment)

Example 37 with FileValue

use of org.camunda.bpm.engine.variable.value.FileValue in project camunda-bpm-platform by camunda.

the class FileValueSerializerTest method testWriteMimetypeFilenameBytesValueAndEncoding.

@Test
public void testWriteMimetypeFilenameBytesValueAndEncoding() throws UnsupportedEncodingException {
    String filename = "test.txt";
    String mimeType = "text/json";
    Charset encoding = Charset.forName("UTF-8");
    InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/camunda/bpm/engine/test/standalone/variables/simpleFile.txt");
    FileValue fileValue = Variables.fileValue(filename).mimeType(mimeType).encoding(encoding).file(is).create();
    ValueFields valueFields = new MockValueFields();
    serializer.writeValue(fileValue, valueFields);
    assertThat(new String(valueFields.getByteArrayValue(), "UTF-8"), is("text"));
    assertThat(valueFields.getTextValue(), is(filename));
    assertThat(valueFields.getTextValue2(), is(mimeType + SEPARATOR + encoding.name()));
}
Also used : FileValue(org.camunda.bpm.engine.variable.value.FileValue) DataInputStream(java.io.DataInputStream) InputStream(java.io.InputStream) Charset(java.nio.charset.Charset) ValueFields(org.camunda.bpm.engine.impl.variable.serializer.ValueFields) Test(org.junit.Test)

Example 38 with FileValue

use of org.camunda.bpm.engine.variable.value.FileValue in project camunda-bpm-platform by camunda.

the class FileValueSerializerTest method testReadFileNameMimeTypeAndByteArray.

@Test
public void testReadFileNameMimeTypeAndByteArray() throws IOException {
    InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/camunda/bpm/engine/test/standalone/variables/simpleFile.txt");
    byte[] data = new byte[is.available()];
    DataInputStream dataInputStream = new DataInputStream(is);
    dataInputStream.readFully(data);
    dataInputStream.close();
    MockValueFields valueFields = new MockValueFields();
    String filename = "file.txt";
    valueFields.setTextValue(filename);
    valueFields.setByteArrayValue(data);
    String mimeType = "text/plain";
    valueFields.setTextValue2(mimeType + SEPARATOR);
    FileValue fileValue = serializer.readValue(valueFields, true);
    assertThat(fileValue.getFilename(), is(filename));
    assertThat(fileValue.getMimeType(), is(mimeType));
    checkStreamFromValue(fileValue, "text");
}
Also used : FileValue(org.camunda.bpm.engine.variable.value.FileValue) DataInputStream(java.io.DataInputStream) InputStream(java.io.InputStream) DataInputStream(java.io.DataInputStream) Test(org.junit.Test)

Example 39 with FileValue

use of org.camunda.bpm.engine.variable.value.FileValue in project camunda-bpm-platform by camunda.

the class FileValueSerializerTest method testReadFullValue.

@Test
public void testReadFullValue() throws IOException {
    InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/camunda/bpm/engine/test/standalone/variables/simpleFile.txt");
    byte[] data = new byte[is.available()];
    DataInputStream dataInputStream = new DataInputStream(is);
    dataInputStream.readFully(data);
    dataInputStream.close();
    MockValueFields valueFields = new MockValueFields();
    String filename = "file.txt";
    valueFields.setTextValue(filename);
    valueFields.setByteArrayValue(data);
    String mimeType = "text/plain";
    String encoding = "UTF-16";
    valueFields.setTextValue2(mimeType + SEPARATOR + encoding);
    FileValue fileValue = serializer.readValue(valueFields, true);
    assertThat(fileValue.getFilename(), is(filename));
    assertThat(fileValue.getMimeType(), is(mimeType));
    assertThat(fileValue.getEncoding(), is("UTF-16"));
    assertThat(fileValue.getEncodingAsCharset(), is(Charset.forName("UTF-16")));
    checkStreamFromValue(fileValue, "text");
}
Also used : FileValue(org.camunda.bpm.engine.variable.value.FileValue) DataInputStream(java.io.DataInputStream) InputStream(java.io.InputStream) DataInputStream(java.io.DataInputStream) Test(org.junit.Test)

Example 40 with FileValue

use of org.camunda.bpm.engine.variable.value.FileValue in project camunda-bpm-platform by camunda.

the class FileValueSerializerTest method testReadFilenameAndByteArrayValue.

@Test
public void testReadFilenameAndByteArrayValue() throws IOException {
    InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/camunda/bpm/engine/test/standalone/variables/simpleFile.txt");
    byte[] data = new byte[is.available()];
    DataInputStream dataInputStream = new DataInputStream(is);
    dataInputStream.readFully(data);
    dataInputStream.close();
    MockValueFields valueFields = new MockValueFields();
    String filename = "file.txt";
    valueFields.setTextValue(filename);
    valueFields.setByteArrayValue(data);
    FileValue fileValue = serializer.readValue(valueFields, true);
    assertThat(fileValue.getFilename(), is(filename));
    assertThat(fileValue.getMimeType(), is(nullValue()));
    checkStreamFromValue(fileValue, "text");
}
Also used : FileValue(org.camunda.bpm.engine.variable.value.FileValue) DataInputStream(java.io.DataInputStream) InputStream(java.io.InputStream) DataInputStream(java.io.DataInputStream) Test(org.junit.Test)

Aggregations

FileValue (org.camunda.bpm.engine.variable.value.FileValue)85 Test (org.junit.Test)76 Matchers.containsString (org.hamcrest.Matchers.containsString)44 Matchers.anyString (org.mockito.Matchers.anyString)44 Deployment (org.camunda.bpm.engine.test.Deployment)13 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)10 Response (com.jayway.restassured.response.Response)9 ProcessEngineException (org.camunda.bpm.engine.ProcessEngineException)7 DataInputStream (java.io.DataInputStream)6 InputStream (java.io.InputStream)6 ValueFields (org.camunda.bpm.engine.impl.variable.serializer.ValueFields)6 TaskQuery (org.camunda.bpm.engine.task.TaskQuery)6 HistoricVariableUpdate (org.camunda.bpm.engine.history.HistoricVariableUpdate)4 AbstractRestServiceTest (org.camunda.bpm.engine.rest.AbstractRestServiceTest)4 ProcessInstance (org.camunda.bpm.engine.runtime.ProcessInstance)4 VariableInstance (org.camunda.bpm.engine.runtime.VariableInstance)4 HistoricVariableInstance (org.camunda.bpm.engine.history.HistoricVariableInstance)3 MockHistoricVariableUpdateBuilder (org.camunda.bpm.engine.rest.helper.MockHistoricVariableUpdateBuilder)2 MockVariableInstanceBuilder (org.camunda.bpm.engine.rest.helper.MockVariableInstanceBuilder)2 VariableMap (org.camunda.bpm.engine.variable.VariableMap)2