Project

General

Profile

Actions

UniEditor » History » Revision 8

« Previous | Revision 8/11 (diff) | Next »
Yuriy Shekochihin, 07/08/2011 12:31 PM


UniEditor

Содержит дерево требований с тест-кейсами (для краткости будем называть кейсами), каждый узел дерева содержит информацию о соответствующем требовании или кейсе.

Узел-требование

Содержит:
  1. Имя требования (Name)
  2. Текст требования
    • если требование имеет alternative description, то это оно и есть
    • если требование не имеет alternative description, то это description
    • если требование только что создано через Requality Explorer или через UniEditor

Узел-кейс

Содержит:
  1. Test Case Number
  2. Описание (Test Case Description)
  3. Ожидаемый результат (Expected Result)

Команды в редакторе

  • Переходы вверх/вниз по дереву
  • Добавить требование-брата
  • Добавить требование-ребенка
  • Добавить test case-ребенка
  • Удалить выделенные узлы (Как выделить несколько? Нужно предупреждение, если у узла есть потомки? Нужна возможность отменить удаление?)
  • Переместить узел (Предупреждение при наличии потомков?)
  • Вход/выход из режима редактирования.

Интерфейс UniEditor <-> Eclipse
////////////////////////////////////////////////////////////////////////////////
// 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);

Updated by Yuriy Shekochihin almost 13 years ago · 8 revisions