mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-06-06 23:46:28 +02:00
SQLite: Закрытие соединения и начало тестов
This commit is contained in:
parent
f67675686d
commit
4ddfb35e2d
File diff suppressed because it is too large
Load Diff
@ -3,12 +3,14 @@ mod methods;
|
|||||||
use addin1c::{name, Variant};
|
use addin1c::{name, Variant};
|
||||||
use crate::core::getset;
|
use crate::core::getset;
|
||||||
use rusqlite::{Connection};
|
use rusqlite::{Connection};
|
||||||
|
use serde_json::json;
|
||||||
|
|
||||||
// МЕТОДЫ КОМПОНЕНТЫ -------------------------------------------------------------------------------
|
// МЕТОДЫ КОМПОНЕНТЫ -------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Синонимы
|
// Синонимы
|
||||||
pub const METHODS: &[&[u16]] = &[
|
pub const METHODS: &[&[u16]] = &[
|
||||||
name!("Connect"),
|
name!("Connect"),
|
||||||
|
name!("Close"),
|
||||||
name!("Execute"),
|
name!("Execute"),
|
||||||
|
|
||||||
];
|
];
|
||||||
@ -17,7 +19,8 @@ pub const METHODS: &[&[u16]] = &[
|
|||||||
pub fn get_params_amount(num: usize) -> usize {
|
pub fn get_params_amount(num: usize) -> usize {
|
||||||
match num {
|
match num {
|
||||||
0 => 0,
|
0 => 0,
|
||||||
1 => 2,
|
1 => 0,
|
||||||
|
2 => 2,
|
||||||
_ => 0,
|
_ => 0,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -28,11 +31,9 @@ pub fn cal_func(obj: &mut AddIn, num: usize, params: &mut [Variant]) -> Box<dyn
|
|||||||
|
|
||||||
match num {
|
match num {
|
||||||
|
|
||||||
0 =>{
|
0 => Box::new(obj.initialize()),
|
||||||
Box::new(obj.initialize())
|
1 => Box::new(obj.close_connection()),
|
||||||
},
|
2 => {
|
||||||
|
|
||||||
1 => {
|
|
||||||
|
|
||||||
let query = params[0].get_string().unwrap_or("".to_string());
|
let query = params[0].get_string().unwrap_or("".to_string());
|
||||||
let params_json = params[1].get_string().unwrap_or("".to_string());
|
let params_json = params[1].get_string().unwrap_or("".to_string());
|
||||||
@ -91,6 +92,23 @@ impl AddIn {
|
|||||||
self.connection.as_ref()
|
self.connection.as_ref()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn close_connection(&mut self) -> String {
|
||||||
|
if let Some(conn) = self.connection.take() {
|
||||||
|
match conn.close() {
|
||||||
|
Ok(_) => json!({"result": true}).to_string(),
|
||||||
|
Err((_conn, err)) => json!({
|
||||||
|
"result": false,
|
||||||
|
"error": err.to_string()
|
||||||
|
}).to_string(),
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
json!({
|
||||||
|
"result": false,
|
||||||
|
"error": "Connection already closed"
|
||||||
|
}).to_string()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn get_field_ptr(&self, index: usize) -> *const dyn getset::ValueType {
|
pub fn get_field_ptr(&self, index: usize) -> *const dyn getset::ValueType {
|
||||||
match index {
|
match index {
|
||||||
0 => &self.connection_string as &dyn getset::ValueType as *const _,
|
0 => &self.connection_string as &dyn getset::ValueType as *const _,
|
||||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -55,7 +55,7 @@
|
|||||||
// Произвольный - Объект коннектора или структура с информацией об ошибке
|
// Произвольный - Объект коннектора или структура с информацией об ошибке
|
||||||
Функция СоздатьПодключение(Знач База = "") Экспорт
|
Функция СоздатьПодключение(Знач База = "") Экспорт
|
||||||
|
|
||||||
Если Строка(ТипЗнч(База)) = "AddIn.OPI_SQLite.Main" Тогда
|
Если ЭтоКоннектор(База) Тогда
|
||||||
Возврат База;
|
Возврат База;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@ -72,6 +72,31 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Закрыть подключение !NOCLI
|
||||||
|
// Явно закрывает переданное соединение
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Соединение - Произвольный - Объект компоненты с открытым соединением - db
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Структура Из КлючИЗначение - Результат закрытия соединения
|
||||||
|
Функция ЗакрытьПодключение(Знач Соединение) Экспорт
|
||||||
|
|
||||||
|
Если ЭтоКоннектор(Соединение) Тогда
|
||||||
|
|
||||||
|
Результат = Соединение.Close();
|
||||||
|
Результат = OPI_Инструменты.JsonВСтруктуру(Результат, Ложь);
|
||||||
|
|
||||||
|
Иначе
|
||||||
|
|
||||||
|
Результат = Новый Структура("result,error", Ложь, "It's not a connection");
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат Результат;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Выполнить запрос SQL
|
// Выполнить запрос SQL
|
||||||
// Выполняет произвольный SQL запрос
|
// Выполняет произвольный SQL запрос
|
||||||
//
|
//
|
||||||
@ -84,12 +109,14 @@
|
|||||||
// ТекстЗапроса - Строка - Текст запроса к базе - sql
|
// ТекстЗапроса - Строка - Текст запроса к базе - sql
|
||||||
// Параметры - Массив Из Произвольный - Массив позиционных параметров запроса - params
|
// Параметры - Массив Из Произвольный - Массив позиционных параметров запроса - params
|
||||||
// ФорсироватьРезультат - Булево - Включает попытку получения результата, даже для не SELECT запросов - force
|
// ФорсироватьРезультат - Булево - Включает попытку получения результата, даже для не SELECT запросов - force
|
||||||
// Соединение - Строка - Существующее соединение или путь к базе. In memory, если не заполнено - db
|
// Соединение - Строка, Произвольный - Существующее соединение или путь к базе. In memory, если не заполнено - db
|
||||||
//
|
//
|
||||||
// Возвращаемое значение:
|
// Возвращаемое значение:
|
||||||
// Структура Из КлючИЗначение - Результат выполнения запроса
|
// Структура Из КлючИЗначение - Результат выполнения запроса
|
||||||
Функция ВыполнитьЗапросSQL(Знач ТекстЗапроса, Знач Параметры = "", Знач ФорсироватьРезультат = Ложь,
|
Функция ВыполнитьЗапросSQL(Знач ТекстЗапроса
|
||||||
Знач Соединение = "") Экспорт
|
, Знач Параметры = ""
|
||||||
|
, Знач ФорсироватьРезультат = Ложь
|
||||||
|
, Знач Соединение = "") Экспорт
|
||||||
|
|
||||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(ТекстЗапроса);
|
OPI_ПреобразованиеТипов.ПолучитьСтроку(ТекстЗапроса);
|
||||||
|
|
||||||
@ -220,4 +247,10 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ЭтоКоннектор(Знач Значение)
|
||||||
|
|
||||||
|
Возврат Строка(ТипЗнч(Значение)) = "AddIn.OPI_SQLite.Main";
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -2212,6 +2212,18 @@
|
|||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область SQLite
|
||||||
|
|
||||||
|
Процедура SQLL_ОсновныеМетоды() Экспорт
|
||||||
|
|
||||||
|
ПараметрыТеста = Новый Структура;
|
||||||
|
|
||||||
|
SQLite_СоздатьПодключение(ПараметрыТеста);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
@ -16051,6 +16063,38 @@
|
|||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область SQLite
|
||||||
|
|
||||||
|
Процедура SQLite_СоздатьПодключение(ПараметрыФункции)
|
||||||
|
|
||||||
|
ИВФ = ПолучитьИмяВременногоФайла("sqlite");
|
||||||
|
|
||||||
|
БазаНаДиске = OPI_SQLite.СоздатьПодключение(ИВФ);
|
||||||
|
БазаВПамяти = OPI_SQLite.СоздатьПодключение();
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(БазаНаДиске, "СоздатьПодключение", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_Компонента(БазаНаДиске, "AddIn.OPI_SQLite.Main");
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(БазаВПамяти, "СоздатьПодключение (im)", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_Компонента(БазаВПамяти, "AddIn.OPI_SQLite.Main");
|
||||||
|
|
||||||
|
Закрытие = OPI_SQLite.ЗакрытьПодключение(БазаНаДиске);
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Закрытие, "ЗакрытьПодключение", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_SQLiteУспех(Закрытие);
|
||||||
|
|
||||||
|
Попытка
|
||||||
|
УдалитьФайлы(ИВФ);
|
||||||
|
Исключение
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(ОписаниеОшибки(), "Ошибка удаления файла базы", "SQLite");
|
||||||
|
КонецПопытки
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -53,6 +53,7 @@
|
|||||||
Разделы.Вставить("VK" , 5);
|
Разделы.Вставить("VK" , 5);
|
||||||
Разделы.Вставить("Viber" , 5);
|
Разделы.Вставить("Viber" , 5);
|
||||||
Разделы.Вставить("Twitter" , 4);
|
Разделы.Вставить("Twitter" , 4);
|
||||||
|
Разделы.Вставить("SQLite" , 5);
|
||||||
Разделы.Вставить("YandexDisk" , 5);
|
Разделы.Вставить("YandexDisk" , 5);
|
||||||
Разделы.Вставить("GoogleWorkspace", 2);
|
Разделы.Вставить("GoogleWorkspace", 2);
|
||||||
Разделы.Вставить("GoogleCalendar" , 5);
|
Разделы.Вставить("GoogleCalendar" , 5);
|
||||||
@ -85,6 +86,7 @@
|
|||||||
Разделы.Вставить("VK" , СтандартныеЗависимости);
|
Разделы.Вставить("VK" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("Viber" , СтандартныеЗависимости);
|
Разделы.Вставить("Viber" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("Twitter" , СтандартныеЗависимости);
|
Разделы.Вставить("Twitter" , СтандартныеЗависимости);
|
||||||
|
Разделы.Вставить("SQLite" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("YandexDisk" , СтандартныеЗависимости);
|
Разделы.Вставить("YandexDisk" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("GoogleWorkspace", СтандартныеЗависимости);
|
Разделы.Вставить("GoogleWorkspace", СтандартныеЗависимости);
|
||||||
Разделы.Вставить("GoogleCalendar" , ЗависимостиГугл);
|
Разделы.Вставить("GoogleCalendar" , ЗависимостиГугл);
|
||||||
@ -130,6 +132,7 @@
|
|||||||
Метрика = "YandexMetrika";
|
Метрика = "YandexMetrika";
|
||||||
S3_ = "S3";
|
S3_ = "S3";
|
||||||
TCP = "TCP";
|
TCP = "TCP";
|
||||||
|
SQLite = "SQLite";
|
||||||
|
|
||||||
ТаблицаТестов = Новый ТаблицаЗначений;
|
ТаблицаТестов = Новый ТаблицаЗначений;
|
||||||
ТаблицаТестов.Колонки.Добавить("Метод");
|
ТаблицаТестов.Колонки.Добавить("Метод");
|
||||||
@ -264,6 +267,7 @@
|
|||||||
НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами" , "Работа с бакетами" , S3_);
|
НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами" , "Работа с бакетами" , S3_);
|
||||||
НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами" , "Работа с объектами" , S3_);
|
НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами" , "Работа с объектами" , S3_);
|
||||||
НовыйТест(ТаблицаТестов, "TC_Клиент" , "TCP Клиент" , TCP);
|
НовыйТест(ТаблицаТестов, "TC_Клиент" , "TCP Клиент" , TCP);
|
||||||
|
НовыйТест(ТаблицаТестов, "SQLL_ОсновныеМетоды" , "Основные методы" , SQLite);
|
||||||
|
|
||||||
Возврат ТаблицаТестов;
|
Возврат ТаблицаТестов;
|
||||||
|
|
||||||
@ -2058,6 +2062,14 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_Компонента(Знач Результат, Знач ИмяТипа) Экспорт
|
||||||
|
ОжидаетЧто(Строка(ТипЗнч(Результат))).Равно(ИмяТипа);
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_SQLiteУспех(Знач Результат) Экспорт
|
||||||
|
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// OneScript: ./OInt/core/Modules/OPI_SQLite.os
|
// OneScript: ./OInt/core/Modules/OPI_SQLite.os
|
||||||
// Lib: SQLite
|
// Lib: SQLite
|
||||||
// CLI: sqlite
|
// CLI: sqlite
|
||||||
|
|
||||||
@ -55,7 +55,7 @@
|
|||||||
// Произвольный - Объект коннектора или структура с информацией об ошибке
|
// Произвольный - Объект коннектора или структура с информацией об ошибке
|
||||||
Функция СоздатьПодключение(Знач База = "") Экспорт
|
Функция СоздатьПодключение(Знач База = "") Экспорт
|
||||||
|
|
||||||
Если Строка(ТипЗнч(База)) = "AddIn.OPI_SQLite.Main" Тогда
|
Если ЭтоКоннектор(База) Тогда
|
||||||
Возврат База;
|
Возврат База;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@ -72,6 +72,31 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
// Закрыть подключение !NOCLI
|
||||||
|
// Явно закрывает переданное соединение
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// Соединение - Произвольный - Объект компоненты с открытым соединением - db
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Структура Из КлючИЗначение - Результат закрытия соединения
|
||||||
|
Функция ЗакрытьПодключение(Знач Соединение) Экспорт
|
||||||
|
|
||||||
|
Если ЭтоКоннектор(Соединение) Тогда
|
||||||
|
|
||||||
|
Результат = Соединение.Close();
|
||||||
|
Результат = OPI_Инструменты.JsonВСтруктуру(Результат, Ложь);
|
||||||
|
|
||||||
|
Иначе
|
||||||
|
|
||||||
|
Результат = Новый Структура("result,error", Ложь, "It's not a connection");
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат Результат;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
// Выполнить запрос SQL
|
// Выполнить запрос SQL
|
||||||
// Выполняет произвольный SQL запрос
|
// Выполняет произвольный SQL запрос
|
||||||
//
|
//
|
||||||
@ -84,12 +109,14 @@
|
|||||||
// ТекстЗапроса - Строка - Текст запроса к базе - sql
|
// ТекстЗапроса - Строка - Текст запроса к базе - sql
|
||||||
// Параметры - Массив Из Произвольный - Массив позиционных параметров запроса - params
|
// Параметры - Массив Из Произвольный - Массив позиционных параметров запроса - params
|
||||||
// ФорсироватьРезультат - Булево - Включает попытку получения результата, даже для не SELECT запросов - force
|
// ФорсироватьРезультат - Булево - Включает попытку получения результата, даже для не SELECT запросов - force
|
||||||
// Соединение - Строка - Существующее соединение или путь к базе. In memory, если не заполнено - db
|
// Соединение - Строка, Произвольный - Существующее соединение или путь к базе. In memory, если не заполнено - db
|
||||||
//
|
//
|
||||||
// Возвращаемое значение:
|
// Возвращаемое значение:
|
||||||
// Структура Из КлючИЗначение - Результат выполнения запроса
|
// Структура Из КлючИЗначение - Результат выполнения запроса
|
||||||
Функция ВыполнитьЗапросSQL(Знач ТекстЗапроса, Знач Параметры = "", Знач ФорсироватьРезультат = Ложь,
|
Функция ВыполнитьЗапросSQL(Знач ТекстЗапроса
|
||||||
Знач Соединение = "") Экспорт
|
, Знач Параметры = ""
|
||||||
|
, Знач ФорсироватьРезультат = Ложь
|
||||||
|
, Знач Соединение = "") Экспорт
|
||||||
|
|
||||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(ТекстЗапроса);
|
OPI_ПреобразованиеТипов.ПолучитьСтроку(ТекстЗапроса);
|
||||||
|
|
||||||
@ -220,4 +247,10 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ЭтоКоннектор(Знач Значение)
|
||||||
|
|
||||||
|
Возврат Строка(ТипЗнч(Значение)) = "AddIn.OPI_SQLite.Main";
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -211,18 +211,34 @@
|
|||||||
|
|
||||||
Функция СформироватьТекстSelect(Знач Схема)
|
Функция СформироватьТекстSelect(Знач Схема)
|
||||||
|
|
||||||
|
ТекстSQL = "";
|
||||||
|
|
||||||
|
Возврат ТекстSQL;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СформироватьТекстInsert(Знач Схема)
|
Функция СформироватьТекстInsert(Знач Схема)
|
||||||
|
|
||||||
|
ТекстSQL = "";
|
||||||
|
|
||||||
|
Возврат ТекстSQL;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СформироватьТекстUpdate(Знач Схема)
|
Функция СформироватьТекстUpdate(Знач Схема)
|
||||||
|
|
||||||
|
ТекстSQL = "";
|
||||||
|
|
||||||
|
Возврат ТекстSQL;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СформироватьТекстDelete(Знач Схема)
|
Функция СформироватьТекстDelete(Знач Схема)
|
||||||
|
|
||||||
|
ТекстSQL = "";
|
||||||
|
|
||||||
|
Возврат ТекстSQL;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция СформироватьТекстCreate(Знач Схема)
|
Функция СформироватьТекстCreate(Знач Схема)
|
||||||
@ -246,7 +262,9 @@
|
|||||||
|
|
||||||
ОписанияКолонок = СтрСоединить(МассивОписанийКолонок, "," + Символы.ПС);
|
ОписанияКолонок = СтрСоединить(МассивОписанийКолонок, "," + Символы.ПС);
|
||||||
|
|
||||||
ТекстSQL = СтрШаблон(ШаблонSQL, )
|
ТекстSQL = СтрШаблон(ШаблонSQL, Таблица, ОписанияКолонок);
|
||||||
|
|
||||||
|
Возврат ТекстSQL;
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
@ -255,7 +273,7 @@
|
|||||||
Процедура ПроверитьОбязательныеПоляСхемы(Схема, Знач Поля)
|
Процедура ПроверитьОбязательныеПоляСхемы(Схема, Знач Поля)
|
||||||
|
|
||||||
МассивОбязательныхПолей = СтрСоединить(Поля, ",");
|
МассивОбязательныхПолей = СтрСоединить(Поля, ",");
|
||||||
МассивОтсутствующих = OPI_Инструменты.НайтиОтсутствующиеПоляКоллекции(МассивОбязательныхПолей);
|
МассивОтсутствующих = OPI_Инструменты.НайтиОтсутствующиеПоляКоллекции(Схема, МассивОбязательныхПолей);
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(МассивОтсутствующих) Тогда
|
Если ЗначениеЗаполнено(МассивОтсутствующих) Тогда
|
||||||
ВызватьИсключение "Отсутствуют необходимые поля схемы: " + СтрСоединить(МассивОтсутствующих, ", ");
|
ВызватьИсключение "Отсутствуют необходимые поля схемы: " + СтрСоединить(МассивОтсутствующих, ", ");
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
|
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
|
||||||
|
|
||||||
// MIT License
|
// MIT License
|
||||||
|
|
||||||
@ -53,6 +53,7 @@
|
|||||||
Разделы.Вставить("VK" , 5);
|
Разделы.Вставить("VK" , 5);
|
||||||
Разделы.Вставить("Viber" , 5);
|
Разделы.Вставить("Viber" , 5);
|
||||||
Разделы.Вставить("Twitter" , 4);
|
Разделы.Вставить("Twitter" , 4);
|
||||||
|
Разделы.Вставить("SQLite" , 5);
|
||||||
Разделы.Вставить("YandexDisk" , 5);
|
Разделы.Вставить("YandexDisk" , 5);
|
||||||
Разделы.Вставить("GoogleWorkspace", 2);
|
Разделы.Вставить("GoogleWorkspace", 2);
|
||||||
Разделы.Вставить("GoogleCalendar" , 5);
|
Разделы.Вставить("GoogleCalendar" , 5);
|
||||||
@ -85,6 +86,7 @@
|
|||||||
Разделы.Вставить("VK" , СтандартныеЗависимости);
|
Разделы.Вставить("VK" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("Viber" , СтандартныеЗависимости);
|
Разделы.Вставить("Viber" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("Twitter" , СтандартныеЗависимости);
|
Разделы.Вставить("Twitter" , СтандартныеЗависимости);
|
||||||
|
Разделы.Вставить("SQLite" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("YandexDisk" , СтандартныеЗависимости);
|
Разделы.Вставить("YandexDisk" , СтандартныеЗависимости);
|
||||||
Разделы.Вставить("GoogleWorkspace", СтандартныеЗависимости);
|
Разделы.Вставить("GoogleWorkspace", СтандартныеЗависимости);
|
||||||
Разделы.Вставить("GoogleCalendar" , ЗависимостиГугл);
|
Разделы.Вставить("GoogleCalendar" , ЗависимостиГугл);
|
||||||
@ -130,6 +132,7 @@
|
|||||||
Метрика = "YandexMetrika";
|
Метрика = "YandexMetrika";
|
||||||
S3_ = "S3";
|
S3_ = "S3";
|
||||||
TCP = "TCP";
|
TCP = "TCP";
|
||||||
|
SQLite = "SQLite";
|
||||||
|
|
||||||
ТаблицаТестов = Новый ТаблицаЗначений;
|
ТаблицаТестов = Новый ТаблицаЗначений;
|
||||||
ТаблицаТестов.Колонки.Добавить("Метод");
|
ТаблицаТестов.Колонки.Добавить("Метод");
|
||||||
@ -264,6 +267,7 @@
|
|||||||
НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами" , "Работа с бакетами" , S3_);
|
НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами" , "Работа с бакетами" , S3_);
|
||||||
НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами" , "Работа с объектами" , S3_);
|
НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами" , "Работа с объектами" , S3_);
|
||||||
НовыйТест(ТаблицаТестов, "TC_Клиент" , "TCP Клиент" , TCP);
|
НовыйТест(ТаблицаТестов, "TC_Клиент" , "TCP Клиент" , TCP);
|
||||||
|
НовыйТест(ТаблицаТестов, "SQLL_ОсновныеМетоды" , "Основные методы" , SQLite);
|
||||||
|
|
||||||
Возврат ТаблицаТестов;
|
Возврат ТаблицаТестов;
|
||||||
|
|
||||||
@ -2058,6 +2062,14 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_Компонента(Знач Результат, Знач ИмяТипа) Экспорт
|
||||||
|
ОжидаетЧто(Строка(ТипЗнч(Результат))).Равно(ИмяТипа);
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура Проверка_SQLiteУспех(Знач Результат) Экспорт
|
||||||
|
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
|
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
|
||||||
|
|
||||||
// MIT License
|
// MIT License
|
||||||
|
|
||||||
@ -2212,6 +2212,18 @@
|
|||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область SQLite
|
||||||
|
|
||||||
|
Процедура SQLL_ОсновныеМетоды() Экспорт
|
||||||
|
|
||||||
|
ПараметрыТеста = Новый Структура;
|
||||||
|
|
||||||
|
SQLite_СоздатьПодключение(ПараметрыТеста);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
@ -16051,6 +16063,38 @@
|
|||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область SQLite
|
||||||
|
|
||||||
|
Процедура SQLite_СоздатьПодключение(ПараметрыФункции)
|
||||||
|
|
||||||
|
ИВФ = ПолучитьИмяВременногоФайла("sqlite");
|
||||||
|
|
||||||
|
БазаНаДиске = OPI_SQLite.СоздатьПодключение(ИВФ);
|
||||||
|
БазаВПамяти = OPI_SQLite.СоздатьПодключение();
|
||||||
|
|
||||||
|
// END
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(БазаНаДиске, "СоздатьПодключение", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_Компонента(БазаНаДиске, "AddIn.OPI_SQLite.Main");
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(БазаВПамяти, "СоздатьПодключение (im)", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_Компонента(БазаВПамяти, "AddIn.OPI_SQLite.Main");
|
||||||
|
|
||||||
|
Закрытие = OPI_SQLite.ЗакрытьПодключение(БазаНаДиске);
|
||||||
|
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Закрытие, "ЗакрытьПодключение", "SQLite");
|
||||||
|
OPI_ПолучениеДанныхТестов.Проверка_SQLiteУспех(Закрытие);
|
||||||
|
|
||||||
|
Попытка
|
||||||
|
УдалитьФайлы(ИВФ);
|
||||||
|
Исключение
|
||||||
|
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(ОписаниеОшибки(), "Ошибка удаления файла базы", "SQLite");
|
||||||
|
КонецПопытки
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user