/
YakuninAV
/
Convertors
Обзор
Документация
Войти
/
YakuninAV
/
Convertors
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Test/DBDTestSuits.pas
63 строки
2 KB
YakuninAV
begin with gitflick
31 июл 2026, 15:21
31 июл 2026, 15:21
1dc0fc6
Код
Авторство
О чём код?
unit DBDTestSuits; {$I Synopse.inc} interface uses Classes, SynCommons, SynTests, DBDStrUtils, DBDUtils; type TDBDTestRoundTo = class(TSynTestCase) published procedure dbdTestRound; end; TDBDTestSuit = class(TSynTests) published procedure ExecDBDTestSuit; end; implementation { TDBDTestSuit } procedure TDBDTestSuit.ExecDBDTestSuit; begin AddCase([TDBDTestRoundTo]); end; { TDBDTestRoundTo } procedure TDBDTestRoundTo.dbdTestRound; var ls: TStringList; r: RawUTF8; ra: TRawUTF8DynArray; s: string; i: Integer; m:Integer; arrEx: TExtendedDynArray; e: Extended; item: TRoundedElem; iCount: Integer; begin ls:=TStringList.Create; try SetLength(arrEx,5); ls.LoadFromFile('..\..\DBDRoundTest.csv'); iCount:=0; m:=6; for s in ls do begin r:=StringToUTF8(s); r := StringReplaceAll(r,',','.'); CSVToRawUTF8DynArray(@r[1],ra,';',true,False); r:=ra[0+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); arrEx[0]:=e; r:=ra[1+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); arrEx[1]:=e; r:=ra[2+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); arrEx[2]:=e; r:=ra[3+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); arrEx[3]:=e; r:=ra[4+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); arrEx[4]:=e; r:=ra[5+m]; e:=GetExtended(@r[1], i); CheckFailed(i=0, Utf8ToString(r)); item := TRoundedElem.Create(e); e := item.RoundToArray(arrEx); if CheckFailed(TRoundedElem.IsAboutZero(e), 'Fail round ' + s) then Break; Inc(iCount); //if iCount>10 then Break; end; finally ls.Free end; end; end.