1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-11-28 09:08:38 +02:00

Обновление тестов Twitter

This commit is contained in:
Anton 2024-09-21 10:48:42 +03:00
parent 6ac754cef5
commit e07c053e82
16 changed files with 249 additions and 13997 deletions

View File

@ -1,125 +0,0 @@
name: CLI | Добавить пакеты в Draft
on:
workflow_dispatch:
jobs:
Build:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Установить cmdline, asserts и osparser
run: |
opm install cmdline
opm install asserts
opm install osparser
opm install coloratos
- name: Записать измененный список методов CLI
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: Vitaly the Alpaca (bot)
commit_user_email: vitaly.the.alpaca@gmail.com
commit_author: Vitaly the Alpaca <vitaly.the.alpaca@gmail.com>
commit_message: Обновление зашифрованных данных по результатам тестов (workflow)
- name: Собрать и установить OInt
run: |
cd ./src/ru/OInt
opm build
opm install *.ospx
- name: Собрать бинарник
run: |
cd ./src/ru/cli
oscript -make core/Classes/app.os oint
- name: Собрать exe
run: |
cd ./src/ru/cli
oscript -make core/Classes/app.os oint.exe
- name: Записать артефакт
uses: actions/upload-artifact@v4
with:
name: oint
path: ./src/ru/cli/oint
- name: Создать каталог deb-пакета
run: |
mkdir -p .debpkg/usr/bin
cp ./src/ru/cli/oint .debpkg/usr/bin/oint
chmod +x .debpkg/usr/bin/oint
- name: Собрать deb-пакет
uses: jiro4989/build-deb-action@v3
with:
package: oint
package_root: .debpkg
maintainer: Anton Titovets <bayselonarrend@gmail.com>
version: '1.13.0' # refs/tags/v*.*.*
arch: 'all'
depends: 'mono-devel, libmono-system-core4.0-cil | libmono-system-core4.5-cil, libmono-system4.0-cil | libmono-system4.5-cil, libmono-corlib4.0-cil | libmono-corlib4.5-cil, libmono-i18n4.0-all | libmono-i18n4.5-all'
desc: 'OInt CLI - приложение для работы с API различных онлайн-сервисов из командной строки'
- name: Изменить имя пакета deb
run: |
cp oint_1.13.0_all.deb oint_1.13.0_all_ru.deb
rm oint_1.13.0_all.deb
- uses: actions/upload-artifact@v3
with:
name: oint-deb
path: |
oint_1.13.0_all_ru.deb
- name: Создать каталог rpm-пакета
run: |
mkdir -p .rpmpkg/usr/bin
mkdir -p .rpmpkg/usr/share/oint/bin
cp ./src/ru/cli/oint .rpmpkg/usr/share/oint/bin/oint
echo 'mono /usr/share/oint/bin/oint "$@"' > .rpmpkg/usr/bin/oint
chmod +x .rpmpkg/usr/bin/oint
- name: Собрать rpm-пакет
uses: jiro4989/build-rpm-action@v2
with:
summary: 'OInt CLI - приложение для работы с API различных онлайн-сервисов из командной строки. Требуется mono-runtime с поддержкой .NET Framework 4.8'
package: oint
package_root: .rpmpkg
maintainer: Anton Titovets <bayselonarrend@gmail.com>
version: '1.13.0'
arch: 'x86_64'
desc: 'OInt CLI - приложение для работы с API различных онлайн-сервисов из командной строки'
requires: |
mono-devel
Requires: mono-locale-extras
- name: Изменить имя пакета rpm
run: |
cp oint-1.13.0-1.el7.x86_64.rpm oint-1.13.0-1.el7.x86_64_ru.rpm
rm oint-debuginfo-1.13.0-1.el7.x86_64.rpm
rm oint-1.13.0-1.el7.x86_64.rpm
- uses: actions/upload-artifact@v4
with:
name: oint-rpm
path: |
./oint-1.13.0-1.el7.x86_64_ru.rpm
- name: Добавить DEB
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload draft ./*.deb
- name: Добавить RPM
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload draft ./*.rpm

View File

@ -1,125 +0,0 @@
name: CLI | Добавить пакеты в Draft (EN)
on:
workflow_dispatch:
jobs:
Build:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Установить cmdline, asserts и osparser
run: |
opm install cmdline
opm install asserts
opm install osparser
opm install coloratos
- name: Записать измененный список методов CLI
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: Vitaly the Alpaca (bot)
commit_user_email: vitaly.the.alpaca@gmail.com
commit_author: Vitaly the Alpaca <vitaly.the.alpaca@gmail.com>
commit_message: Обновление зашифрованных данных по результатам тестов (workflow)
- name: Собрать и установить OInt
run: |
cd ./src/en/OInt
opm build
opm install *.ospx
- name: Собрать бинарник
run: |
cd ./src/en/cli
oscript -make core/Classes/app.os oint
- name: Собрать exe
run: |
cd ./src/en/cli
oscript -make core/Classes/app.os oint.exe
- name: Записать артефакт
uses: actions/upload-artifact@v4
with:
name: oint
path: ./src/en/cli/oint
- name: Создать каталог deb-пакета
run: |
mkdir -p .debpkg/usr/bin
cp ./src/en/cli/oint .debpkg/usr/bin/oint
chmod +x .debpkg/usr/bin/oint
- name: Собрать deb-пакет
uses: jiro4989/build-deb-action@v3
with:
package: oint
package_root: .debpkg
maintainer: Anton Titovets <bayselonarrend@gmail.com>
version: '1.13.0' # refs/tags/v*.*.*
arch: 'all'
depends: 'mono-devel, libmono-system-core4.0-cil | libmono-system-core4.5-cil, libmono-system4.0-cil | libmono-system4.5-cil, libmono-corlib4.0-cil | libmono-corlib4.5-cil, libmono-i18n4.0-all | libmono-i18n4.5-all'
desc: 'OInt CLI - CLI toolkit for integrating with APIs of popular online services'
- name: Изменить имя пакета deb
run: |
cp oint_1.13.0_all.deb oint_1.13.0_all_en.deb
rm oint_1.13.0_all.deb
- uses: actions/upload-artifact@v3
with:
name: oint-deb
path: |
./oint_1.13.0_all_en.deb
- name: Создать каталог rpm-пакета
run: |
mkdir -p .rpmpkg/usr/bin
mkdir -p .rpmpkg/usr/share/oint/bin
cp ./src/en/cli/oint .rpmpkg/usr/share/oint/bin/oint
echo 'mono /usr/share/oint/bin/oint "$@"' > .rpmpkg/usr/bin/oint
chmod +x .rpmpkg/usr/bin/oint
- name: Собрать rpm-пакет
uses: jiro4989/build-rpm-action@v2
with:
summary: 'OInt CLI - CLI toolkit for integrating with APIs of popular online services. Mono-runtime with .NET Framework 4.8 support required'
package: oint
package_root: .rpmpkg
maintainer: Anton Titovets <bayselonarrend@gmail.com>
version: '1.13.0'
arch: 'x86_64'
desc: 'OInt CLI - CLI toolkit for integrating with APIs of popular online services'
requires: |
mono-devel
Requires: mono-locale-extras
- name: Изменить имя пакета rpm
run: |
cp oint-1.13.0-1.el7.x86_64.rpm oint-1.13.0-1.el7.x86_64_en.rpm
rm oint-debuginfo-1.13.0-1.el7.x86_64.rpm
rm oint-1.13.0-1.el7.x86_64.rpm
- uses: actions/upload-artifact@v4
with:
name: oint-rpm
path: |
./oint-1.13.0-1.el7.x86_64_en.rpm
- name: Добавить DEB
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload draft ./*.deb
- name: Добавить RPM
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload draft ./*.rpm

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,47 +0,0 @@
name: Документация | Развернуть на Neocities (английская версия)
on:
workflow_dispatch:
concurrency:
group: deploy-to-neocities
cancel-in-progress: true
jobs:
Deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Перевести контент страниц
run: oscript ./.github/workflows/os/docs_pagetranslate.os
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Установка зависимостей
run: |
cd ./docs/docusaurus
npm install
- name: Сборка
run: |
cp -r ./docs/en/md ./docs/docusaurus/docs
cd ./docs/docusaurus
yarn build
- name: Развертывание на neocities
uses: bcomnes/deploy-to-neocities@v2
with:
api_token: ${{ secrets.NEOCITIES_EN_API_TOKEN }}
cleanup: true
dist_dir: ./docs/docusaurus/build

View File

@ -1,40 +0,0 @@
name: Документация | Развернуть на Neocities (русская версия)
on:
workflow_dispatch:
concurrency:
group: deploy-to-neocities
cancel-in-progress: true
jobs:
Deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Установка зависимостей
run: |
cd ./docs/docusaurus
npm install
- name: Сборка
run: |
cp -r ./docs/ru/md ./docs/docusaurus/docs
cd ./docs/docusaurus
yarn build
- name: Развертывание на neocities
uses: bcomnes/deploy-to-neocities@v2
with:
api_token: ${{ secrets.NEOCITIES_API_TOKEN }}
cleanup: true
dist_dir: ./docs/docusaurus/build

View File

@ -1,47 +0,0 @@
name: Документация | Развернуть на Neocities (EN, тестовый)
on:
workflow_dispatch:
concurrency:
group: deploy-to-neocities
cancel-in-progress: true
jobs:
Deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Перевести контент страниц
run: oscript ./.github/workflows/os/docs_pagetranslate.os
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Установка зависимостей
run: |
cd ./docs/docusaurus
npm install
- name: Сборка
run: |
cp -r ./docs/en/md ./docs/docusaurus/docs
cd ./docs/docusaurus
yarn build
- name: Развертывание на neocities
uses: bcomnes/deploy-to-neocities@v2
with:
api_token: ${{ secrets.NEOCITIES_API_TOKEN_TEST }}
cleanup: true
dist_dir: ./docs/docusaurus/build

View File

@ -1,40 +0,0 @@
name: Документация | Развернуть на Neocities (RU, тестовый)
on:
workflow_dispatch:
concurrency:
group: deploy-to-neocities
cancel-in-progress: true
jobs:
Deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Установка зависимостей
run: |
cd ./docs/docusaurus
npm install
- name: Сборка
run: |
cp -r ./docs/ru/md ./docs/docusaurus/docs
cd ./docs/docusaurus
yarn build
- name: Развертывание на neocities
uses: bcomnes/deploy-to-neocities@v2
with:
api_token: ${{ secrets.NEOCITIES_API_TOKEN_TEST }}
cleanup: true
dist_dir: ./docs/docusaurus/build

View File

@ -1,40 +0,0 @@
name: Документация | Создать MD страницы с документацией
# Controls when the workflow will run
on:
workflow_dispatch:
jobs:
Convert:
runs-on: ubuntu-latest
permissions:
actions: write
contents: write
steps:
- uses: actions/checkout@v2
with:
token: ${{secrets.TOKEN}}
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Установить osparser и cmdline
run: |
opm install osparser
opm install cmdline
- name: Выполнить скрипт парсинга тестов
run: oscript ./.github/workflows/os/docs_main.os
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: Vitaly the Alpaca (bot)
commit_user_email: vitaly.the.alpaca@gmail.com
commit_author: Vitaly the Alpaca <vitaly.the.alpaca@gmail.com>
commit_message: Создание MD файлов документации

View File

@ -1,53 +0,0 @@
name: 1. MAIN | Основной процесс OPI -> OInt -> CLI
# Controls when the workflow will run
on:
[workflow_dispatch]
jobs:
Convert:
runs-on: ubuntu-latest
permissions:
actions: write
contents: write
steps:
- uses: actions/checkout@v2
with:
token: ${{secrets.TOKEN}}
- uses: otymko/setup-onescript@v1.4
with:
version: 1.9.0
- name: Установить зависимости
run: |
opm install cmdline
opm install asserts
opm install osparser
opm install coloratos
- name: Расшифровать тестовые данные
run: gpg --quiet --batch --yes --decrypt --passphrase="$ENC_JSON" --output ./data.json ./data.json.gpg
env:
ENC_JSON: ${{ secrets.ENC_JSON }}
- name: Основной процесс преобразований
run: oscript ./.github/workflows/os/main.os
- name: Обновить Workflow тестирования CLI
run: oscript ./.github/workflows/os/cli_testmaker.os
- name: Обновить Workflow тестирования CLI (EN)
run: oscript ./.github/workflows/os/cli_testmaker_en.os
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_user_name: Vitaly the Alpaca (bot)
commit_user_email: vitaly.the.alpaca@gmail.com
commit_author: Vitaly the Alpaca <vitaly.the.alpaca@gmail.com>
commit_message: Преобразование OPI -> OInt (workflow)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,42 +0,0 @@
name: Сервис | Анализ SonarQube
on:
workflow_dispatch:
permissions:
pull-requests: read
jobs:
Analysis:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Анализ OPI
uses: SonarSource/sonarqube-scan-action@7295e71c9583053f5bf40e9d4068a0c974603ec8
env:
GITHUB_TOKEN: ${{ secrets.TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}
LC_ALL: "ru_RU.UTF-8"
with:
projectBaseDir: ${{ github.workspace }}/src/ru
args:
-Dsonar.projectKey=OpenIntegrations
-Dsonar.sourceEncoding=UTF-8
-Dsonar.inclusions=**/*.bsl
- name: Анализ OInt
uses: SonarSource/sonarqube-scan-action@7295e71c9583053f5bf40e9d4068a0c974603ec8
env:
GITHUB_TOKEN: ${{ secrets.TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }}
LC_ALL: "ru_RU.UTF-8"
with:
projectBaseDir: ${{ github.workspace }}/src/ru/OInt
args:
-Dsonar.projectKey=OInt
-Dsonar.sourceEncoding=UTF-8
-Dsonar.inclusions=**/*.os

View File

@ -50,7 +50,7 @@
// Формирует ссылку для авторизации через браузер
//
// Параметры:
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Строка - URL для перехода в браузере
@ -80,7 +80,7 @@
//
// Параметры:
// Код - Строка - Код, полученный из авторизации См.ПолучитьСсылкуАвторизации - code
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -108,7 +108,7 @@
// Обновляет v2 токен при помощи refresh_token
//
// Параметры:
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -166,7 +166,7 @@
// МассивМедиа - Массив из Строка,ДвоичныеДанные - Массив двоичных данных или путей к файлам
// МассивВариантовОпроса - Массив из Строка - Массив вариантов опроса, если необходимо
// ДлительностьОпроса - Строка,Число - Длительность опроса, если необходимо (опрос без длительности не создается)
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -227,7 +227,7 @@
//
// Параметры:
// Текст - Строка - Текст твита - text
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -241,7 +241,7 @@
// Параметры:
// Текст - Строка - Текст твита - text
// МассивКартинок - Массив из Строка,ДвоичныеДанные - Массив файлов картинок - pictures
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -258,7 +258,7 @@
// Параметры:
// Текст - Строка - Текст твита - text
// МассивГифок - Массив из Строка,ДвоичныеДанные - Массив файлов гифок - gifs
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -275,7 +275,7 @@
// Параметры:
// Текст - Строка - Текст твита - text
// МассивВидео - Массив из Строка,ДвоичныеДанные - Массив файлов видео - videos
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -293,7 +293,7 @@
// Текст - Строка - Текст твита - text
// МассивВариантов - Массив из Строка - Массив вариантов опроса - options
// Длительность - Строка,Число - Длительность опроса - duration
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Twitter
@ -309,7 +309,7 @@
// Параметры:
// МассивФайлов - Массив из Строка, ДвоичныеДанные - Массив файлов
// ТипВложений - Строка - Тип вложений
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - Структура авторизации или путь к .json
//
// Возвращаемое значение:
// Массив Из Строка - Массив ID медиа

View File

@ -169,13 +169,8 @@
НовыйТест(ТаблицаТестов, "ГТ_ПолучитьТаблицу" , "Получить таблицу" , Таблицы);
НовыйТест(ТаблицаТестов, "ГТ_ЗаполнитьОчиститьЯчейки" , "Заполнить/Очистить ячейки" , Таблицы);
НовыйТест(ТаблицаТестов, "Твиттер_ПолучитьСсылкуАвторизации" , "Получить ссылку авторизации" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_ОбновитьТокен" , "Обновить токен" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_СоздатьТекстовыйТвит" , "Текстовый твит" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_СоздатьТвитСКартинкой" , "Твит с картинкой" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_СоздатьТвитСВидео" , "Твит с видео" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_СоздатьТвитСГиф" , "Твит с гиф" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_СоздатьТвитСОпросом" , "Твит с опросом" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_ДанныеАккаунта" , "Данные аккаунта" , Твиттер);
НовыйТест(ТаблицаТестов, "Твиттер_Твиты" , "Создание твитов" , Твиттер);
НовыйТест(ТаблицаТестов, "Вайбер_ПолучениеИнформации" , "Получение информации" , Вайбер);
НовыйТест(ТаблицаТестов, "Вайбер_ОтправкаСообщений" , "Отправка сообщений" , Вайбер);
@ -423,10 +418,8 @@
Путь = "";
ВозможныеПути = Новый Массив;
ВозможныеПути.Добавить("./data.json");
ВозможныеПути.Добавить("C:\data.json");
ВозможныеПути.Добавить("C:\GDrive\Мой диск\data.json");
ВозможныеПути.Добавить("D:\GD\Мой диск\data.json");
ВозможныеПути.Добавить("./data.json");
Для Каждого ВозможныйПуть Из ВозможныеПути Цикл
@ -434,6 +427,7 @@
Если ФайлРепозитория.Существует() Тогда
Путь = ВозможныйПуть;
Прервать;
КонецЕсли;
КонецЦикла;

View File

@ -1380,154 +1380,22 @@
#Область Twitter
Процедура Твиттер_ПолучитьСсылкуАвторизации() Экспорт
Процедура Твиттер_ДанныеАккаунта() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Результат = OPI_Twitter.ПолучитьСсылкуАвторизации(Параметры);
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Строка").Заполнено();
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_URL", Результат);
OPI_Инструменты.Пауза(5);
ПараметрыТеста = Новый Структура;
Twitter_ПолучитьСсылкуАвторизации(ПараметрыТеста);
Twitter_ОбновитьТокен(ПараметрыТеста);
КонецПроцедуры
Процедура Твиттер_ОбновитьТокен() Экспорт
Процедура Твиттер_Твиты() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Результат = OPI_Twitter.ОбновитьТокен(Параметры);
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["access_token"]).Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["refresh_token"]).Заполнено();
Рефреш = Результат["refresh_token"];
Токен = Результат["access_token"];
Если ЗначениеЗаполнено(Рефреш) И Не Рефреш = "null" Тогда
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_Refresh", Рефреш);
КонецЕсли;
Если ЗначениеЗаполнено(Токен) И Не Токен = "null" Тогда
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_Token" , Токен);
КонецЕсли;
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура Твиттер_СоздатьТекстовыйТвит() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТекстовыйТвит(Текст, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТекстовыйТвит");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура Твиттер_СоздатьТвитСКартинкой() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Картинка = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Picture");
ИВФ = ПолучитьИмяВременногоФайла("png");
Картинка.Записать(ИВФ);
Результат = OPI_Twitter.СоздатьТвитКартинки(Текст, Картинка, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитКартинки");
Проверка_ТвиттерТекст(Результат, Текст);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитКартинки(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитКартинки");
Проверка_ТвиттерТекст(Результат, Текст);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Твиттер_СоздатьТвитСВидео() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Видео = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Video");
ИВФ = ПолучитьИмяВременногоФайла("mp4");
Видео.Записать(ИВФ);
Результат = OPI_Twitter.СоздатьТвитВидео(Текст, Видео, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитВидео");
Проверка_ТвиттерТекст(Результат, Текст);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитВидео(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитВидео");
Проверка_ТвиттерТекст(Результат, Текст);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Твиттер_СоздатьТвитСГиф() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Гифка = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("GIF");
ИВФ = ПолучитьИмяВременногоФайла("gif");
Гифка.Записать(ИВФ);
Результат = OPI_Twitter.СоздатьТвитГифки(Текст, Гифка, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитГифки");
Проверка_ТвиттерТекст(Результат, Текст);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитГифки(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитГифки");
Проверка_ТвиттерТекст(Результат, Текст);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Твиттер_СоздатьТвитСОпросом() Экспорт
Параметры = ПолучитьПараметрыТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
МассивОтветов = Новый Массив;
МассивОтветов.Добавить("Вариант 1");
МассивОтветов.Добавить("Вариант 2");
Результат = OPI_Twitter.СоздатьТвитОпрос(Текст, МассивОтветов, 60, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитОпрос");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(20);
ПараметрыТеста = Новый Структура;
Twitter_СоздатьТекстовыйТвит(ПараметрыТеста);
Twitter_СоздатьТвитКартинки(ПараметрыТеста);
Twitter_СоздатьТвитВидео(ПараметрыТеста);
Twitter_СоздатьТвитГифки(ПараметрыТеста);
Twitter_СоздатьТвитОпрос(ПараметрыТеста);
КонецПроцедуры
@ -3186,7 +3054,7 @@
КонецФункции
Функция ПолучитьПараметрыТвиттер()
Функция ПолучитьПараметрыАвторизацииТвиттер()
Параметры = Новый Соответствие;
@ -3696,6 +3564,14 @@
КонецПроцедуры
Процедура Проверка_ТвиттерТокен(Знач Результат)
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["access_token"]).Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["refresh_token"]).Заполнено();
КонецПроцедуры
Процедура Проверка_НоушнОбъект(Знач Результат, Знач Вид = "page")
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
@ -6627,6 +6503,217 @@
#КонецОбласти
#Область Twitter
Процедура Twitter_ПолучитьСсылкуАвторизации(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Результат = OPI_Twitter.ПолучитьСсылкуАвторизации(Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСсылкуАвторизации", "Twitter");
Проверка_Строка(Результат);
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_URL", Результат);
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура Twitter_ОбновитьТокен(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Результат = OPI_Twitter.ОбновитьТокен(Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОбновитьТокен", "Twitter");
Проверка_ТвиттерТокен(Результат);
Рефреш = Результат["refresh_token"];
Токен = Результат["access_token"];
Если ЗначениеЗаполнено(Рефреш) И Не Рефреш = "null" Тогда
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_Refresh", Рефреш);
КонецЕсли;
Если ЗначениеЗаполнено(Токен) И Не Токен = "null" Тогда
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Twitter_Token" , Токен);
КонецЕсли;
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура Twitter_СоздатьТекстовыйТвит(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТекстовыйТвит(Текст, Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТекстовыйТвит", "Twitter");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура Twitter_СоздатьТвитКартинки(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Картинка = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Picture"); // URL, Двоичные или Путь к файлу
Картинка2 = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Picture2"); // URL, Двоичные или Путь к файлу
МассивКартинок = Новый Массив;
МассивКартинок.Добавить(Картинка);
МассивКартинок.Добавить(Картинка2);
Результат = OPI_Twitter.СоздатьТвитКартинки(Текст, МассивКартинок, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитКартинки", "Twitter"); // SKIP
Проверка_ТвиттерТекст(Результат, Текст); // SKIP
OPI_Инструменты.Пауза(15); // SKIP
Результат = OPI_Twitter.СоздатьТвитКартинки(Текст, Картинка, Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитКартинки (одиночная)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
ИВФ = ПолучитьИмяВременногоФайла();
Картинка.Записать(ИВФ);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитКартинки(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитКартинки (ИВФ)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Twitter_СоздатьТвитВидео(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Видео = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Video"); // URL, Двоичные или Путь к файлу
Видео2 = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("Video"); // URL, Двоичные или Путь к файлу
МассивВидео = Новый Массив;
МассивВидео.Добавить(Видео);
МассивВидео.Добавить(Видео2);
Результат = OPI_Twitter.СоздатьТвитВидео(Текст, МассивВидео, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитВидео", "Twitter"); // SKIP
Проверка_ТвиттерТекст(Результат, Текст); // SKIP
OPI_Инструменты.Пауза(15); // SKIP
Результат = OPI_Twitter.СоздатьТвитВидео(Текст, Видео, Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитВидео (одиночная)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
ИВФ = ПолучитьИмяВременногоФайла();
Видео.Записать(ИВФ);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитВидео(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитВидео (ИВФ)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Twitter_СоздатьТвитГифки(ПараметрыФункции)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Гифка = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("GIF"); // URL, Двоичные или Путь к файлу
Гифка2 = OPI_ПолучениеДанныхТестов.ПолучитьДвоичные("GIF"); // URL, Двоичные или Путь к файлу
МассивГифок = Новый Массив;
МассивГифок.Добавить(Гифка);
МассивГифок.Добавить(Гифка2);
Результат = OPI_Twitter.СоздатьТвитГифки(Текст, МассивГифок, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитГифки", "Twitter"); // SKIP
Проверка_ТвиттерТекст(Результат, Текст); // SKIP
OPI_Инструменты.Пауза(15); // SKIP
Результат = OPI_Twitter.СоздатьТвитГифки(Текст, Гифка, Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитГифки (одиночная)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
ИВФ = ПолучитьИмяВременногоФайла();
Видео.Записать(ИВФ);
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
Результат = OPI_Twitter.СоздатьТвитГифки(Текст, ИВФ, Параметры);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитГифки (ИВФ)");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(15);
УдалитьФайлы(ИВФ);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
Процедура Twitter_СоздатьТвитОпрос(ПараметрыТеста)
Параметры = ПолучитьПараметрыАвторизацииТвиттер();
Текст = "Тестовый твитт" + Строка(Новый УникальныйИдентификатор);
МассивОтветов = Новый Массив;
МассивОтветов.Добавить("Вариант 1");
МассивОтветов.Добавить("Вариант 2");
Результат = OPI_Twitter.СоздатьТвитОпрос(Текст, МассивОтветов, 60, Параметры);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СоздатьТвитОпрос", "Twitter");
Проверка_ТвиттерТекст(Результат, Текст);
OPI_Инструменты.Пауза(20);
КонецПроцедуры
#КонецОбласти
#Область Dropbox
Процедура Dropbox_ПолучитьСсылкуАвторизации(ПараметрыФункции)