1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-03-25 21:28:57 +02:00

Детализировал фичу смены типа оформления текста

This commit is contained in:
Dmitry 2017-11-17 21:30:36 +03:00
parent 978715a651
commit c5265f67f0
12 changed files with 376 additions and 3 deletions

@ -1,49 +1,92 @@
# encoding: utf-8
# language: ru
@tree
Функционал: Проверка переключения типа оформления текста
Как пользователь
Хочу иметь возможность менять тип оформления текста в задаче
Чтобы выбрать наиболее удобный для меня вариант
Контекст:
Дано Я запускаю сценарий открытия TestClient или подключаю уже существующий
Сценарий: смена оформления текста с форматированного на простой
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю форматированный тип оформления текста
И я меняю значение переключателя "ОформлениеТекста" на "Форматированный текст"
И я ввожу содержание задачи
Когда я переключаю на простой тип оформления текста
И я меняю значение переключателя "ОформлениеТекста" на "Текст"
Тогда текст описания задачи сохраняется
И элемент формы с именем "ТекстСодержания" стал равен "Тут у нас форматированный текст описаняи задачи"
Сценарий: смена оформления текста с форматированного на Markdown
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю форматированный тип оформления текста
И я меняю значение переключателя "ОформлениеТекста" на "Форматированный текст"
И я ввожу содержание задачи
Когда я переключаю на тип оформления текста Markdown
И я меняю значение переключателя "ОформлениеТекста" на "Markdown"
Тогда текст описания задачи сохраняется
И элемент формы с именем "ТекстСодержания" стал равен "Тут у нас форматированный текст описаняи задачи"
Сценарий: смена оформления простого текста на форматированный
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю простой тип оформления текста
И я меняю значение переключателя "ОформлениеТекста" на "Текст"
И я ввожу содержание задачи
И в поле с именем "ТекстСодержания" я ввожу текст "Тут у нас простой текст описаняи задачи"
Когда я переключаю на форматированный тип оформления текста
Тогда текст описания задачи сохраняется
И я меняю значение переключателя "ОформлениеТекста" на "Форматированный текст"
Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас простой текст описаняи задачи'
Сценарий: смена оформления простого текста на Markdown
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю простой тип оформления текста
И я меняю значение переключателя "ОформлениеТекста" на "Текст"
И я ввожу содержание задачи
И в поле с именем "ТекстСодержания" я ввожу текст "Тут у нас простой текст описаняи задачи"
Когда я переключаю на тип оформления текста Markdown
И я меняю значение переключателя "ОформлениеТекста" на "Markdown"
Тогда текст описания задачи сохраняется
И элемент формы с именем "ТекстСодержания" стал равен "Тут у нас простой текст описаняи задачи"
Сценарий: смена оформления текста типа Markdown на форматированный текст
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю тип оформления текста Markown
И я меняю значение переключателя "ОформлениеТекста" на "Markdown"
И я ввожу содержание задачи
И в поле с именем "ТекстСодержания" я ввожу текст "Тут у нас текст в формате Markdown"
Когда я переключаю на форматированный тип оформления текста
Тогда текст описания задачи сохраняется
И я меняю значение переключателя "ОформлениеТекста" на "Форматированный текст"
Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас текст в формате Markdown'
Сценарий: смена оформления текста типа Markdown на простой текст
Допустим я создаю новую задачу
Когда Я нажимаю кнопку командного интерфейса "Задачи"
Тогда открылось окно "Задачи"
И я нажимаю на кнопку "Создать"
И я выбираю тип оформления текста Markown
И я меняю значение переключателя "ОформлениеТекста" на "Markdown"
И я ввожу содержание задачи
И в поле с именем "ТекстСодержания" я ввожу текст "Тут у нас текст в формате Markdown"
Когда я переключаю на простой тип оформления текста
Тогда текст описания задачи сохраняется
И я меняю значение переключателя "ОформлениеТекста" на "Текст"
Тогда текст описания задачи сохраняется
И элемент формы с именем "ТекстСодержания" стал равен "Тут у нас текст в формате Markdown"

@ -0,0 +1,93 @@

///////////////////////////////////////////////////
//Служебные функции и процедуры
///////////////////////////////////////////////////
&НаКлиенте
// контекст фреймворка Vanessa-Behavior
Перем Ванесса;
&НаКлиенте
// Структура, в которой хранится состояние сценария между выполнением шагов. Очищается перед выполнением каждого сценария.
Перем Контекст Экспорт;
&НаКлиенте
// Структура, в которой можно хранить служебные данные между запусками сценариев. Существует, пока открыта форма Vanessa-Behavior.
Перем КонтекстСохраняемый Экспорт;
&НаКлиенте
// Функция экспортирует список шагов, которые реализованы в данной внешней обработке.
Функция ПолучитьСписокТестов(КонтекстФреймворкаBDD) Экспорт
Ванесса = КонтекстФреймворкаBDD;
ВсеТесты = Новый Массив;
//описание параметров
//Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,Снипет,ИмяПроцедуры,ПредставлениеТеста,ОписаниеШага,ТипШага,Транзакция,Параметр);
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,"ЯВвожуСодержаниеЗадачи()","ЯВвожуСодержаниеЗадачи","И я ввожу содержание задачи","","");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,"ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(Парам01)","ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде","Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас простой текст описаняи задачи'","","");
Возврат ВсеТесты;
КонецФункции
&НаСервере
// Служебная функция.
Функция ПолучитьМакетСервер(ИмяМакета)
ОбъектСервер = РеквизитФормыВЗначение("Объект");
Возврат ОбъектСервер.ПолучитьМакет(ИмяМакета);
КонецФункции
&НаКлиенте
// Служебная функция для подключения библиотеки создания fixtures.
Функция ПолучитьМакетОбработки(ИмяМакета) Экспорт
Возврат ПолучитьМакетСервер(ИмяМакета);
КонецФункции
///////////////////////////////////////////////////
//Работа со сценариями
///////////////////////////////////////////////////
&НаКлиенте
// Процедура выполняется перед началом каждого сценария
Процедура ПередНачаломСценария() Экспорт
КонецПроцедуры
&НаКлиенте
// Процедура выполняется перед окончанием каждого сценария
Процедура ПередОкончаниемСценария() Экспорт
КонецПроцедуры
///////////////////////////////////////////////////
//Реализация шагов
///////////////////////////////////////////////////
&НаКлиенте
//И я ввожу содержание задачи
//@ЯВвожуСодержаниеЗадачи()
Процедура ЯВвожуСодержаниеЗадачи() Экспорт
//КонтекстСохраняемый.ТестовоеПриложение.УстановитьРезультатДиалогаВыбораФайла(Истина,ИмяФайла);
КонтекстСохраняемый.ТестовоеПриложение.НайтиОбъект(,,"Содержание").ВвестиHTML("Тут у нас форматированный текст описаняи задачи");
//Ванесса.ПосмотретьЗначение(КонтекстСохраняемый.ТестовоеПриложение,Истина);
//ВызватьИсключение "Не реализовано.";
КонецПроцедуры
&НаКлиенте
//Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас простой текст описаняи задачи'
//@ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(Парам01)
Процедура ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(ПростойТекст) Экспорт
HTMLСтрока = "";
КонтекстСохраняемый.ТестовоеПриложение.НайтиОбъект(,,"Содержание").ПолучитьHTML(HTMLСтрока,Новый Структура);
пТекстСодержания = СтроковыеФункцииКлиентСервер.ИзвлечьТекстИзHTML(HTMLСтрока);
//Ванесса.ПосмотретьЗначение(HTMLСтрока,Истина);
//Ванесса.ПосмотретьЗначение(пТекстСодержания,Истина);
Если ПростойТекст <> пТекстСодержания Тогда
ВызватьИсключение "Тексты различаются!!";
КонецЕсли;
КонецПроцедуры

@ -0,0 +1 @@
Form\Форма\Форма.bsl-->9e85d150-94c5-4925-88c1-0611ff9360d3.0 (46, 139)

@ -0,0 +1,7 @@
9e85d150-94c5-4925-88c1-0611ff9360d3-->und\9e85d150-94c5-4925-88c1-0611ff9360d3
9e85d150-94c5-4925-88c1-0611ff9360d3.0-->und\9e85d150-94c5-4925-88c1-0611ff9360d3.0
c7e15496-cc1f-49ad-aed1-89cac680945a-->und\c7e15496-cc1f-49ad-aed1-89cac680945a
copyinfo-->und\copyinfo
root-->und\root
version-->und\version
versions-->und\versions

@ -0,0 +1,15 @@
{1,
{1,
{0,
{12,
{1,
{0,0,9e85d150-94c5-4925-88c1-0611ff9360d3},"Форма",
{1,"ru","Форма"},"",0,1,32e087ab-1491-49b6-aba7-43571b41ac2b,3},0,1,
{2,
{"#",1708fdaa-cbce-4289-b373-07a5a74bee91,1},
{"#",1708fdaa-cbce-4289-b373-07a5a74bee91,2}
}
},
{0}
}
},0}

@ -0,0 +1,176 @@
{3,
{42,0,0,0,0,1,0,0,00000000-0000-0000-0000-000000000000,1,
{1,0},0,0,1,1,1,0,1,0,
{0,1,0},
{0},1,
{21,
{-1,02023637-7868-4a5f-8576-835a76e0c9ba},0,0,0,9,"ФормаКоманднаяПанель",
{1,0},
{1,0},0,1,0,0,0,2,2,
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},1,
{0,0,1},0,1,0,0,0,3,3},0,"","",1,
{21,
{0},0,0,0,7,"Navigator",
{1,0},
{1,0},0,1,0,0,0,2,2,
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},0,0,1,0,1,
{10,
{0},0,0,0,0,"NavigatorExtendedTooltip",
{1,0},
{1,0},1,0,0,2,2,
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},1,
{5,0,0,3,0,
{0,1,0},
{3,4,
{0}
},
{3,4,
{0}
},
{3,0,
{0},0,1,0,48312c09-257f-4b29-b280-284dd89efc1e}
},0,1,2,
{1,
{1,0},0},0,0,1,0,0,1,0,3,3},0,3,3},1,"",0,0,0,0,0,0,3,3,0,0,0},"
///////////////////////////////////////////////////
//Служебные функции и процедуры
///////////////////////////////////////////////////
&НаКлиенте
// контекст фреймворка Vanessa-Behavior
Перем Ванесса;
&НаКлиенте
// Структура, в которой хранится состояние сценария между выполнением шагов. Очищается перед выполнением каждого сценария.
Перем Контекст Экспорт;
&НаКлиенте
// Структура, в которой можно хранить служебные данные между запусками сценариев. Существует, пока открыта форма Vanessa-Behavior.
Перем КонтекстСохраняемый Экспорт;
&НаКлиенте
// Функция экспортирует список шагов, которые реализованы в данной внешней обработке.
Функция ПолучитьСписокТестов(КонтекстФреймворкаBDD) Экспорт
Ванесса = КонтекстФреймворкаBDD;
ВсеТесты = Новый Массив;
//описание параметров
//Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,Снипет,ИмяПроцедуры,ПредставлениеТеста,ОписаниеШага,ТипШага,Транзакция,Параметр);
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,""ЯВвожуСодержаниеЗадачи()"",""ЯВвожуСодержаниеЗадачи"",""И я ввожу содержание задачи"","""","""");
Ванесса.ДобавитьШагВМассивТестов(ВсеТесты,""ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(Парам01)"",""ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде"",""Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас простой текст описаняи задачи'"","""","""");
Возврат ВсеТесты;
КонецФункции
&НаСервере
// Служебная функция.
Функция ПолучитьМакетСервер(ИмяМакета)
ОбъектСервер = РеквизитФормыВЗначение(""Объект"");
Возврат ОбъектСервер.ПолучитьМакет(ИмяМакета);
КонецФункции
&НаКлиенте
// Служебная функция для подключения библиотеки создания fixtures.
Функция ПолучитьМакетОбработки(ИмяМакета) Экспорт
Возврат ПолучитьМакетСервер(ИмяМакета);
КонецФункции
///////////////////////////////////////////////////
//Работа со сценариями
///////////////////////////////////////////////////
&НаКлиенте
// Процедура выполняется перед началом каждого сценария
Процедура ПередНачаломСценария() Экспорт
КонецПроцедуры
&НаКлиенте
// Процедура выполняется перед окончанием каждого сценария
Процедура ПередОкончаниемСценария() Экспорт
КонецПроцедуры
///////////////////////////////////////////////////
//Реализация шагов
///////////////////////////////////////////////////
&НаКлиенте
//И я ввожу содержание задачи
//@ЯВвожуСодержаниеЗадачи()
Процедура ЯВвожуСодержаниеЗадачи() Экспорт
//КонтекстСохраняемый.ТестовоеПриложение.УстановитьРезультатДиалогаВыбораФайла(Истина,ИмяФайла);
КонтекстСохраняемый.ТестовоеПриложение.НайтиОбъект(,,""Содержание"").ВвестиHTML(""Тут у нас форматированный текст описаняи задачи"");
//Ванесса.ПосмотретьЗначение(КонтекстСохраняемый.ТестовоеПриложение,Истина);
//ВызватьИсключение ""Не реализовано."";
КонецПроцедуры
&НаКлиенте
//Тогда текст описания задачи типа форматированный сохраняется в виде 'Тут у нас простой текст описаняи задачи'
//@ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(Парам01)
Процедура ТекстОписанияЗадачиТипаФорматированныйСохраняетсяВВиде(ПростойТекст) Экспорт
HTMLСтрока = """";
КонтекстСохраняемый.ТестовоеПриложение.НайтиОбъект(,,""Содержание"").ПолучитьHTML(HTMLСтрока,Новый Структура);
пТекстСодержания = СтроковыеФункцииКлиентСервер.ИзвлечьТекстИзHTML(HTMLСтрока);
//Ванесса.ПосмотретьЗначение(HTMLСтрока,Истина);
//Ванесса.ПосмотретьЗначение(пТекстСодержания,Истина);
Если ПростойТекст <> пТекстСодержания Тогда
ВызватьИсключение ""Тексты различаются!!"";
КонецЕсли;
КонецПроцедуры
",
{4,1,
{9,
{1},0,"Объект",
{1,0},
{"Pattern",
{"#",503de865-4645-4496-b5dd-2e4a76236095}
},
{0,
{0,
{"B",1},0}
},
{0,
{0,
{"B",1},0}
},
{0,0},
{0,0},1,0,0,0,
{0,0},
{0,0}
},0,0,
{#base64:77u/PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxTZXR0
aW5ncyB4bWxucz0iaHR0cDovL3Y4LjFjLnJ1LzguMS9kYXRhLWNvbXBvc2l0aW9u
LXN5c3RlbS9zZXR0aW5ncyIgeG1sbnM6ZGNzY29yPSJodHRwOi8vdjguMWMucnUv
OC4xL2RhdGEtY29tcG9zaXRpb24tc3lzdGVtL2NvcmUiIHhtbG5zOnN0eWxlPSJo
dHRwOi8vdjguMWMucnUvOC4xL2RhdGEvdWkvc3R5bGUiIHhtbG5zOnN5cz0iaHR0
cDovL3Y4LjFjLnJ1LzguMS9kYXRhL3VpL2ZvbnRzL3N5c3RlbSIgeG1sbnM6djg9
Imh0dHA6Ly92OC4xYy5ydS84LjEvZGF0YS9jb3JlIiB4bWxuczp2OHVpPSJodHRw
Oi8vdjguMWMucnUvOC4xL2RhdGEvdWkiIHhtbG5zOndlYj0iaHR0cDovL3Y4LjFj
LnJ1LzguMS9kYXRhL3VpL2NvbG9ycy93ZWIiIHhtbG5zOndpbj0iaHR0cDovL3Y4
LjFjLnJ1LzguMS9kYXRhL3VpL2NvbG9ycy93aW5kb3dzIiB4bWxuczp4cz0iaHR0
cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiIHhtbG5zOnhzaT0iaHR0cDov
L3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiLz4=}
},
{0,0},
{0,0},
{0,0},
{0,0},0,0}

@ -0,0 +1,17 @@
{1,
{c7e15496-cc1f-49ad-aed1-89cac680945a},1,
{c3831ec8-d8d5-4f93-8a22-f9bfae07327f,
{1,
{4,503de865-4645-4496-b5dd-2e4a76236095,4d213f80-34d7-4f82-80f0-c17b4f80d887,
{0,
{1,
{0,0,29d2f52d-0ed1-4254-a6bc-bbc6bc333ab1},"ПроверкаПереключенияТипаОформленияТекста",
{1,"ru","ПроверкаПереключенияТипаОформленияТекста"},"",0,0}
},9e85d150-94c5-4925-88c1-0611ff9360d3,"",00000000-0000-0000-0000-000000000000},4,
{2bcef0d1-0981-11d6-b9b8-0050bae0a95d,0},
{3daea016-69b7-4ed4-9453-127911372fe6,0},
{d5b0e5ed-256d-401c-9c36-f630cafd8a62,1,9e85d150-94c5-4925-88c1-0611ff9360d3},
{ec6bb5e5-b7a8-4d75-bec9-658107a699cf,0}
}
}
}

@ -0,0 +1,16 @@
{4,
{2,
{29d2f52d-0ed1-4254-a6bc-bbc6bc333ab1,29d2f52d-0ed1-4254-a6bc-bbc6bc333ab1,1,
{c3831ec8-d8d5-4f93-8a22-f9bfae07327f,"ПроверкаПереключенияТипаОформленияТекста"}
},
{9e85d150-94c5-4925-88c1-0611ff9360d3,9e85d150-94c5-4925-88c1-0611ff9360d3,1,
{d5b0e5ed-256d-401c-9c36-f630cafd8a62,"Форма"}
}
},
{1,
{503de865-4645-4496-b5dd-2e4a76236095,29d2f52d-0ed1-4254-a6bc-bbc6bc333ab1,0}
},
{0},
{0,0},
{0}
}

@ -0,0 +1 @@
{1,8,"",76d568fc-6d77-47a4-9919-2f088bad4cda,"9e85d150-94c5-4925-88c1-0611ff9360d3",f0737443-7a26-402e-ac14-50192724ee0b,"9e85d150-94c5-4925-88c1-0611ff9360d3.0",9dbf3143-db19-4b1f-b6ac-2dc664e0fbaa,"c7e15496-cc1f-49ad-aed1-89cac680945a",d1390085-496f-4db3-b887-11181ced9179,"copyinfo",7acaeec7-b2f5-489c-a086-6a6a751cc68c,"root",8bf8f86c-4b98-47c1-9305-80fbe91ce855,"version",42d97db7-6e57-4dce-a28c-ee8f682807cb,"versions",8ac2957e-43ed-4a5b-a743-01b487487713}