UniEditor » History » Revision 8
Revision 7 (Viktoria Kopach, 05/19/2011 08:47 PM) → Revision 8/11 (Yuriy Shekochihin, 07/08/2011 12:31 PM)
h1. UniEditor
{{toc}}
Содержит дерево требований с тест-кейсами (для краткости будем называть кейсами), каждый узел дерева содержит информацию о соответствующем требовании или кейсе.
h2. Узел-требование
Содержит:
# Имя требования (Name)
# Текст требования
* если требование имеет alternative description, то это оно и есть
* если требование не имеет alternative description, то это description
* если требование только что создано через Requality Explorer или через UniEditor
h2. Узел-кейс
Содержит:
# Test Case Number
# Описание (Test Case Description)
# Ожидаемый результат (Expected Result)
h2. Команды в редакторе
* Переходы вверх/вниз по дереву
* Добавить требование-брата
* Добавить требование-ребенка
* Добавить test case-ребенка
* Удалить выделенные узлы (Как выделить несколько? Нужно предупреждение, если у узла есть потомки? Нужна возможность отменить удаление?)
* Переместить узел (Предупреждение при наличии потомков?)
* Вход/выход из режима редактирования.
h2. Интерфейс UniEditor <-> Eclipse
<pre>
////////////////////////////////////////////////////////////////////////////////
// External functions implemented and injected by Requality
/*
Request for the specific node data
Input parameters:
uuid - (String) uuid of the requested node
Return value:
String value containing JSON definition of the node. Possible values:
a) for root element (''Requirements''):
{ type: null,
children: [''<uuid1>'', ''<uuid2>'', ...] }
b) for requirement elements:
{ type: ''requirement'', id: ''<node_id>'',
description: ''<node_description>'',
children: [''<uuid1>'', ''<uuid2>'', ...] }
b) for testcase elements:
{ type: ''testcase'',
id: ''<node_id>'',
description: ''<testcase_description>'',
result: ''<testcase_result>'',
status: ''<in progress|complete|verified>'' }
*/
function getNode(uuid);
/*
Request for the root element of the selected subtree
Input parameters:
none
Return value:
String value containing uuid of the subtree root node
*/
function getStartNode();
/*
Request to change the node ID
Input parameters:
uuid - (String) uuid of the updated node
new_id - (String) new ID to be set
Return value:
Boolean value: true if operation was successful, false otherwise
*/
function changeNodeId(uuid, new_id);
/*
Request to change the value of one of the node attributes
Input parameters:
uuid - (String) uuid of the updated node
attr_name - (String) name of the changed attribute
new_val - (String) new attribute value to be set
Return value:
Boolean value: true if operation was successful, false otherwise
*/
function changeNodeAttr(uuid, attr_name, new_val);
/*
Request to change the move a node into different subtree
Input parameters:
uuid - (String) uuid of the moved node
new_parent_uuid - (String) uuid of the new parent node
Return value:
Boolean value: true if operation was successful, false otherwise
*/
function changeNodeParent(uuid, new_parent_uuid);
/*
Request to insert a new node
Input parameters:
uuid - (String) uuid of the new node
parent_uuid - (String) uuid of the parent node
Return value:
Boolean value: true if operation was successful, false otherwise
*/
function addNode(uuid, parent_uuid);
/*
Request to remove a node with all its decendants
Input parameters:
uuid - (String) uuid of the removed node
Return value:
Boolean value: true if operation was successful, false otherwise
*/
function removeNode(uuid);
////////////////////////////////////////////////////////////////////////////////
// Callback functions that can be called by Requality
/*
Callback function called by Requality when node or some of its children change outside of UniEditor
Input parameters:
uuid - (String) uuid of the updated node
Return value:
none
*/
function onChangeNode(uuid);
</pre>