"unit_test_v2.c"

/*
 * Unit Test Bootstrap
 * Autor: Tomasz Jaworski, 2018-2020
 *
 * Test dla zadania Naprawdę duże liczby II
 * Autor testowanej odpowiedzi: Dariusz Majcherczyk
 * Test wygenerowano automatycznie o 2021-01-12 15:52:12.081304
 *
 * Debug: 
 */


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#include <signal.h>
#include <setjmp.h>
#include <assert.h>

#if !defined(__clang__) && !defined(__GNUC__)
// Zakomentuj poniższy błąd, jeżeli chcesz przetestować testy na swoim kompilatorze C.
#error System testow jednostkowych jest przeznaczony dla kompilatorów GCC/Clang.
#endif

#if defined(_WIN32) || defined(_WIN64) || defined(__CYGWIN__)
// Zakomentuj poniższy błąd, jeżeli chcesz przetestować testy na platformie Windows.
#error System testow jednostkowych NIE jest przeznaczony dla testów uruchamianych na platformach Windows.
#endif

#define _RLDEBUG_API_
#include "unit_helper_v2.h"
#include "rdebug.h"

#include "tested_declarations.h"
#include "rdebug.h"

//
// Elementy globalne dla całego testu
//




//
//  Test 1: Sprawdzanie poprawności działania funkcji validate
//
void UTEST1(void)
{
    // informacje o teście
    test_start(1, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 2: Sprawdzanie poprawności działania funkcji validate
//
void UTEST2(void)
{
    // informacje o teście
    test_start(2, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("\n");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 3: Sprawdzanie poprawności działania funkcji validate
//
void UTEST3(void)
{
    // informacje o teście
    test_start(3, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("0");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 4: Sprawdzanie poprawności działania funkcji validate
//
void UTEST4(void)
{
    // informacje o teście
    test_start(4, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("4");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 5: Sprawdzanie poprawności działania funkcji validate
//
void UTEST5(void)
{
    // informacje o teście
    test_start(5, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("-6");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 6: Sprawdzanie poprawności działania funkcji validate
//
void UTEST6(void)
{
    // informacje o teście
    test_start(6, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("1475");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 7: Sprawdzanie poprawności działania funkcji validate
//
void UTEST7(void)
{
    // informacje o teście
    test_start(7, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("-1910");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 8: Sprawdzanie poprawności działania funkcji validate
//
void UTEST8(void)
{
    // informacje o teście
    test_start(8, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("6820675");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 9: Sprawdzanie poprawności działania funkcji validate
//
void UTEST9(void)
{
    // informacje o teście
    test_start(9, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("1507912");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 10: Sprawdzanie poprawności działania funkcji validate
//
void UTEST10(void)
{
    // informacje o teście
    test_start(10, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("7372691540753512894958461699173451571425881250033706127735977843978704127851993091341817365464121799324164722441807242075748777364461730769440275959405444148624475968300215427911769815470500413077557911477032548669099322910062636113107669262374989333447027703141190996251903556028670819137612389911014269022778286888970229368706944257763280910578352861392921382601323590426814148854715780956404151398723570578821655459181468375436835807568355457796238120619316153819750616109802002573490446355250983473849830040749361593341785169189184346213677163036987923180088800918523285641724532362822420306741168559088518423208242793928138555048172626512663897499307006173503496369420375962150658497647272111094413260824290901289257406788081489582669524296257223880847029331588285289824142699827236389103739641106459051385685559225996532415983366814870235139440601822373236172060674696468956505174549618174631316193754995182144461373131549701532022610365518030091253563330403524512428607558955661233783681398032101263405829241122377439035406326250830336887371344643221797986083177654386945547386230014570762918789092081279868225707785951106476834973935957667447374986132461481790430996611965198506671186302185886414079758999669235055940945439629125790496780354538591089552910565926957594908248465416953351206450955515790355616851018529856327008599571895260608490116647795999167436573643575253707986388606890757056701353366735702578028225877424510240385340061928444616811678947962648330647255795172372585058534503527667643538751564729426068015445053472094272967159355322024114035187136031524238005307648289195211254144681492434634865104622296691159980437518348347985160176658617376303304560093893567630916414164142466141087392157034319647531858294836525676095726413822229752834575191073426360196277437940674291869043436083176881268759281784011051862914195482576509068283837689130547118839327459815337974994214784752968854128746152620612361445934591360226938371350881265491455313644521727176534033010802194269517184292754476130215812292669767247028428882961542608043295551043417464762212812886565369600333554449972690165204952862207857158662065953008731580004108927300077407851985779444930539113607572047470007961731780021988536179600533785096228426137309170094018695129185598865479793185187274926838313195751076960585820690337677817239894068280270358441092294048113090849541830883089914606590978170983134701254658199914672159491724185700278034227455032603122775120597071638845875739182852085517531051568854168476648384467032452585173615038902317096440395010310294661713002491500233165430737444632233409814866086072128942891647491582050434417844849612845022470553468946638955478394473044252157803128265185515397603450356564053434280034330257859684915927870143913980189727846715649528288849831889112593622150989271770401071922065707033025858739443067960733102171026881838775561946588544775253622624870497488641066521423804820366656314961003486209188946688542314390456227304816017843506500514451923590979814694357164957394058081365098639989428180174286067731669729736363131658620279086188795287920899750028061214154646726103417759500931705154003383882684560724447063015685198791325512385102795355200657711270059117638024555438984008581702470656376504475638571761958402864117528710171538867059917950069786855659494640778556816369201119138548224961892493341778550039238138510185072461567280815616694929365031207620842996781476051200945179405471305454998845495201491258410299663343420878166745804481759361291767760379162047846361145559571978331085251225326971868041088630632050345364386786228769098388046369822450860806965842291233261455568882782982358810027247660640181147265550211271090843630561531997265828661878774573505209557993213838565837714278883620445416315845222519580108447785987504160559702666142886312553487482584604519089488737017308798249352203728651247651868969509085731628046655078730510195686760339007");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 11: Sprawdzanie poprawności działania funkcji validate
//
void UTEST11(void)
{
    // informacje o teście
    test_start(11, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("719065334276787892620376055468805744518904499667809471524347756447593302790267371784641795959158466049707844787808206070907082743092502568129332335143458885287342295738933045498968527046449211512376571971801109104150980223158358320212683598117541485612557670548785146913006068798516077979253140834420357297627296756872376696190748942276108781875334723621163185528797831691462518604467414232607489465282427349352326580941960854304729439040656304605009497009368376727700938757578826508596645978480307273988859167396922378812804974290948821190935725791600333061214805175641272082126860189314067599365178699623955682256988616720590777757142268303893540083125908912618311969336755681035383068438269404222458019941410379053945316424890288437973689099002892565069874942160812531376974328645302537252095902612231088492939192706556427144986080075720495275114917739369424355471638016167486397227466398726706390303726050821756749901969720243894448663562358920478551750441789972426718572453280998842647240970579368161262405488051540120066460791335643227123586182288295456975262318783804009743199303508172121412410371295019660474337626758187149333099817573510774319224328145926748724274831303727321719238200166199872459173166927759446334410989358172017614097287054117184281655079467911650424520950366468799107246405058821381668200909645609731967606987248315510338805240192311012566100572716992094527622770334487695244540801832448718360168387188252242570678043413477752688302851595290352656947525341150567867817377211492539190417837556468800862208842825114563556513849793550432438817196175027447292974071211076246943660407891340736565374010516525184216222162686155265989801479462548661592433258742792077346452958707768059957731509452980941413069350673985215196790163605839765212091491806454745931012546213877883133114879696819461289223644730418307636470698436585505457497107648534003046341838053102576684664185466667113892957780102613528108450563850287429988446768841842649201303221065091643794638412777962454648387247280673816553775727819781814591917409417152242207442341208336831908520632868295350984241399584138973702006058850618645841397237410547858515524218248525408907834349004589460579060238801497147170033792817868417745061016996917389542206491151967766288987896475188110921369751952411747903506282706710899453606521545727040642851888941448297179341872260643978693817369726822791895241514370925462507064671876098967188858221076532790074255248986624823388738580853465656684686615922644638952671852647406154924453252478828989440852613246898125386312447498851210467709795467356687194327714560127647700868323769580980145958816694043388296105701654580734933481902992900969182775980188488491491424372418183861536009478296388214615543450813836077190544674717427617130508\n");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 12: Sprawdzanie poprawności działania funkcji validate
//
void UTEST12(void)
{
    // informacje o teście
    test_start(12, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("58800433935779535136647584370204806586969411887253012413633575373807037882791241107529707135830421809332622346492981814233328072410943787530443700284367015943000570582573117058282666517334591551705915267312292497085026793452491499182004666213286352642432756799901578088009134959322318241604355495601472985962951908855587508329273356701065936685239349924726614918095366239751626747828496154763667502720070760124432461993882344169087734736890412829826838291214817653762786605183408089528054537865948017731773669047020647417550205056121108535312738945338601427647336477133984851265513914277002848322160836237470413467359566743461297962730847244676390885664442355059544394409077775286866319964642260287578201801577829652514481802319113267253027345504193394725865262555764190764958099650280625319488967463346528395875947823280190338202827688128691398740136835994497770859298921631960356835459588382123309813087684019718359566005620904004270445030267073826438529726251084118126039649070320038273385547009175758132843363922394599876017190451615459632818046355134218180884041048366292053515190899004068138190359531743592254902221445532296462499021775036651911962773781987365664537019756737535073632480355076562371405112947796886584567605278201032152613585974943947289218934668121865489967014219057006767726182479123072746588989265085312143220704842712754763579747677525892743940454576713426533079542185517345043416657701885935885299345634842493391458740081664407906443515556662654253727520920127651114083775697623943166037127578567167253743334157683039710508864325082756493452118914518509191581995680278177881888455551200797511963886653928031905518137257056647490329166708243470316389134647239448943307350020211543086792017165729195922301064044654580324829968705826842617280141250056448579661499227607616858359642189702056067735276722596902951969968889583994679683093738682345569532875213011266440029031886624108580513398390374552759671386440447202573712902315606362964304995104709563746392454829481652319119713349397882014915437700735140516880210375998233314512064715760650690932706786332059287634230030340281226458448420605129881830909184387888546962946931471308387743136986622688369078840164067616741405139824632617431626077184006056246405841174349591320371361391278022903099827918895465582305811149489648843086441803230211078224892570277344360925667126113553855754774201052849950732617392155709780180798412341669459796008309353886738848871771493143225959035783860490218323936905753754170314164116224377911293974016506558675035521429976828736602673393815511205973325222536784712350703976968779025505758535091248056641248935277502713644046250691674910703327824805733852874107552302681206306947784284770102967254090441946531242525082036226705743498430411815047227410177751226354758055993112618710883541281702510354453315031848812202850744501777573477021739520527903351445142195223821603338108442693559263280977094038407784650730706920376061766010522038007190608048208664827739081827056841114735477024579747931275674303606701973490359811603597193422843279852571892489099340636297232086631248595107263521061345722403286714504521830141709622448564660707736768008262316945525985905830127886073212636035995920213943876115244829093295934303418932745639770831310316193911964711679958632348862239491461274180815162388862569273750383058033435928511631425758458745873434170317883846991662506868254011511857858864804752673239310050707699017908025125576277744726186773775782431944481134595461127158400656949489086766671892379975905224229064460552208232575428687407893631912602329867979726373231562171883821047483437622479279526434233577966759831535762349229792427557405246676512077101208324822180546867122044199396747668187876507");
                printf("#####END#####\n");
                test_error( len == 0, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 0, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 13: Sprawdzanie poprawności działania funkcji validate
//
void UTEST13(void)
{
    // informacje o teście
    test_start(13, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("0000000039882453075801320869461944759124238516866232993");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 14: Sprawdzanie poprawności działania funkcji validate
//
void UTEST14(void)
{
    // informacje o teście
    test_start(14, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("009");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 15: Sprawdzanie poprawności działania funkcji validate
//
void UTEST15(void)
{
    // informacje o teście
    test_start(15, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("03");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 16: Sprawdzanie poprawności działania funkcji validate
//
void UTEST16(void)
{
    // informacje o teście
    test_start(16, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("00010892327398558194873852301");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 17: Sprawdzanie poprawności działania funkcji validate
//
void UTEST17(void)
{
    // informacje o teście
    test_start(17, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("390163038792327\n");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 18: Sprawdzanie poprawności działania funkcji validate
//
void UTEST18(void)
{
    // informacje o teście
    test_start(18, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("87942511834947544238779392\n4698461047497037186587449934953391314");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 19: Sprawdzanie poprawności działania funkcji validate
//
void UTEST19(void)
{
    // informacje o teście
    test_start(19, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("1798089883130721R1464061975887471473439917661178388");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 20: Sprawdzanie poprawności działania funkcji validate
//
void UTEST20(void)
{
    // informacje o teście
    test_start(20, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("7286554412152703955815x841406197142463141261270338792971");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 21: Sprawdzanie poprawności działania funkcji validate
//
void UTEST21(void)
{
    // informacje o teście
    test_start(21, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int len = validate("10029297395736011242799 397262855430962668488613695589157");
                printf("#####END#####\n");
                test_error( len == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", len);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 22: Sprawdzanie poprawności działania funkcji validate
//
void UTEST22(void)
{
    // informacje o teście
    test_start(22, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

            printf("#####START#####");
            int len = validate(NULL);
            printf("#####END#####\n");
            test_error( len == -1, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość -1, a zwróciła %d", len);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 23: Sprawdzanie poprawności działania funkcji validate
//
void UTEST23(void)
{
    // informacje o teście
    test_start(23, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 1;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 24: Sprawdzanie poprawności działania funkcji validate
//
void UTEST24(void)
{
    // informacje o teście
    test_start(24, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 2;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 25: Sprawdzanie poprawności działania funkcji validate
//
void UTEST25(void)
{
    // informacje o teście
    test_start(25, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 3;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 26: Sprawdzanie poprawności działania funkcji validate
//
void UTEST26(void)
{
    // informacje o teście
    test_start(26, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 4;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 27: Sprawdzanie poprawności działania funkcji validate
//
void UTEST27(void)
{
    // informacje o teście
    test_start(27, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 5;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 28: Sprawdzanie poprawności działania funkcji validate
//
void UTEST28(void)
{
    // informacje o teście
    test_start(28, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 6;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 29: Sprawdzanie poprawności działania funkcji validate
//
void UTEST29(void)
{
    // informacje o teście
    test_start(29, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 7;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 30: Sprawdzanie poprawności działania funkcji validate
//
void UTEST30(void)
{
    // informacje o teście
    test_start(30, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 8;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 31: Sprawdzanie poprawności działania funkcji validate
//
void UTEST31(void)
{
    // informacje o teście
    test_start(31, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 10;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 32: Sprawdzanie poprawności działania funkcji validate
//
void UTEST32(void)
{
    // informacje o teście
    test_start(32, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 11;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 33: Sprawdzanie poprawności działania funkcji validate
//
void UTEST33(void)
{
    // informacje o teście
    test_start(33, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 12;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 34: Sprawdzanie poprawności działania funkcji validate
//
void UTEST34(void)
{
    // informacje o teście
    test_start(34, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 13;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 35: Sprawdzanie poprawności działania funkcji validate
//
void UTEST35(void)
{
    // informacje o teście
    test_start(35, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 14;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 36: Sprawdzanie poprawności działania funkcji validate
//
void UTEST36(void)
{
    // informacje o teście
    test_start(36, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 15;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 37: Sprawdzanie poprawności działania funkcji validate
//
void UTEST37(void)
{
    // informacje o teście
    test_start(37, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 16;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 38: Sprawdzanie poprawności działania funkcji validate
//
void UTEST38(void)
{
    // informacje o teście
    test_start(38, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 17;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 39: Sprawdzanie poprawności działania funkcji validate
//
void UTEST39(void)
{
    // informacje o teście
    test_start(39, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 18;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 40: Sprawdzanie poprawności działania funkcji validate
//
void UTEST40(void)
{
    // informacje o teście
    test_start(40, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 19;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 41: Sprawdzanie poprawności działania funkcji validate
//
void UTEST41(void)
{
    // informacje o teście
    test_start(41, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 20;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 42: Sprawdzanie poprawności działania funkcji validate
//
void UTEST42(void)
{
    // informacje o teście
    test_start(42, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 21;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 43: Sprawdzanie poprawności działania funkcji validate
//
void UTEST43(void)
{
    // informacje o teście
    test_start(43, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 22;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 44: Sprawdzanie poprawności działania funkcji validate
//
void UTEST44(void)
{
    // informacje o teście
    test_start(44, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 23;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 45: Sprawdzanie poprawności działania funkcji validate
//
void UTEST45(void)
{
    // informacje o teście
    test_start(45, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 24;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 46: Sprawdzanie poprawności działania funkcji validate
//
void UTEST46(void)
{
    // informacje o teście
    test_start(46, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 25;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 47: Sprawdzanie poprawności działania funkcji validate
//
void UTEST47(void)
{
    // informacje o teście
    test_start(47, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 26;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 48: Sprawdzanie poprawności działania funkcji validate
//
void UTEST48(void)
{
    // informacje o teście
    test_start(48, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 27;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 49: Sprawdzanie poprawności działania funkcji validate
//
void UTEST49(void)
{
    // informacje o teście
    test_start(49, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 28;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 50: Sprawdzanie poprawności działania funkcji validate
//
void UTEST50(void)
{
    // informacje o teście
    test_start(50, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 29;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 51: Sprawdzanie poprawności działania funkcji validate
//
void UTEST51(void)
{
    // informacje o teście
    test_start(51, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 30;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 52: Sprawdzanie poprawności działania funkcji validate
//
void UTEST52(void)
{
    // informacje o teście
    test_start(52, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 31;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 53: Sprawdzanie poprawności działania funkcji validate
//
void UTEST53(void)
{
    // informacje o teście
    test_start(53, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 32;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 54: Sprawdzanie poprawności działania funkcji validate
//
void UTEST54(void)
{
    // informacje o teście
    test_start(54, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 33;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 55: Sprawdzanie poprawności działania funkcji validate
//
void UTEST55(void)
{
    // informacje o teście
    test_start(55, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 34;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 56: Sprawdzanie poprawności działania funkcji validate
//
void UTEST56(void)
{
    // informacje o teście
    test_start(56, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 35;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 57: Sprawdzanie poprawności działania funkcji validate
//
void UTEST57(void)
{
    // informacje o teście
    test_start(57, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 36;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 58: Sprawdzanie poprawności działania funkcji validate
//
void UTEST58(void)
{
    // informacje o teście
    test_start(58, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 37;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 59: Sprawdzanie poprawności działania funkcji validate
//
void UTEST59(void)
{
    // informacje o teście
    test_start(59, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 38;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 60: Sprawdzanie poprawności działania funkcji validate
//
void UTEST60(void)
{
    // informacje o teście
    test_start(60, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 39;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 61: Sprawdzanie poprawności działania funkcji validate
//
void UTEST61(void)
{
    // informacje o teście
    test_start(61, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 40;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 62: Sprawdzanie poprawności działania funkcji validate
//
void UTEST62(void)
{
    // informacje o teście
    test_start(62, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 41;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 63: Sprawdzanie poprawności działania funkcji validate
//
void UTEST63(void)
{
    // informacje o teście
    test_start(63, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 42;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 64: Sprawdzanie poprawności działania funkcji validate
//
void UTEST64(void)
{
    // informacje o teście
    test_start(64, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 43;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 65: Sprawdzanie poprawności działania funkcji validate
//
void UTEST65(void)
{
    // informacje o teście
    test_start(65, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 44;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 66: Sprawdzanie poprawności działania funkcji validate
//
void UTEST66(void)
{
    // informacje o teście
    test_start(66, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 45;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 67: Sprawdzanie poprawności działania funkcji validate
//
void UTEST67(void)
{
    // informacje o teście
    test_start(67, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 46;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 68: Sprawdzanie poprawności działania funkcji validate
//
void UTEST68(void)
{
    // informacje o teście
    test_start(68, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 47;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 69: Sprawdzanie poprawności działania funkcji validate
//
void UTEST69(void)
{
    // informacje o teście
    test_start(69, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 58;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 70: Sprawdzanie poprawności działania funkcji validate
//
void UTEST70(void)
{
    // informacje o teście
    test_start(70, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 59;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 71: Sprawdzanie poprawności działania funkcji validate
//
void UTEST71(void)
{
    // informacje o teście
    test_start(71, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 60;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 72: Sprawdzanie poprawności działania funkcji validate
//
void UTEST72(void)
{
    // informacje o teście
    test_start(72, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 61;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 73: Sprawdzanie poprawności działania funkcji validate
//
void UTEST73(void)
{
    // informacje o teście
    test_start(73, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 62;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 74: Sprawdzanie poprawności działania funkcji validate
//
void UTEST74(void)
{
    // informacje o teście
    test_start(74, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 63;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 75: Sprawdzanie poprawności działania funkcji validate
//
void UTEST75(void)
{
    // informacje o teście
    test_start(75, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 64;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 76: Sprawdzanie poprawności działania funkcji validate
//
void UTEST76(void)
{
    // informacje o teście
    test_start(76, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 65;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 77: Sprawdzanie poprawności działania funkcji validate
//
void UTEST77(void)
{
    // informacje o teście
    test_start(77, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 66;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 78: Sprawdzanie poprawności działania funkcji validate
//
void UTEST78(void)
{
    // informacje o teście
    test_start(78, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 67;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 79: Sprawdzanie poprawności działania funkcji validate
//
void UTEST79(void)
{
    // informacje o teście
    test_start(79, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 68;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 80: Sprawdzanie poprawności działania funkcji validate
//
void UTEST80(void)
{
    // informacje o teście
    test_start(80, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 69;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 81: Sprawdzanie poprawności działania funkcji validate
//
void UTEST81(void)
{
    // informacje o teście
    test_start(81, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 70;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 82: Sprawdzanie poprawności działania funkcji validate
//
void UTEST82(void)
{
    // informacje o teście
    test_start(82, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 71;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 83: Sprawdzanie poprawności działania funkcji validate
//
void UTEST83(void)
{
    // informacje o teście
    test_start(83, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 72;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 84: Sprawdzanie poprawności działania funkcji validate
//
void UTEST84(void)
{
    // informacje o teście
    test_start(84, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 73;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 85: Sprawdzanie poprawności działania funkcji validate
//
void UTEST85(void)
{
    // informacje o teście
    test_start(85, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 74;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 86: Sprawdzanie poprawności działania funkcji validate
//
void UTEST86(void)
{
    // informacje o teście
    test_start(86, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 75;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 87: Sprawdzanie poprawności działania funkcji validate
//
void UTEST87(void)
{
    // informacje o teście
    test_start(87, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 76;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 88: Sprawdzanie poprawności działania funkcji validate
//
void UTEST88(void)
{
    // informacje o teście
    test_start(88, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 77;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 89: Sprawdzanie poprawności działania funkcji validate
//
void UTEST89(void)
{
    // informacje o teście
    test_start(89, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 78;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 90: Sprawdzanie poprawności działania funkcji validate
//
void UTEST90(void)
{
    // informacje o teście
    test_start(90, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 79;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 91: Sprawdzanie poprawności działania funkcji validate
//
void UTEST91(void)
{
    // informacje o teście
    test_start(91, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 80;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 92: Sprawdzanie poprawności działania funkcji validate
//
void UTEST92(void)
{
    // informacje o teście
    test_start(92, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 81;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 93: Sprawdzanie poprawności działania funkcji validate
//
void UTEST93(void)
{
    // informacje o teście
    test_start(93, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 82;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 94: Sprawdzanie poprawności działania funkcji validate
//
void UTEST94(void)
{
    // informacje o teście
    test_start(94, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 83;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 95: Sprawdzanie poprawności działania funkcji validate
//
void UTEST95(void)
{
    // informacje o teście
    test_start(95, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 84;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 96: Sprawdzanie poprawności działania funkcji validate
//
void UTEST96(void)
{
    // informacje o teście
    test_start(96, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 85;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 97: Sprawdzanie poprawności działania funkcji validate
//
void UTEST97(void)
{
    // informacje o teście
    test_start(97, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 86;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 98: Sprawdzanie poprawności działania funkcji validate
//
void UTEST98(void)
{
    // informacje o teście
    test_start(98, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 87;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 99: Sprawdzanie poprawności działania funkcji validate
//
void UTEST99(void)
{
    // informacje o teście
    test_start(99, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 88;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 100: Sprawdzanie poprawności działania funkcji validate
//
void UTEST100(void)
{
    // informacje o teście
    test_start(100, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 89;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 101: Sprawdzanie poprawności działania funkcji validate
//
void UTEST101(void)
{
    // informacje o teście
    test_start(101, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 90;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 102: Sprawdzanie poprawności działania funkcji validate
//
void UTEST102(void)
{
    // informacje o teście
    test_start(102, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 91;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 103: Sprawdzanie poprawności działania funkcji validate
//
void UTEST103(void)
{
    // informacje o teście
    test_start(103, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 92;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 104: Sprawdzanie poprawności działania funkcji validate
//
void UTEST104(void)
{
    // informacje o teście
    test_start(104, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 93;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 105: Sprawdzanie poprawności działania funkcji validate
//
void UTEST105(void)
{
    // informacje o teście
    test_start(105, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 94;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 106: Sprawdzanie poprawności działania funkcji validate
//
void UTEST106(void)
{
    // informacje o teście
    test_start(106, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 95;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 107: Sprawdzanie poprawności działania funkcji validate
//
void UTEST107(void)
{
    // informacje o teście
    test_start(107, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 96;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 108: Sprawdzanie poprawności działania funkcji validate
//
void UTEST108(void)
{
    // informacje o teście
    test_start(108, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 97;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 109: Sprawdzanie poprawności działania funkcji validate
//
void UTEST109(void)
{
    // informacje o teście
    test_start(109, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 98;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 110: Sprawdzanie poprawności działania funkcji validate
//
void UTEST110(void)
{
    // informacje o teście
    test_start(110, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 99;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 111: Sprawdzanie poprawności działania funkcji validate
//
void UTEST111(void)
{
    // informacje o teście
    test_start(111, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 100;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 112: Sprawdzanie poprawności działania funkcji validate
//
void UTEST112(void)
{
    // informacje o teście
    test_start(112, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 101;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 113: Sprawdzanie poprawności działania funkcji validate
//
void UTEST113(void)
{
    // informacje o teście
    test_start(113, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 102;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 114: Sprawdzanie poprawności działania funkcji validate
//
void UTEST114(void)
{
    // informacje o teście
    test_start(114, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 103;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 115: Sprawdzanie poprawności działania funkcji validate
//
void UTEST115(void)
{
    // informacje o teście
    test_start(115, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 104;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 116: Sprawdzanie poprawności działania funkcji validate
//
void UTEST116(void)
{
    // informacje o teście
    test_start(116, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 105;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 117: Sprawdzanie poprawności działania funkcji validate
//
void UTEST117(void)
{
    // informacje o teście
    test_start(117, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 106;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 118: Sprawdzanie poprawności działania funkcji validate
//
void UTEST118(void)
{
    // informacje o teście
    test_start(118, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 107;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 119: Sprawdzanie poprawności działania funkcji validate
//
void UTEST119(void)
{
    // informacje o teście
    test_start(119, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 108;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 120: Sprawdzanie poprawności działania funkcji validate
//
void UTEST120(void)
{
    // informacje o teście
    test_start(120, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 109;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 121: Sprawdzanie poprawności działania funkcji validate
//
void UTEST121(void)
{
    // informacje o teście
    test_start(121, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 110;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 122: Sprawdzanie poprawności działania funkcji validate
//
void UTEST122(void)
{
    // informacje o teście
    test_start(122, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 111;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 123: Sprawdzanie poprawności działania funkcji validate
//
void UTEST123(void)
{
    // informacje o teście
    test_start(123, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 112;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 124: Sprawdzanie poprawności działania funkcji validate
//
void UTEST124(void)
{
    // informacje o teście
    test_start(124, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 113;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 125: Sprawdzanie poprawności działania funkcji validate
//
void UTEST125(void)
{
    // informacje o teście
    test_start(125, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 114;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 126: Sprawdzanie poprawności działania funkcji validate
//
void UTEST126(void)
{
    // informacje o teście
    test_start(126, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 115;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 127: Sprawdzanie poprawności działania funkcji validate
//
void UTEST127(void)
{
    // informacje o teście
    test_start(127, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 116;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 128: Sprawdzanie poprawności działania funkcji validate
//
void UTEST128(void)
{
    // informacje o teście
    test_start(128, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 117;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 129: Sprawdzanie poprawności działania funkcji validate
//
void UTEST129(void)
{
    // informacje o teście
    test_start(129, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 118;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 130: Sprawdzanie poprawności działania funkcji validate
//
void UTEST130(void)
{
    // informacje o teście
    test_start(130, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 119;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 131: Sprawdzanie poprawności działania funkcji validate
//
void UTEST131(void)
{
    // informacje o teście
    test_start(131, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 120;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 132: Sprawdzanie poprawności działania funkcji validate
//
void UTEST132(void)
{
    // informacje o teście
    test_start(132, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 121;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 133: Sprawdzanie poprawności działania funkcji validate
//
void UTEST133(void)
{
    // informacje o teście
    test_start(133, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 122;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 134: Sprawdzanie poprawności działania funkcji validate
//
void UTEST134(void)
{
    // informacje o teście
    test_start(134, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 123;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 135: Sprawdzanie poprawności działania funkcji validate
//
void UTEST135(void)
{
    // informacje o teście
    test_start(135, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 124;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 136: Sprawdzanie poprawności działania funkcji validate
//
void UTEST136(void)
{
    // informacje o teście
    test_start(136, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 125;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 137: Sprawdzanie poprawności działania funkcji validate
//
void UTEST137(void)
{
    // informacje o teście
    test_start(137, "Sprawdzanie poprawności działania funkcji validate", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                char text[] = "+";
                text[0] = 126;

                printf("#####START#####");
                int res = validate(text);
                printf("#####END#####\\n");
                test_error( res == 2, "Funkcja validate zwróciła nieprawidłową wartość, powinna zwrócić wartość 2, a zwróciła %d", res);
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 138: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST138(void)
{
    // informacje o teście
    test_start(138, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "343";        
                printf("#####START#####");
                int err_code = add("101", "242", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 139: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST139(void)
{
    // informacje o teście
    test_start(139, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-141";        
                printf("#####START#####");
                int err_code = add("101", "-242", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 140: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST140(void)
{
    // informacje o teście
    test_start(140, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = add("101", "-101", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 141: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST141(void)
{
    // informacje o teście
    test_start(141, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "141";        
                printf("#####START#####");
                int err_code = add("242", "-101", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 142: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST142(void)
{
    // informacje o teście
    test_start(142, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-343";        
                printf("#####START#####");
                int err_code = add("-101", "-242", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 143: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST143(void)
{
    // informacje o teście
    test_start(143, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "141";        
                printf("#####START#####");
                int err_code = add("-101", "242", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 144: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST144(void)
{
    // informacje o teście
    test_start(144, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1404";        
                printf("#####START#####");
                int err_code = add("762", "642", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 145: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST145(void)
{
    // informacje o teście
    test_start(145, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1404";        
                printf("#####START#####");
                int err_code = add("-762", "-642", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 146: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 427 bajtów
//
void UTEST146(void)
{
    // informacje o teście
    test_start(146, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 427 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(427);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "8655930413175556759968389794703926374773199004124033520474957076654163515823246202712171233260308418132328526906171464230496796034985089700735365260502238269364230376122600888457010384162962559393873943994071120250643224456497181700423663280337193275727082386943470745920645750026986999458101571328121923494358378267725712466468536514036665038262948173623294312097015443027000155555005775249229646430591950964995803839301131";        
                printf("#####START#####");
                int err_code = add("4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", "3962460245442760779077860444058379762423784746431939584704264784406597184643231562989315137820969629207520744363457318929177457989989092800658565680244471291855507520540130184270862536079521367954990513566167710088331302134575462909003367178102058358496892621431789912505093330385140924796464642928770530370280128838583832931460508565402089276242440190626135938969903562503699429666644483724814140242375347356458785421547605", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 147: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
//
void UTEST147(void)
{
    // informacje o teście
    test_start(147, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(428);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = add("4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", "-4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 148: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
//
void UTEST148(void)
{
    // informacje o teście
    test_start(148, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(428);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-731009922290035201812668906587166849925629511260154351066427507840969146536783076733540957618369159717287038179256826372141880055006904099418233900013295685653215335042340519915285312003919823483892916861735700073980620187346255882416928924133076558733297144079890920910459089256705149865172285470580862753798120590558046603547519383232486485778067792371022434157208318019601296221716807799601365945841256252078232996205921";        
                printf("#####START#####");
                int err_code = add("-4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", "3962460245442760779077860444058379762423784746431939584704264784406597184643231562989315137820969629207520744363457318929177457989989092800658565680244471291855507520540130184270862536079521367954990513566167710088331302134575462909003367178102058358496892621431789912505093330385140924796464642928770530370280128838583832931460508565402089276242440190626135938969903562503699429666644483724814140242375347356458785421547605", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 149: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
//
void UTEST149(void)
{
    // informacje o teście
    test_start(149, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(428);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-8655930413175556759968389794703926374773199004124033520474957076654163515823246202712171233260308418132328526906171464230496796034985089700735365260502238269364230376122600888457010384162962559393873943994071120250643224456497181700423663280337193275727082386943470745920645750026986999458101571328121923494358378267725712466468536514036665038262948173623294312097015443027000155555005775249229646430591950964995803839301131";        
                printf("#####START#####");
                int err_code = add("-4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", "-3962460245442760779077860444058379762423784746431939584704264784406597184643231562989315137820969629207520744363457318929177457989989092800658565680244471291855507520540130184270862536079521367954990513566167710088331302134575462909003367178102058358496892621431789912505093330385140924796464642928770530370280128838583832931460508565402089276242440190626135938969903562503699429666644483724814140242375347356458785421547605", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 150: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
//
void UTEST150(void)
{
    // informacje o teście
    test_start(150, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(428);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "731009922290035201812668906587166849925629511260154351066427507840969146536783076733540957618369159717287038179256826372141880055006904099418233900013295685653215335042340519915285312003919823483892916861735700073980620187346255882416928924133076558733297144079890920910459089256705149865172285470580862753798120590558046603547519383232486485778067792371022434157208318019601296221716807799601365945841256252078232996205921";        
                printf("#####START#####");
                int err_code = add("4693470167732795980890529350645546612349414257692093935770692292247566331180014639722856095439338788924807782542714145301319338044995996900076799580257766977508722855582470704186147848083441191438883430427903410162311922321921718791420296102235134917230189765511680833415552419641846074661636928399351393124078249429141879535008027948634575762020507982997158373127111880523300725888361291524415506188216603608537018417753526", "-3962460245442760779077860444058379762423784746431939584704264784406597184643231562989315137820969629207520744363457318929177457989989092800658565680244471291855507520540130184270862536079521367954990513566167710088331302134575462909003367178102058358496892621431789912505093330385140924796464642928770530370280128838583832931460508565402089276242440190626135938969903562503699429666644483724814140242375347356458785421547605", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 151: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 364 bajtów
//
void UTEST151(void)
{
    // informacje o teście
    test_start(151, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 364 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(364);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "13379834348092944670583096001374409508598331357437075919232202143036331141608233271276652992763781389112439118857089633614480996083876082262967518213385664972082367377293424289388234822355058744489497373375945566689671433714545970652930535126327022294695206328659670282996566147381452322804423212163495211546438322265534120102249846651598557341281612161687361019";        
                printf("#####START#####");
                int err_code = add("7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", "6085052191629207805431886788161614809931652903790876728035765616682468134468275828148293800502717985935773542919172518517104493960532952525052756443233121712056136498686195069488755898755466719675938255633208308916086532852449896487642243357336931168304103776456319575340116843690040075340703798951202657787027005758984887557072841840391620855804085033805254098", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 152: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
//
void UTEST152(void)
{
    // informacje o teście
    test_start(152, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(365);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = add("7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", "-7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 153: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
//
void UTEST153(void)
{
    // informacje o teście
    test_start(153, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(365);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1209729964834529059719322425051179888735025549855322463160670909671394872671681614980065391758345417240892033018744596580272008162810177212862005326919421547970094379921034150410723024844125305137620862109528948857498368009646177677646048411653159958086998775747031132316332460001372172123015614261089895972384310747564344988104162970815315629673442094076852823";        
                printf("#####START#####");
                int err_code = add("-7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", "6085052191629207805431886788161614809931652903790876728035765616682468134468275828148293800502717985935773542919172518517104493960532952525052756443233121712056136498686195069488755898755466719675938255633208308916086532852449896487642243357336931168304103776456319575340116843690040075340703798951202657787027005758984887557072841840391620855804085033805254098", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 154: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
//
void UTEST154(void)
{
    // informacje o teście
    test_start(154, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(365);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-13379834348092944670583096001374409508598331357437075919232202143036331141608233271276652992763781389112439118857089633614480996083876082262967518213385664972082367377293424289388234822355058744489497373375945566689671433714545970652930535126327022294695206328659670282996566147381452322804423212163495211546438322265534120102249846651598557341281612161687361019";        
                printf("#####START#####");
                int err_code = add("-7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", "-6085052191629207805431886788161614809931652903790876728035765616682468134468275828148293800502717985935773542919172518517104493960532952525052756443233121712056136498686195069488755898755466719675938255633208308916086532852449896487642243357336931168304103776456319575340116843690040075340703798951202657787027005758984887557072841840391620855804085033805254098", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 155: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
//
void UTEST155(void)
{
    // informacje o teście
    test_start(155, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(365);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1209729964834529059719322425051179888735025549855322463160670909671394872671681614980065391758345417240892033018744596580272008162810177212862005326919421547970094379921034150410723024844125305137620862109528948857498368009646177677646048411653159958086998775747031132316332460001372172123015614261089895972384310747564344988104162970815315629673442094076852823";        
                printf("#####START#####");
                int err_code = add("7294782156463736865151209213212794698666678453646199191196436526353863007139957443128359192261063403176665575937917115097376502123343129737914761770152543260026230878607229219899478923599592024813559117742737257773584900862096074165288291768990091126391102552203350707656449303691412247463719413212292553759411316506549232545177004811206936485477527127882106921", "-6085052191629207805431886788161614809931652903790876728035765616682468134468275828148293800502717985935773542919172518517104493960532952525052756443233121712056136498686195069488755898755466719675938255633208308916086532852449896487642243357336931168304103776456319575340116843690040075340703798951202657787027005758984887557072841840391620855804085033805254098", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 156: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
//
void UTEST156(void)
{
    // informacje o teście
    test_start(156, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(15);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1000000000000";        
                printf("#####START#####");
                int err_code = add("999999999999", "1", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 157: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
//
void UTEST157(void)
{
    // informacje o teście
    test_start(157, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(16);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1000000000000";        
                printf("#####START#####");
                int err_code = add("-999999999999", "-1", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 158: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
//
void UTEST158(void)
{
    // informacje o teście
    test_start(158, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(15);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1000000000000";        
                printf("#####START#####");
                int err_code = add("1", "999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 159: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
//
void UTEST159(void)
{
    // informacje o teście
    test_start(159, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(16);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1000000000000";        
                printf("#####START#####");
                int err_code = add("-1", "-999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 160: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
//
void UTEST160(void)
{
    // informacje o teście
    test_start(160, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(16);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-999999999998";        
                printf("#####START#####");
                int err_code = add("1", "-999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 161: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
//
void UTEST161(void)
{
    // informacje o teście
    test_start(161, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(15);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1";        
                printf("#####START#####");
                int err_code = add("100000000000", "-99999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 162: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
//
void UTEST162(void)
{
    // informacje o teście
    test_start(162, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(15);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1";        
                printf("#####START#####");
                int err_code = add("-99999999999", "100000000000", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 163: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
//
void UTEST163(void)
{
    // informacje o teście
    test_start(163, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(16);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1";        
                printf("#####START#####");
                int err_code = add("99999999999", "-100000000000", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 164: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
//
void UTEST164(void)
{
    // informacje o teście
    test_start(164, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(16);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1";        
                printf("#####START#####");
                int err_code = add("-100000000000", "99999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 165: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów
//
void UTEST165(void)
{
    // informacje o teście
    test_start(165, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(456);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1";        
                printf("#####START#####");
                int err_code = add("68709368245973567099857838955093577821536886525009235764817550490365540995893981671216384429692646656075467053227063212548675747335684573382491697180402011639665591767344631853001178016402349722473395059678209214983545368497325680458871141242692267064108478299643042363939903759003495144931280933587248383174314008190247557992773974617849723460995686048833057338711118821330992132316008868546522351159186619637281630958089090286822716270904331226115614", "-68709368245973567099857838955093577821536886525009235764817550490365540995893981671216384429692646656075467053227063212548675747335684573382491697180402011639665591767344631853001178016402349722473395059678209214983545368497325680458871141242692267064108478299643042363939903759003495144931280933587248383174314008190247557992773974617849723460995686048833057338711118821330992132316008868546522351159186619637281630958089090286822716270904331226115615", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 166: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów
//
void UTEST166(void)
{
    // informacje o teście
    test_start(166, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(456);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1";        
                printf("#####START#####");
                int err_code = add("68709368245973567099857838955093577821536886525009235764817550490365540995893981671216384429692646656075467053227063212548675747335684573382491697180402011639665591767344631853001178016402349722473395059678209214983545368497325680458871141242692267064108478299643042363939903759003495144931280933587248383174314008190247557992773974617849723460995686048833057338711118821330992132316008868546522351159186619637281630958089090286822716270904331226115615", "-68709368245973567099857838955093577821536886525009235764817550490365540995893981671216384429692646656075467053227063212548675747335684573382491697180402011639665591767344631853001178016402349722473395059678209214983545368497325680458871141242692267064108478299643042363939903759003495144931280933587248383174314008190247557992773974617849723460995686048833057338711118821330992132316008868546522351159186619637281630958089090286822716270904331226115614", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 167: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów
//
void UTEST167(void)
{
    // informacje o teście
    test_start(167, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "4472SJ6LNpYzvNsjMDSMj1zq";        
                printf("#####START#####");
                int err_code = add("447", "2SJ6LNpYzvNsjMDSMj1zq", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 168: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów
//
void UTEST168(void)
{
    // informacje o teście
    test_start(168, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "4472SJ6LNpYzvNsjMDSMj1zq";        
                printf("#####START#####");
                int err_code = add("2SJ6LNpYzvNsjMDSMj1zq", "447", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 169: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST169(void)
{
    // informacje o teście
    test_start(169, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "127";        
                printf("#####START#####");
                int err_code = add("127", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 170: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST170(void)
{
    // informacje o teście
    test_start(170, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "127";        
                printf("#####START#####");
                int err_code = add("0", "127", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 171: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST171(void)
{
    // informacje o teście
    test_start(171, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "127";        
                printf("#####START#####");
                int err_code = add("127", "", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 172: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST172(void)
{
    // informacje o teście
    test_start(172, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "127";        
                printf("#####START#####");
                int err_code = add("", "127", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 173: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
//
void UTEST173(void)
{
    // informacje o teście
    test_start(173, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = add("-", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 174: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
//
void UTEST174(void)
{
    // informacje o teście
    test_start(174, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = add("-", "-", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja add() powinna zwrócić wartość 2, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!2)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 175: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
//
void UTEST175(void)
{
    // informacje o teście
    test_start(175, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "90";        
                printf("#####START#####");
                int err_code = add("135", "-45", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 176: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
//
void UTEST176(void)
{
    // informacje o teście
    test_start(176, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-90";        
                printf("#####START#####");
                int err_code = add("-135", "45", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja add() powinna zwrócić wartość 0, a zwróciła %d", err_code);
        
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
        
                if (!0)
                {
                    test_error(result != NULL, "Funkcja add() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję add() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 177: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów
//
void UTEST177(void)
{
    // informacje o teście
    test_start(177, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(1);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = add("440", "207", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja add() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 178: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
//
void UTEST178(void)
{
    // informacje o teście
    test_start(178, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = add("-440", "-207", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja add() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 179: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 3 bajtów
//
void UTEST179(void)
{
    // informacje o teście
    test_start(179, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 3 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(3);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = add("254", "-11", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja add() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 180: Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów
//
void UTEST180(void)
{
    // informacje o teście
    test_start(180, "Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(1);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = add("-254", "11", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja add() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 181: Sprawdzanie poprawności działania funkcji add
//
void UTEST181(void)
{
    // informacje o teście
    test_start(181, "Sprawdzanie poprawności działania funkcji add", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        char *result;
        printf("#####START#####");
        int err_code = add(NULL, "1498", &result);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja add() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 182: Sprawdzanie poprawności działania funkcji add
//
void UTEST182(void)
{
    // informacje o teście
    test_start(182, "Sprawdzanie poprawności działania funkcji add", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        char *result;
        printf("#####START#####");
        int err_code = add("890", NULL, &result);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja add() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 183: Sprawdzanie poprawności działania funkcji add
//
void UTEST183(void)
{
    // informacje o teście
    test_start(183, "Sprawdzanie poprawności działania funkcji add", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        printf("#####START#####");
        int err_code = add("112", "498", NULL);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja add() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 184: Sprawdzanie poprawności działania funkcji add
//
void UTEST184(void)
{
    // informacje o teście
    test_start(184, "Sprawdzanie poprawności działania funkcji add", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        printf("#####START#####");
        int err_code = add(NULL, NULL, NULL);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja add() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 185: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST185(void)
{
    // informacje o teście
    test_start(185, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "67";        
                printf("#####START#####");
                int err_code = subtract("427", "360", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 186: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST186(void)
{
    // informacje o teście
    test_start(186, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "787";        
                printf("#####START#####");
                int err_code = subtract("427", "-360", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 187: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST187(void)
{
    // informacje o teście
    test_start(187, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = subtract("427", "427", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 188: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST188(void)
{
    // informacje o teście
    test_start(188, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "787";        
                printf("#####START#####");
                int err_code = subtract("360", "-427", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 189: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST189(void)
{
    // informacje o teście
    test_start(189, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-67";        
                printf("#####START#####");
                int err_code = subtract("-427", "-360", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 190: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST190(void)
{
    // informacje o teście
    test_start(190, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-787";        
                printf("#####START#####");
                int err_code = subtract("-427", "360", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 191: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST191(void)
{
    // informacje o teście
    test_start(191, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "369";        
                printf("#####START#####");
                int err_code = subtract("900", "531", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 192: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST192(void)
{
    // informacje o teście
    test_start(192, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-369";        
                printf("#####START#####");
                int err_code = subtract("-900", "-531", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 193: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST193(void)
{
    // informacje o teście
    test_start(193, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1431";        
                printf("#####START#####");
                int err_code = subtract("-900", "531", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 194: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST194(void)
{
    // informacje o teście
    test_start(194, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1431";        
                printf("#####START#####");
                int err_code = subtract("900", "-531", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 195: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów
//
void UTEST195(void)
{
    // informacje o teście
    test_start(195, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(327);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-736937401335451067649259836549257280854062240867805330390970132412767048057543048696089314499099773002931909310092390524383758663071709145663784107471063379762127863562086712329893361395293230587055058090709705861011546762241531551230508015010172442466733911901781110099005464249375728528011311626822880653574293826930505042";        
                printf("#####START#####");
                int err_code = subtract("109873368855995484244579672363523881535753739189735261803446053080050306167169030109503228205674457548522925965039009905162755975188414085021197248673088051424955551447425128146487973377969068158912989534897393912316196852459655395057318155379325727972388731056431508397324745993858627205316584368426997420326127956221846460", "846810770191446551893839508912781162389815980057540592194416185492817354224712078805592542704774230551454835275131400429546514638260123230684981356144151431187083415009511840476381334773262298745968047625607099773327743614701186946287826170389498170439122642958212618496330210243234355733327895995249878073900421783152351502", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 196: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów
//
void UTEST196(void)
{
    // informacje o teście
    test_start(196, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(327);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = subtract("109873368855995484244579672363523881535753739189735261803446053080050306167169030109503228205674457548522925965039009905162755975188414085021197248673088051424955551447425128146487973377969068158912989534897393912316196852459655395057318155379325727972388731056431508397324745993858627205316584368426997420326127956221846460", "109873368855995484244579672363523881535753739189735261803446053080050306167169030109503228205674457548522925965039009905162755975188414085021197248673088051424955551447425128146487973377969068158912989534897393912316196852459655395057318155379325727972388731056431508397324745993858627205316584368426997420326127956221846460", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 197: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 450 bajtów
//
void UTEST197(void)
{
    // informacje o teście
    test_start(197, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 450 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(450);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-432233489805421884650709078256205367217596619060768188154269596364423245396152650343254190196606313795081987673120577248584389385857311029903697984569009002994068042800049706307964761158760089354776093126724083889900604292945045607099141638287028075941793797804676094639512793790850483779282303113101303654059407560595048173690201653815629641903894081693267728804936795424330937364959165124477882651504989280207773212121012313146359871563256713602";        
                printf("#####START#####");
                int err_code = subtract("531867256684281205784195588336569515298386461846142889128804892582212187726757066485172767626929424755960902431825765006471911192783321002140085907718924577162693833242410783639400211585758221509728706595991716067271172838003976722788787518673203074178119628913112858061363180777318506977768124273490317396005849472464717376053203412045058936348632223398728296380451312895086645321019288520819258088926669336133239951506664025028962523042590815193", "964100746489703090434904666592774882515983080906911077283074488946635433122909716828426957823535738551042890104946342255056300578640632032043783892287933580156761876042460489947364972744518310864504799722715799957171777130949022329887929156960231150119913426717788952700875974568168990757050427386591621050065257033059765549743405065860688578252526305091996025185388108319417582685978453645297140740431658616341013163627676338175322394605847528795", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 198: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
//
void UTEST198(void)
{
    // informacje o teście
    test_start(198, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(451);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1495968003173984296219100254929344397814369542753053966411879381528847620849666783313599725450465163307003792536772107261528211771423953034183869800006858157319455709284871273586765184330276532374233506318707516024442949968952999052676716675633434224298033055630901810762239155345487497734818551660081938446071106505524482925796608477905747514601158528490724321565839421214504228006997742166116398829358327952474253115134340363204284917648438343988";        
                printf("#####START#####");
                int err_code = subtract("-531867256684281205784195588336569515298386461846142889128804892582212187726757066485172767626929424755960902431825765006471911192783321002140085907718924577162693833242410783639400211585758221509728706595991716067271172838003976722788787518673203074178119628913112858061363180777318506977768124273490317396005849472464717376053203412045058936348632223398728296380451312895086645321019288520819258088926669336133239951506664025028962523042590815193", "964100746489703090434904666592774882515983080906911077283074488946635433122909716828426957823535738551042890104946342255056300578640632032043783892287933580156761876042460489947364972744518310864504799722715799957171777130949022329887929156960231150119913426717788952700875974568168990757050427386591621050065257033059765549743405065860688578252526305091996025185388108319417582685978453645297140740431658616341013163627676338175322394605847528795", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 199: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
//
void UTEST199(void)
{
    // informacje o teście
    test_start(199, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(451);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "432233489805421884650709078256205367217596619060768188154269596364423245396152650343254190196606313795081987673120577248584389385857311029903697984569009002994068042800049706307964761158760089354776093126724083889900604292945045607099141638287028075941793797804676094639512793790850483779282303113101303654059407560595048173690201653815629641903894081693267728804936795424330937364959165124477882651504989280207773212121012313146359871563256713602";        
                printf("#####START#####");
                int err_code = subtract("-531867256684281205784195588336569515298386461846142889128804892582212187726757066485172767626929424755960902431825765006471911192783321002140085907718924577162693833242410783639400211585758221509728706595991716067271172838003976722788787518673203074178119628913112858061363180777318506977768124273490317396005849472464717376053203412045058936348632223398728296380451312895086645321019288520819258088926669336133239951506664025028962523042590815193", "-964100746489703090434904666592774882515983080906911077283074488946635433122909716828426957823535738551042890104946342255056300578640632032043783892287933580156761876042460489947364972744518310864504799722715799957171777130949022329887929156960231150119913426717788952700875974568168990757050427386591621050065257033059765549743405065860688578252526305091996025185388108319417582685978453645297140740431658616341013163627676338175322394605847528795", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 200: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
//
void UTEST200(void)
{
    // informacje o teście
    test_start(200, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(451);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1495968003173984296219100254929344397814369542753053966411879381528847620849666783313599725450465163307003792536772107261528211771423953034183869800006858157319455709284871273586765184330276532374233506318707516024442949968952999052676716675633434224298033055630901810762239155345487497734818551660081938446071106505524482925796608477905747514601158528490724321565839421214504228006997742166116398829358327952474253115134340363204284917648438343988";        
                printf("#####START#####");
                int err_code = subtract("531867256684281205784195588336569515298386461846142889128804892582212187726757066485172767626929424755960902431825765006471911192783321002140085907718924577162693833242410783639400211585758221509728706595991716067271172838003976722788787518673203074178119628913112858061363180777318506977768124273490317396005849472464717376053203412045058936348632223398728296380451312895086645321019288520819258088926669336133239951506664025028962523042590815193", "-964100746489703090434904666592774882515983080906911077283074488946635433122909716828426957823535738551042890104946342255056300578640632032043783892287933580156761876042460489947364972744518310864504799722715799957171777130949022329887929156960231150119913426717788952700875974568168990757050427386591621050065257033059765549743405065860688578252526305091996025185388108319417582685978453645297140740431658616341013163627676338175322394605847528795", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 201: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST201(void)
{
    // informacje o teście
    test_start(201, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "99999999999999999996";        
                printf("#####START#####");
                int err_code = subtract("100000000000000000005", "9", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 202: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST202(void)
{
    // informacje o teście
    test_start(202, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-99999999999999999996";        
                printf("#####START#####");
                int err_code = subtract("9", "100000000000000000005", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 203: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
//
void UTEST203(void)
{
    // informacje o teście
    test_start(203, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(25);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1000000000000000000000";        
                printf("#####START#####");
                int err_code = subtract("-999999999999999999999", "1", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 204: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST204(void)
{
    // informacje o teście
    test_start(204, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1000000000000000000000";        
                printf("#####START#####");
                int err_code = subtract("999999999999999999999", "-1", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 205: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
//
void UTEST205(void)
{
    // informacje o teście
    test_start(205, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(25);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "999999999999999999998";        
                printf("#####START#####");
                int err_code = subtract("-1", "-999999999999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 206: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST206(void)
{
    // informacje o teście
    test_start(206, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-1000000000000000000000";        
                printf("#####START#####");
                int err_code = subtract("-1", "999999999999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 207: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
//
void UTEST207(void)
{
    // informacje o teście
    test_start(207, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(25);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "1000000000000000000000";        
                printf("#####START#####");
                int err_code = subtract("1", "-999999999999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 208: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
//
void UTEST208(void)
{
    // informacje o teście
    test_start(208, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(25);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-999999999999999999999";        
                printf("#####START#####");
                int err_code = subtract("-999999999999999999999", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 209: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST209(void)
{
    // informacje o teście
    test_start(209, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "999999999999999999999";        
                printf("#####START#####");
                int err_code = subtract("999999999999999999999", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 210: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
//
void UTEST210(void)
{
    // informacje o teście
    test_start(210, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(25);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "999999999999999999999";        
                printf("#####START#####");
                int err_code = subtract("0", "-999999999999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 211: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
//
void UTEST211(void)
{
    // informacje o teście
    test_start(211, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(24);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-999999999999999999999";        
                printf("#####START#####");
                int err_code = subtract("0", "999999999999999999999", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 212: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
//
void UTEST212(void)
{
    // informacje o teście
    test_start(212, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = subtract("0", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 213: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST213(void)
{
    // informacje o teście
    test_start(213, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "900";        
                printf("#####START#####");
                int err_code = subtract("900", "", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja subtract() powinna zwrócić wartość 2, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!2)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 214: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST214(void)
{
    // informacje o teście
    test_start(214, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "900";        
                printf("#####START#####");
                int err_code = subtract("", "900", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja subtract() powinna zwrócić wartość 2, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!2)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 215: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
//
void UTEST215(void)
{
    // informacje o teście
    test_start(215, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = subtract("-", "0", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja subtract() powinna zwrócić wartość 2, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!2)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 216: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
//
void UTEST216(void)
{
    // informacje o teście
    test_start(216, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "0";        
                printf("#####START#####");
                int err_code = subtract("-", "-", &result);
                printf("#####END#####\\n");
                test_error(err_code == 2, "Funkcja subtract() powinna zwrócić wartość 2, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!2)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 217: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
//
void UTEST217(void)
{
    // informacje o teście
    test_start(217, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(6);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "214";        
                printf("#####START#####");
                int err_code = subtract("186", "-28", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 218: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
//
void UTEST218(void)
{
    // informacje o teście
    test_start(218, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(7);
    
    //
    // -----------
    //
    

                char *result;
                const char *expected_result = "-214";        
                printf("#####START#####");
                int err_code = subtract("-186", "28", &result);
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja subtract() powinna zwrócić wartość 0, a zwróciła %d", err_code);

                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

                if (!0)
                {
                    test_error(result != NULL, "Funkcja subtract() powinna przypisać pod result adres zaalokowanej pamięci, a przypisała NULL");
                    onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)
                    test_error(strcmp(result, expected_result) == 0, "Wartość obliczona przez funkcję subtract() jest nieprawidłowa; powinno być '%s', a jest '%s'", expected_result, result);
                    free(result);
                }
                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 219: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 1 bajtów
//
void UTEST219(void)
{
    // informacje o teście
    test_start(219, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 1 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(1);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = subtract("469", "-410", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja subtract() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 220: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 2 bajtów
//
void UTEST220(void)
{
    // informacje o teście
    test_start(220, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 2 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(2);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = subtract("-469", "410", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja subtract() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 221: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 3 bajtów
//
void UTEST221(void)
{
    // informacje o teście
    test_start(221, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 3 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(3);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = subtract("260", "81", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja subtract() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 222: Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
//
void UTEST222(void)
{
    // informacje o teście
    test_start(222, "Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(4);
    
    //
    // -----------
    //
    

                char *result;
                printf("#####START#####");
                int err_code = subtract("-260", "-81", &result);
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja subtract() powinna zwrócić wartość 3, a zwróciła %d", err_code);

                test_no_heap_leakage();
                onerror_terminate(); // przerwnie wszystkich testów jednostkowych (np. coś jest mocno nie tak z kodem)

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 223: Sprawdzanie poprawności działania funkcji subtract
//
void UTEST223(void)
{
    // informacje o teście
    test_start(223, "Sprawdzanie poprawności działania funkcji subtract", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        char *result;
        printf("#####START#####");
        int err_code = subtract(NULL, "1699", &result);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja subtract() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 224: Sprawdzanie poprawności działania funkcji subtract
//
void UTEST224(void)
{
    // informacje o teście
    test_start(224, "Sprawdzanie poprawności działania funkcji subtract", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        char *result;
        printf("#####START#####");
        int err_code = subtract("907", NULL, &result);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja subtract() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 225: Sprawdzanie poprawności działania funkcji subtract
//
void UTEST225(void)
{
    // informacje o teście
    test_start(225, "Sprawdzanie poprawności działania funkcji subtract", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        printf("#####START#####");
        int err_code = subtract("927", "1929", NULL);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja subtract() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 226: Sprawdzanie poprawności działania funkcji subtract
//
void UTEST226(void)
{
    // informacje o teście
    test_start(226, "Sprawdzanie poprawności działania funkcji subtract", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

        printf("#####START#####");
        int err_code = subtract(NULL, NULL, NULL);
        printf("#####END#####\\n");
        test_error(err_code == 1, "Funkcja subtract() powinna zwrócić wartość 1, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 227: Sprawdzanie poprawności działania funkcji compare
//
void UTEST227(void)
{
    // informacje o teście
    test_start(227, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "447");
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja compare() powinna zwrócić wartość 0, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 228: Sprawdzanie poprawności działania funkcji compare
//
void UTEST228(void)
{
    // informacje o teście
    test_start(228, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-447", "-447");
                printf("#####END#####\\n");
                test_error(err_code == 0, "Funkcja compare() powinna zwrócić wartość 0, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 229: Sprawdzanie poprawności działania funkcji compare
//
void UTEST229(void)
{
    // informacje o teście
    test_start(229, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "-57");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 230: Sprawdzanie poprawności działania funkcji compare
//
void UTEST230(void)
{
    // informacje o teście
    test_start(230, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-57", "447");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 231: Sprawdzanie poprawności działania funkcji compare
//
void UTEST231(void)
{
    // informacje o teście
    test_start(231, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "448");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 232: Sprawdzanie poprawności działania funkcji compare
//
void UTEST232(void)
{
    // informacje o teście
    test_start(232, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("448", "447");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 233: Sprawdzanie poprawności działania funkcji compare
//
void UTEST233(void)
{
    // informacje o teście
    test_start(233, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "57");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 234: Sprawdzanie poprawności działania funkcji compare
//
void UTEST234(void)
{
    // informacje o teście
    test_start(234, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("57", "447");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 235: Sprawdzanie poprawności działania funkcji compare
//
void UTEST235(void)
{
    // informacje o teście
    test_start(235, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-57", "-56");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 236: Sprawdzanie poprawności działania funkcji compare
//
void UTEST236(void)
{
    // informacje o teście
    test_start(236, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-56", "-57");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 237: Sprawdzanie poprawności działania funkcji compare
//
void UTEST237(void)
{
    // informacje o teście
    test_start(237, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("8540046375528041982791555465883665967470958389216234119784178356679225874279110557041886560073474002572899580151495709011733001175705735310776727300076303204534355798609034197478261492034459014120100874562256881402552920073332187189784181215966809789328273013961248884125", "9791225881544733914268757845990557486492552252376521097107542354156832380145703360725577399081919716216447525471781381870003726625675651049228525133910341927941558729506351552016841001484695791965297030648065824543326343311751096953420262842190582222747073353945270643713");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 238: Sprawdzanie poprawności działania funkcji compare
//
void UTEST238(void)
{
    // informacje o teście
    test_start(238, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("9791225881544733914268757845990557486492552252376521097107542354156832380145703360725577399081919716216447525471781381870003726625675651049228525133910341927941558729506351552016841001484695791965297030648065824543326343311751096953420262842190582222747073353945270643713", "8540046375528041982791555465883665967470958389216234119784178356679225874279110557041886560073474002572899580151495709011733001175705735310776727300076303204534355798609034197478261492034459014120100874562256881402552920073332187189784181215966809789328273013961248884125");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 239: Sprawdzanie poprawności działania funkcji compare
//
void UTEST239(void)
{
    // informacje o teście
    test_start(239, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-8540046375528041982791555465883665967470958389216234119784178356679225874279110557041886560073474002572899580151495709011733001175705735310776727300076303204534355798609034197478261492034459014120100874562256881402552920073332187189784181215966809789328273013961248884125", "-9791225881544733914268757845990557486492552252376521097107542354156832380145703360725577399081919716216447525471781381870003726625675651049228525133910341927941558729506351552016841001484695791965297030648065824543326343311751096953420262842190582222747073353945270643713");
                printf("#####END#####\\n");
                test_error(err_code == 1, "Funkcja compare() powinna zwrócić wartość 1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 240: Sprawdzanie poprawności działania funkcji compare
//
void UTEST240(void)
{
    // informacje o teście
    test_start(240, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("-9791225881544733914268757845990557486492552252376521097107542354156832380145703360725577399081919716216447525471781381870003726625675651049228525133910341927941558729506351552016841001484695791965297030648065824543326343311751096953420262842190582222747073353945270643713", "-8540046375528041982791555465883665967470958389216234119784178356679225874279110557041886560073474002572899580151495709011733001175705735310776727300076303204534355798609034197478261492034459014120100874562256881402552920073332187189784181215966809789328273013961248884125");
                printf("#####END#####\\n");
                test_error(err_code == -1, "Funkcja compare() powinna zwrócić wartość -1, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 241: Sprawdzanie poprawności działania funkcji compare
//
void UTEST241(void)
{
    // informacje o teście
    test_start(241, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "7usTPzmh7iM1mjH2ecJT");
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja compare() powinna zwrócić wartość 3, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 242: Sprawdzanie poprawności działania funkcji compare
//
void UTEST242(void)
{
    // informacje o teście
    test_start(242, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("7usTPzmh7iM1mjH2ecJT", "447");
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja compare() powinna zwrócić wartość 3, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 243: Sprawdzanie poprawności działania funkcji compare
//
void UTEST243(void)
{
    // informacje o teście
    test_start(243, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("447", "0447");
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja compare() powinna zwrócić wartość 3, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 244: Sprawdzanie poprawności działania funkcji compare
//
void UTEST244(void)
{
    // informacje o teście
    test_start(244, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

                printf("#####START#####");
                int err_code = compare("0447", "447");
                printf("#####END#####\\n");
                test_error(err_code == 3, "Funkcja compare() powinna zwrócić wartość 3, a zwróciła %d", err_code);

            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 245: Sprawdzanie poprawności działania funkcji compare
//
void UTEST245(void)
{
    // informacje o teście
    test_start(245, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

            printf("#####START#####");
            int err_code = compare("447", NULL);
            printf("#####END#####\\n");
            test_error(err_code == 2, "Funkcja compare() powinna zwrócić wartość 2, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 246: Sprawdzanie poprawności działania funkcji compare
//
void UTEST246(void)
{
    // informacje o teście
    test_start(246, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

            printf("#####START#####");
            int err_code = compare(NULL, "447");
            printf("#####END#####\\n");
            test_error(err_code == 2, "Funkcja compare() powinna zwrócić wartość 2, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 247: Sprawdzanie poprawności działania funkcji compare
//
void UTEST247(void)
{
    // informacje o teście
    test_start(247, "Sprawdzanie poprawności działania funkcji compare", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    
    //
    // -----------
    //
    

            printf("#####START#####");
            int err_code = compare(NULL, NULL);
            printf("#####END#####\\n");
            test_error(err_code == 2, "Funkcja compare() powinna zwrócić wartość 2, a zwróciła %d", err_code);

        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}



//
//  Test 1: Reakcja na brak pamięci - limit pamięci ustawiony na 0 bajtów
//
void MTEST1(int argc, char** argv, char** envp)
{
    // informacje o teście
    test_start(1, "Reakcja na brak pamięci - limit pamięci ustawiony na 0 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(0);
    
    //
    // -----------
    //
    
                printf("***START***\n");
                int ret_code = rdebug_call_main(tested_main, argc, argv, envp);
                printf("\n***END***\n");
                test_error(ret_code == 8, "Funkcja main zakończyła się kodem %d a powinna 8", ret_code); 
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 2: Reakcja na brak pamięci - limit pamięci ustawiony na 201 bajtów
//
void MTEST2(int argc, char** argv, char** envp)
{
    // informacje o teście
    test_start(2, "Reakcja na brak pamięci - limit pamięci ustawiony na 201 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(201);
    
    //
    // -----------
    //
    
                printf("***START***\n");
                int ret_code = rdebug_call_main(tested_main, argc, argv, envp);
                printf("\n***END***\n");
                test_error(ret_code == 8, "Funkcja main zakończyła się kodem %d a powinna 8", ret_code); 
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 3: Reakcja na brak pamięci - limit pamięci ustawiony na 402 bajtów
//
void MTEST3(int argc, char** argv, char** envp)
{
    // informacje o teście
    test_start(3, "Reakcja na brak pamięci - limit pamięci ustawiony na 402 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(402);
    
    //
    // -----------
    //
    
                printf("***START***\n");
                int ret_code = rdebug_call_main(tested_main, argc, argv, envp);
                printf("\n***END***\n");
                test_error(ret_code == 8, "Funkcja main zakończyła się kodem %d a powinna 8", ret_code); 
            
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}

//
//  Test 4: Reakcja na brak pamięci - limit pamięci ustawiony na 414 bajtów
//
void MTEST4(int argc, char** argv, char** envp)
{
    // informacje o teście
    test_start(4, "Reakcja na brak pamięci - limit pamięci ustawiony na 414 bajtów", __LINE__);

    // uwarunkowanie zasobów - pamięci, itd...
    test_file_write_limit_setup(33554432);
    rldebug_reset_limits();
    rldebug_heap_set_global_limit(414);
    
    //
    // -----------
    //
    
            printf("***START***\n");
            int ret_code = rdebug_call_main(tested_main, argc, argv, envp);
            printf("\n***END***\n");
            test_error(ret_code == 0, "Funkcja main zakończyła się kodem %d a powinna 0", ret_code); 
        
    //
    // -----------
    //

    // przywrócenie podstawowych parametów przydzielania zasobów (jeśli to tylko możliwe)
    rldebug_reset_limits();
    test_file_write_limit_restore();
    
    test_ok();
}


enum run_mode_t { rm_normal_with_rld = 0, rm_unit_test = 1, rm_main_test = 2 };

int __wrap_main(volatile int _argc, char** _argv, char** _envp)
{
    int volatile vargc = _argc;
    char ** volatile vargv = _argv, ** volatile venvp = _envp;
    volatile enum run_mode_t run_mode = rm_unit_test; // -1
    volatile int selected_test = -1;

    if (vargc > 1)
    {
        char* smode = strtok(vargv[1], ",");
        char* stest = strtok(NULL, "");
        char *errptr = NULL;
        run_mode = (enum run_mode_t)strtol(smode, &errptr, 10);
        if (*errptr == '\x0')
        {
            memmove(vargv + 1, vargv + 2, sizeof(char*) * (vargc - 1));
            vargc--;

            if (stest != NULL)
            {
                int val = (int)strtol(stest, &errptr, 10);
                if (*errptr == '\x0')
                    selected_test = val;
            }
        }
    }

    // printf("runmode=%d; selected_test=%d\n", run_mode, selected_test);

    // inicjuj testy jednostkowe
    unit_test_init(run_mode, "unit_test_v2.c");
    test_limit_init();
    rldebug_set_reported_severity_level(MSL_FAILURE);

    if (run_mode == rm_normal_with_rld)
    {
        // konfiguracja ograniczników
        rldebug_reset_limits();
        

        // uruchom funkcję main Studenta a potem wyświetl podsumowanie sterty i zasobów
        volatile int ret_code = rdebug_call_main(tested_main, vargc, vargv, venvp);

        rldebug_reset_limits();
        

        int leaks_detected = rldebug_show_leaked_resources(0);
        if (leaks_detected)
            raise(SIGHEAP);

        return ret_code;
    }

    
    if (run_mode == rm_unit_test)
    {
        test_title("Testy jednostkowe");

        void (*pfcn[])(void) =
        { 
            UTEST1, // Sprawdzanie poprawności działania funkcji validate
            UTEST2, // Sprawdzanie poprawności działania funkcji validate
            UTEST3, // Sprawdzanie poprawności działania funkcji validate
            UTEST4, // Sprawdzanie poprawności działania funkcji validate
            UTEST5, // Sprawdzanie poprawności działania funkcji validate
            UTEST6, // Sprawdzanie poprawności działania funkcji validate
            UTEST7, // Sprawdzanie poprawności działania funkcji validate
            UTEST8, // Sprawdzanie poprawności działania funkcji validate
            UTEST9, // Sprawdzanie poprawności działania funkcji validate
            UTEST10, // Sprawdzanie poprawności działania funkcji validate
            UTEST11, // Sprawdzanie poprawności działania funkcji validate
            UTEST12, // Sprawdzanie poprawności działania funkcji validate
            UTEST13, // Sprawdzanie poprawności działania funkcji validate
            UTEST14, // Sprawdzanie poprawności działania funkcji validate
            UTEST15, // Sprawdzanie poprawności działania funkcji validate
            UTEST16, // Sprawdzanie poprawności działania funkcji validate
            UTEST17, // Sprawdzanie poprawności działania funkcji validate
            UTEST18, // Sprawdzanie poprawności działania funkcji validate
            UTEST19, // Sprawdzanie poprawności działania funkcji validate
            UTEST20, // Sprawdzanie poprawności działania funkcji validate
            UTEST21, // Sprawdzanie poprawności działania funkcji validate
            UTEST22, // Sprawdzanie poprawności działania funkcji validate
            UTEST23, // Sprawdzanie poprawności działania funkcji validate
            UTEST24, // Sprawdzanie poprawności działania funkcji validate
            UTEST25, // Sprawdzanie poprawności działania funkcji validate
            UTEST26, // Sprawdzanie poprawności działania funkcji validate
            UTEST27, // Sprawdzanie poprawności działania funkcji validate
            UTEST28, // Sprawdzanie poprawności działania funkcji validate
            UTEST29, // Sprawdzanie poprawności działania funkcji validate
            UTEST30, // Sprawdzanie poprawności działania funkcji validate
            UTEST31, // Sprawdzanie poprawności działania funkcji validate
            UTEST32, // Sprawdzanie poprawności działania funkcji validate
            UTEST33, // Sprawdzanie poprawności działania funkcji validate
            UTEST34, // Sprawdzanie poprawności działania funkcji validate
            UTEST35, // Sprawdzanie poprawności działania funkcji validate
            UTEST36, // Sprawdzanie poprawności działania funkcji validate
            UTEST37, // Sprawdzanie poprawności działania funkcji validate
            UTEST38, // Sprawdzanie poprawności działania funkcji validate
            UTEST39, // Sprawdzanie poprawności działania funkcji validate
            UTEST40, // Sprawdzanie poprawności działania funkcji validate
            UTEST41, // Sprawdzanie poprawności działania funkcji validate
            UTEST42, // Sprawdzanie poprawności działania funkcji validate
            UTEST43, // Sprawdzanie poprawności działania funkcji validate
            UTEST44, // Sprawdzanie poprawności działania funkcji validate
            UTEST45, // Sprawdzanie poprawności działania funkcji validate
            UTEST46, // Sprawdzanie poprawności działania funkcji validate
            UTEST47, // Sprawdzanie poprawności działania funkcji validate
            UTEST48, // Sprawdzanie poprawności działania funkcji validate
            UTEST49, // Sprawdzanie poprawności działania funkcji validate
            UTEST50, // Sprawdzanie poprawności działania funkcji validate
            UTEST51, // Sprawdzanie poprawności działania funkcji validate
            UTEST52, // Sprawdzanie poprawności działania funkcji validate
            UTEST53, // Sprawdzanie poprawności działania funkcji validate
            UTEST54, // Sprawdzanie poprawności działania funkcji validate
            UTEST55, // Sprawdzanie poprawności działania funkcji validate
            UTEST56, // Sprawdzanie poprawności działania funkcji validate
            UTEST57, // Sprawdzanie poprawności działania funkcji validate
            UTEST58, // Sprawdzanie poprawności działania funkcji validate
            UTEST59, // Sprawdzanie poprawności działania funkcji validate
            UTEST60, // Sprawdzanie poprawności działania funkcji validate
            UTEST61, // Sprawdzanie poprawności działania funkcji validate
            UTEST62, // Sprawdzanie poprawności działania funkcji validate
            UTEST63, // Sprawdzanie poprawności działania funkcji validate
            UTEST64, // Sprawdzanie poprawności działania funkcji validate
            UTEST65, // Sprawdzanie poprawności działania funkcji validate
            UTEST66, // Sprawdzanie poprawności działania funkcji validate
            UTEST67, // Sprawdzanie poprawności działania funkcji validate
            UTEST68, // Sprawdzanie poprawności działania funkcji validate
            UTEST69, // Sprawdzanie poprawności działania funkcji validate
            UTEST70, // Sprawdzanie poprawności działania funkcji validate
            UTEST71, // Sprawdzanie poprawności działania funkcji validate
            UTEST72, // Sprawdzanie poprawności działania funkcji validate
            UTEST73, // Sprawdzanie poprawności działania funkcji validate
            UTEST74, // Sprawdzanie poprawności działania funkcji validate
            UTEST75, // Sprawdzanie poprawności działania funkcji validate
            UTEST76, // Sprawdzanie poprawności działania funkcji validate
            UTEST77, // Sprawdzanie poprawności działania funkcji validate
            UTEST78, // Sprawdzanie poprawności działania funkcji validate
            UTEST79, // Sprawdzanie poprawności działania funkcji validate
            UTEST80, // Sprawdzanie poprawności działania funkcji validate
            UTEST81, // Sprawdzanie poprawności działania funkcji validate
            UTEST82, // Sprawdzanie poprawności działania funkcji validate
            UTEST83, // Sprawdzanie poprawności działania funkcji validate
            UTEST84, // Sprawdzanie poprawności działania funkcji validate
            UTEST85, // Sprawdzanie poprawności działania funkcji validate
            UTEST86, // Sprawdzanie poprawności działania funkcji validate
            UTEST87, // Sprawdzanie poprawności działania funkcji validate
            UTEST88, // Sprawdzanie poprawności działania funkcji validate
            UTEST89, // Sprawdzanie poprawności działania funkcji validate
            UTEST90, // Sprawdzanie poprawności działania funkcji validate
            UTEST91, // Sprawdzanie poprawności działania funkcji validate
            UTEST92, // Sprawdzanie poprawności działania funkcji validate
            UTEST93, // Sprawdzanie poprawności działania funkcji validate
            UTEST94, // Sprawdzanie poprawności działania funkcji validate
            UTEST95, // Sprawdzanie poprawności działania funkcji validate
            UTEST96, // Sprawdzanie poprawności działania funkcji validate
            UTEST97, // Sprawdzanie poprawności działania funkcji validate
            UTEST98, // Sprawdzanie poprawności działania funkcji validate
            UTEST99, // Sprawdzanie poprawności działania funkcji validate
            UTEST100, // Sprawdzanie poprawności działania funkcji validate
            UTEST101, // Sprawdzanie poprawności działania funkcji validate
            UTEST102, // Sprawdzanie poprawności działania funkcji validate
            UTEST103, // Sprawdzanie poprawności działania funkcji validate
            UTEST104, // Sprawdzanie poprawności działania funkcji validate
            UTEST105, // Sprawdzanie poprawności działania funkcji validate
            UTEST106, // Sprawdzanie poprawności działania funkcji validate
            UTEST107, // Sprawdzanie poprawności działania funkcji validate
            UTEST108, // Sprawdzanie poprawności działania funkcji validate
            UTEST109, // Sprawdzanie poprawności działania funkcji validate
            UTEST110, // Sprawdzanie poprawności działania funkcji validate
            UTEST111, // Sprawdzanie poprawności działania funkcji validate
            UTEST112, // Sprawdzanie poprawności działania funkcji validate
            UTEST113, // Sprawdzanie poprawności działania funkcji validate
            UTEST114, // Sprawdzanie poprawności działania funkcji validate
            UTEST115, // Sprawdzanie poprawności działania funkcji validate
            UTEST116, // Sprawdzanie poprawności działania funkcji validate
            UTEST117, // Sprawdzanie poprawności działania funkcji validate
            UTEST118, // Sprawdzanie poprawności działania funkcji validate
            UTEST119, // Sprawdzanie poprawności działania funkcji validate
            UTEST120, // Sprawdzanie poprawności działania funkcji validate
            UTEST121, // Sprawdzanie poprawności działania funkcji validate
            UTEST122, // Sprawdzanie poprawności działania funkcji validate
            UTEST123, // Sprawdzanie poprawności działania funkcji validate
            UTEST124, // Sprawdzanie poprawności działania funkcji validate
            UTEST125, // Sprawdzanie poprawności działania funkcji validate
            UTEST126, // Sprawdzanie poprawności działania funkcji validate
            UTEST127, // Sprawdzanie poprawności działania funkcji validate
            UTEST128, // Sprawdzanie poprawności działania funkcji validate
            UTEST129, // Sprawdzanie poprawności działania funkcji validate
            UTEST130, // Sprawdzanie poprawności działania funkcji validate
            UTEST131, // Sprawdzanie poprawności działania funkcji validate
            UTEST132, // Sprawdzanie poprawności działania funkcji validate
            UTEST133, // Sprawdzanie poprawności działania funkcji validate
            UTEST134, // Sprawdzanie poprawności działania funkcji validate
            UTEST135, // Sprawdzanie poprawności działania funkcji validate
            UTEST136, // Sprawdzanie poprawności działania funkcji validate
            UTEST137, // Sprawdzanie poprawności działania funkcji validate
            UTEST138, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST139, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST140, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST141, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST142, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST143, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST144, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST145, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST146, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 427 bajtów
            UTEST147, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
            UTEST148, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
            UTEST149, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
            UTEST150, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 428 bajtów
            UTEST151, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 364 bajtów
            UTEST152, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
            UTEST153, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
            UTEST154, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
            UTEST155, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 365 bajtów
            UTEST156, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
            UTEST157, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
            UTEST158, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
            UTEST159, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
            UTEST160, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
            UTEST161, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
            UTEST162, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 15 bajtów
            UTEST163, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
            UTEST164, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 16 bajtów
            UTEST165, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów
            UTEST166, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 456 bajtów
            UTEST167, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów
            UTEST168, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 24 bajtów
            UTEST169, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST170, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST171, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST172, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST173, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
            UTEST174, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
            UTEST175, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 6 bajtów
            UTEST176, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 7 bajtów
            UTEST177, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów
            UTEST178, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 4 bajtów
            UTEST179, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 3 bajtów
            UTEST180, // Sprawdzanie poprawności działania funkcji add - limit sterty ustawiony na 1 bajtów
            UTEST181, // Sprawdzanie poprawności działania funkcji add
            UTEST182, // Sprawdzanie poprawności działania funkcji add
            UTEST183, // Sprawdzanie poprawności działania funkcji add
            UTEST184, // Sprawdzanie poprawności działania funkcji add
            UTEST185, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST186, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST187, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST188, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST189, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST190, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST191, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST192, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST193, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST194, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST195, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów
            UTEST196, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 327 bajtów
            UTEST197, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 450 bajtów
            UTEST198, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
            UTEST199, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
            UTEST200, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 451 bajtów
            UTEST201, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST202, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST203, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
            UTEST204, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST205, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
            UTEST206, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST207, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
            UTEST208, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
            UTEST209, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST210, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 25 bajtów
            UTEST211, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 24 bajtów
            UTEST212, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
            UTEST213, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST214, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST215, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
            UTEST216, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
            UTEST217, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 6 bajtów
            UTEST218, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 7 bajtów
            UTEST219, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 1 bajtów
            UTEST220, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 2 bajtów
            UTEST221, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 3 bajtów
            UTEST222, // Sprawdzanie poprawności działania funkcji subtract - limit sterty ustawiony na 4 bajtów
            UTEST223, // Sprawdzanie poprawności działania funkcji subtract
            UTEST224, // Sprawdzanie poprawności działania funkcji subtract
            UTEST225, // Sprawdzanie poprawności działania funkcji subtract
            UTEST226, // Sprawdzanie poprawności działania funkcji subtract
            UTEST227, // Sprawdzanie poprawności działania funkcji compare
            UTEST228, // Sprawdzanie poprawności działania funkcji compare
            UTEST229, // Sprawdzanie poprawności działania funkcji compare
            UTEST230, // Sprawdzanie poprawności działania funkcji compare
            UTEST231, // Sprawdzanie poprawności działania funkcji compare
            UTEST232, // Sprawdzanie poprawności działania funkcji compare
            UTEST233, // Sprawdzanie poprawności działania funkcji compare
            UTEST234, // Sprawdzanie poprawności działania funkcji compare
            UTEST235, // Sprawdzanie poprawności działania funkcji compare
            UTEST236, // Sprawdzanie poprawności działania funkcji compare
            UTEST237, // Sprawdzanie poprawności działania funkcji compare
            UTEST238, // Sprawdzanie poprawności działania funkcji compare
            UTEST239, // Sprawdzanie poprawności działania funkcji compare
            UTEST240, // Sprawdzanie poprawności działania funkcji compare
            UTEST241, // Sprawdzanie poprawności działania funkcji compare
            UTEST242, // Sprawdzanie poprawności działania funkcji compare
            UTEST243, // Sprawdzanie poprawności działania funkcji compare
            UTEST244, // Sprawdzanie poprawności działania funkcji compare
            UTEST245, // Sprawdzanie poprawności działania funkcji compare
            UTEST246, // Sprawdzanie poprawności działania funkcji compare
            UTEST247, // Sprawdzanie poprawności działania funkcji compare
            NULL
        };

        for (int idx = 0; pfcn[idx] != NULL && !test_get_session_termination_flag(); idx++)
        {
            if (selected_test == -1 || selected_test == idx + 1)
                pfcn[idx]();

            // limit niezaliczonych testów, po jakim testy jednostkowe zostaną przerwane
            if (test_session_get_fail_count() >= 1000)
                test_terminate_session();
        }


        test_title("RLDebug :: Analiza wycieku zasobów");
        // sprawdź wycieki pamięci
        int leaks_detected = rldebug_show_leaked_resources(1);
        test_set_session_leaks(leaks_detected);

        // poinformuj serwer Mrówka o wyniku testu - podsumowanie
        test_title("Podsumowanie");
        if (selected_test == -1)
            test_summary(247); // wszystkie testy muszą zakończyć się sukcesem
        else
            test_summary(1); // tylko jeden (selected_test) test musi zakończyć się  sukcesem
        return EXIT_SUCCESS;
    }
    

    if (run_mode == rm_main_test)
    {
        test_title("Testy funkcji main()");

        void (*pfcn[])(int, char**, char**) =
        { 
            MTEST1, // Reakcja na brak pamięci - limit pamięci ustawiony na 0 bajtów
            MTEST2, // Reakcja na brak pamięci - limit pamięci ustawiony na 201 bajtów
            MTEST3, // Reakcja na brak pamięci - limit pamięci ustawiony na 402 bajtów
            MTEST4, // Reakcja na brak pamięci - limit pamięci ustawiony na 414 bajtów
            NULL
        };

        for (volatile int idx = 0; pfcn[idx] != NULL && !test_get_session_termination_flag(); idx++)
        {
            if (selected_test == -1 || selected_test == idx + 1)
                pfcn[idx](vargc, vargv, venvp);

            // limit niezaliczonych testów, po jakim testy jednostkowe zostaną przerwane
            if (test_session_get_fail_count() >= 1000)
                test_terminate_session();
        }


        test_title("RLDebug :: Analiza wycieku zasobów");
        // sprawdź wycieki pamięci
        int leaks_detected = rldebug_show_leaked_resources(1);
        test_set_session_leaks(leaks_detected);

        // poinformuj serwer Mrówka o wyniku testu - podsumowanie
        test_title("Podsumowanie");
        if (selected_test == -1)
            test_summary(4); // wszystkie testy muszą zakończyć się sukcesem
        else
            test_summary(1); // tylko jeden (selected_test) test musi zakończyć się  sukcesem

        return EXIT_SUCCESS;
    }

    printf("*** Nieznana wartość RunMode: %d", (int)run_mode);
    abort();
}