Merge pull-request #2535
This commit is contained in:
@@ -695,3 +695,141 @@ Response example:
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## getTaskMetadata
|
||||||
|
|
||||||
|
- Purpose: **Get all metadata related to a task by task unique id**
|
||||||
|
- Parameters:
|
||||||
|
- **task_id** (integer, required)
|
||||||
|
- Result on success: **list of metadata**
|
||||||
|
- Result on failure: **empty array**
|
||||||
|
|
||||||
|
Request example to fetch all the metada of a task:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"method": "getTaskMetadata",
|
||||||
|
"id": 133280317,
|
||||||
|
"params": [
|
||||||
|
1
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Response example:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 133280317,
|
||||||
|
"result": [
|
||||||
|
{
|
||||||
|
"metaKey1": "metaValue1",
|
||||||
|
"metaKey2": "metaValue2",
|
||||||
|
...
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## getTaskMetadataByName
|
||||||
|
|
||||||
|
- Purpose: **Get metadata related to a task by task unique id and metakey (name)**
|
||||||
|
- Parameters:
|
||||||
|
- **task_id** (integer, required)
|
||||||
|
- **name** (string, required)
|
||||||
|
- Result on success: **metadata value**
|
||||||
|
- Result on failure: **empty string**
|
||||||
|
|
||||||
|
Request example to fetch metada of a task by name:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"method": "getTaskMetadataByName",
|
||||||
|
"id": 133280317,
|
||||||
|
"params": [
|
||||||
|
1,
|
||||||
|
"metaKey1"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Response example:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 133280317,
|
||||||
|
"result": "metaValue1"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## saveTaskMetadata
|
||||||
|
|
||||||
|
- Purpose: **Save/update task metadata**
|
||||||
|
- Parameters:
|
||||||
|
- **task_id** (integer, required)
|
||||||
|
- **array("name" => "value")** (array, required)
|
||||||
|
- Result on success: **true**
|
||||||
|
- Result on failure: **false**
|
||||||
|
|
||||||
|
Request example to add/update metada of a task:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"method": "saveTaskMetadata",
|
||||||
|
"id": 133280317,
|
||||||
|
"params": [
|
||||||
|
1,
|
||||||
|
{
|
||||||
|
"metaName" : "metaValue"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Response example:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 133280317,
|
||||||
|
"result": true
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## removeTaskMetadata
|
||||||
|
|
||||||
|
- Purpose: **Remove task metadata by name**
|
||||||
|
- Parameters:
|
||||||
|
- **task_id** (integer, required)
|
||||||
|
- **name** (string, required)
|
||||||
|
- Result on success: **true**
|
||||||
|
- Result on failure: **false**
|
||||||
|
|
||||||
|
Request example to remove metada of a task by name:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"method": "removeTaskMetadata",
|
||||||
|
"id": 133280317,
|
||||||
|
"params": [
|
||||||
|
1,
|
||||||
|
"metaKey1"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Response example:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 133280317,
|
||||||
|
"result": true
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ require_once __DIR__.'/BaseProcedureTest.php';
|
|||||||
class TaskProcedureTest extends BaseProcedureTest
|
class TaskProcedureTest extends BaseProcedureTest
|
||||||
{
|
{
|
||||||
protected $projectName = 'My project to test tasks';
|
protected $projectName = 'My project to test tasks';
|
||||||
|
protected $metaKey = 'MyTestMetaKey';
|
||||||
|
|
||||||
public function testAll()
|
public function testAll()
|
||||||
{
|
{
|
||||||
@@ -15,8 +16,45 @@ class TaskProcedureTest extends BaseProcedureTest
|
|||||||
$this->assertGetTaskByReference();
|
$this->assertGetTaskByReference();
|
||||||
$this->assertGetAllTasks();
|
$this->assertGetAllTasks();
|
||||||
$this->assertOpenCloseTask();
|
$this->assertOpenCloseTask();
|
||||||
|
$this->assertSaveTaskMetadata();
|
||||||
|
$this->assertGetTaskMetadata();
|
||||||
|
$this->assertGetTaskMetadataByName();
|
||||||
|
$this->assertRemoveTaskMetadata():
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function assertSaveTaskMetadata()
|
||||||
|
{
|
||||||
|
$createMetaKey = $this->app->saveTaskMetadata($this->taskId,array($this->metaKey => 'metaValue1'));
|
||||||
|
$this->assertTrue($createMetaKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function assertGetTaskMetadata()
|
||||||
|
{
|
||||||
|
$createMetaKey = $this->app->saveTaskMetadata($this->taskId,array($this->metaKey => 'metaValue1'));
|
||||||
|
$this->assertTrue($createMetaKey,'Did not create metakey with success');
|
||||||
|
$metaData = $this->app->getTaskMetadata(($this->taskId);
|
||||||
|
$this->assertArrayHasKey($this->metaKey, $metaData);
|
||||||
|
$this->assertEquals('metaValue1', $metaData[$this->metaKey]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function assertGetTaskMetadataByName()
|
||||||
|
{
|
||||||
|
$createMetaKey = $this->app->saveTaskMetadata($this->taskId,array($this->metaKey => 'metaValue1'));
|
||||||
|
$this->assertTrue($createMetaKey,'Did not create metakey with success');
|
||||||
|
$metaValue = $this->app->getTaskMetadataByName($this->taskId,$this->metaKey);
|
||||||
|
$this->assertEquals('metaValue1', $metaValue, 'Did not return correct metadata value');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function assertRemoveTaskMetadata()
|
||||||
|
{
|
||||||
|
$createMetaKey = $this->app->saveTaskMetadata($this->taskId,array($this->metaKey => 'metaValue1'));
|
||||||
|
$this->assertTrue($createMetaKey,'Did not create metakey with success');
|
||||||
|
$metaValue = $this->app->removeTaskMetadata($this->taskId,$this->metaKey);
|
||||||
|
$this->assertTrue($metaValue,'Did not remove metakey with success');
|
||||||
|
$metaValue = $this->app->getTaskMetadataByName($this->taskId,$this->metaKey);
|
||||||
|
$this->assertEquals('',$metaValue,'Did not return an empty string due to metadata being deleted');
|
||||||
|
}
|
||||||
|
|
||||||
public function assertUpdateTask()
|
public function assertUpdateTask()
|
||||||
{
|
{
|
||||||
$this->assertTrue($this->app->updateTask(array('id' => $this->taskId, 'color_id' => 'red')));
|
$this->assertTrue($this->app->updateTask(array('id' => $this->taskId, 'color_id' => 'red')));
|
||||||
|
|||||||
Reference in New Issue
Block a user