console.sw.multi.approved.txt 591 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447
  1. Filters: ~[!nonportable]~[!benchmark]~[approvals] *
  2. Randomness seeded to: 1
  3. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  4. <exe-name> is a Catch2 v<version> host application.
  5. Run with -? for options
  6. -------------------------------------------------------------------------------
  7. # A test name that starts with a #
  8. -------------------------------------------------------------------------------
  9. Misc.tests.cpp:<line number>
  10. ...............................................................................
  11. Misc.tests.cpp:<line number>: PASSED:
  12. with message:
  13. yay
  14. -------------------------------------------------------------------------------
  15. #1027: Bitfields can be captured
  16. -------------------------------------------------------------------------------
  17. Compilation.tests.cpp:<line number>
  18. ...............................................................................
  19. Compilation.tests.cpp:<line number>: PASSED:
  20. REQUIRE( y.v == 0 )
  21. with expansion:
  22. 0 == 0
  23. Compilation.tests.cpp:<line number>: PASSED:
  24. REQUIRE( 0 == y.v )
  25. with expansion:
  26. 0 == 0
  27. -------------------------------------------------------------------------------
  28. #1147
  29. -------------------------------------------------------------------------------
  30. Compilation.tests.cpp:<line number>
  31. ...............................................................................
  32. Compilation.tests.cpp:<line number>: PASSED:
  33. REQUIRE( t1 == t2 )
  34. with expansion:
  35. {?} == {?}
  36. Compilation.tests.cpp:<line number>: PASSED:
  37. REQUIRE( t1 != t2 )
  38. with expansion:
  39. {?} != {?}
  40. Compilation.tests.cpp:<line number>: PASSED:
  41. REQUIRE( t1 < t2 )
  42. with expansion:
  43. {?} < {?}
  44. Compilation.tests.cpp:<line number>: PASSED:
  45. REQUIRE( t1 > t2 )
  46. with expansion:
  47. {?} > {?}
  48. Compilation.tests.cpp:<line number>: PASSED:
  49. REQUIRE( t1 <= t2 )
  50. with expansion:
  51. {?} <= {?}
  52. Compilation.tests.cpp:<line number>: PASSED:
  53. REQUIRE( t1 >= t2 )
  54. with expansion:
  55. {?} >= {?}
  56. -------------------------------------------------------------------------------
  57. #1175 - Hidden Test
  58. -------------------------------------------------------------------------------
  59. Misc.tests.cpp:<line number>
  60. ...............................................................................
  61. Misc.tests.cpp:<line number>: PASSED:
  62. -------------------------------------------------------------------------------
  63. #1238
  64. -------------------------------------------------------------------------------
  65. Compilation.tests.cpp:<line number>
  66. ...............................................................................
  67. Compilation.tests.cpp:<line number>: PASSED:
  68. REQUIRE( std::memcmp(uarr, "123", sizeof(uarr)) == 0 )
  69. with expansion:
  70. 0 == 0
  71. with messages:
  72. uarr := "123"
  73. sarr := "456"
  74. Compilation.tests.cpp:<line number>: PASSED:
  75. REQUIRE( std::memcmp(sarr, "456", sizeof(sarr)) == 0 )
  76. with expansion:
  77. 0 == 0
  78. with messages:
  79. uarr := "123"
  80. sarr := "456"
  81. -------------------------------------------------------------------------------
  82. #1245
  83. -------------------------------------------------------------------------------
  84. Compilation.tests.cpp:<line number>
  85. ...............................................................................
  86. Compilation.tests.cpp:<line number>: PASSED:
  87. -------------------------------------------------------------------------------
  88. #1319: Sections can have description (even if it is not saved
  89. SectionName
  90. -------------------------------------------------------------------------------
  91. Compilation.tests.cpp:<line number>
  92. ...............................................................................
  93. Compilation.tests.cpp:<line number>: PASSED:
  94. -------------------------------------------------------------------------------
  95. #1403
  96. -------------------------------------------------------------------------------
  97. Compilation.tests.cpp:<line number>
  98. ...............................................................................
  99. Compilation.tests.cpp:<line number>: PASSED:
  100. REQUIRE( h1 == h2 )
  101. with expansion:
  102. [1403 helper] == [1403 helper]
  103. -------------------------------------------------------------------------------
  104. #1455 - INFO and WARN can start with a linebreak
  105. -------------------------------------------------------------------------------
  106. Message.tests.cpp:<line number>
  107. ...............................................................................
  108. Message.tests.cpp:<line number>: warning:
  109. This info message starts with a linebreak
  110. This warning message starts with a linebreak
  111. No assertions in test case '#1455 - INFO and WARN can start with a linebreak'
  112. -------------------------------------------------------------------------------
  113. #1514: stderr/stdout is not captured in tests aborted by an exception
  114. -------------------------------------------------------------------------------
  115. Tricky.tests.cpp:<line number>
  116. ...............................................................................
  117. Tricky.tests.cpp:<line number>: FAILED:
  118. explicitly with message:
  119. 1514
  120. -------------------------------------------------------------------------------
  121. #1548
  122. -------------------------------------------------------------------------------
  123. Compilation.tests.cpp:<line number>
  124. ...............................................................................
  125. Compilation.tests.cpp:<line number>: PASSED:
  126. REQUIRE( std::is_same<TypeList<int>, TypeList<int>>::value )
  127. with expansion:
  128. true
  129. -------------------------------------------------------------------------------
  130. #1905 -- test spec parser properly clears internal state between compound tests
  131. -------------------------------------------------------------------------------
  132. CmdLine.tests.cpp:<line number>
  133. ...............................................................................
  134. CmdLine.tests.cpp:<line number>: PASSED:
  135. REQUIRE( spec.matches(*fakeTestCase("spec . char")) )
  136. with expansion:
  137. true
  138. CmdLine.tests.cpp:<line number>: PASSED:
  139. REQUIRE( spec.matches(*fakeTestCase("spec , char")) )
  140. with expansion:
  141. true
  142. CmdLine.tests.cpp:<line number>: PASSED:
  143. REQUIRE_FALSE( spec.matches(*fakeTestCase(R"(spec \, char)")) )
  144. with expansion:
  145. !false
  146. -------------------------------------------------------------------------------
  147. #1912 -- test spec parser handles escaping
  148. Various parentheses
  149. -------------------------------------------------------------------------------
  150. CmdLine.tests.cpp:<line number>
  151. ...............................................................................
  152. CmdLine.tests.cpp:<line number>: PASSED:
  153. REQUIRE( spec.matches(*fakeTestCase(R"(spec {a} char)")) )
  154. with expansion:
  155. true
  156. CmdLine.tests.cpp:<line number>: PASSED:
  157. REQUIRE( spec.matches(*fakeTestCase(R"(spec [a] char)")) )
  158. with expansion:
  159. true
  160. CmdLine.tests.cpp:<line number>: PASSED:
  161. REQUIRE_FALSE( spec.matches(*fakeTestCase("differs but has similar tag", "[a]")) )
  162. with expansion:
  163. !false
  164. -------------------------------------------------------------------------------
  165. #1912 -- test spec parser handles escaping
  166. backslash in test name
  167. -------------------------------------------------------------------------------
  168. CmdLine.tests.cpp:<line number>
  169. ...............................................................................
  170. CmdLine.tests.cpp:<line number>: PASSED:
  171. REQUIRE( spec.matches(*fakeTestCase(R"(spec \ char)")) )
  172. with expansion:
  173. true
  174. -------------------------------------------------------------------------------
  175. #1913 - GENERATE inside a for loop should not keep recreating the generator
  176. -------------------------------------------------------------------------------
  177. Generators.tests.cpp:<line number>
  178. ...............................................................................
  179. Generators.tests.cpp:<line number>: PASSED:
  180. REQUIRE( counter < 7 )
  181. with expansion:
  182. 3 < 7
  183. -------------------------------------------------------------------------------
  184. #1913 - GENERATE inside a for loop should not keep recreating the generator
  185. -------------------------------------------------------------------------------
  186. Generators.tests.cpp:<line number>
  187. ...............................................................................
  188. Generators.tests.cpp:<line number>: PASSED:
  189. REQUIRE( counter < 7 )
  190. with expansion:
  191. 6 < 7
  192. -------------------------------------------------------------------------------
  193. #1913 - GENERATEs can share a line
  194. -------------------------------------------------------------------------------
  195. Generators.tests.cpp:<line number>
  196. ...............................................................................
  197. Generators.tests.cpp:<line number>: PASSED:
  198. REQUIRE( i != j )
  199. with expansion:
  200. 1 != 3
  201. -------------------------------------------------------------------------------
  202. #1913 - GENERATEs can share a line
  203. -------------------------------------------------------------------------------
  204. Generators.tests.cpp:<line number>
  205. ...............................................................................
  206. Generators.tests.cpp:<line number>: PASSED:
  207. REQUIRE( i != j )
  208. with expansion:
  209. 1 != 4
  210. -------------------------------------------------------------------------------
  211. #1913 - GENERATEs can share a line
  212. -------------------------------------------------------------------------------
  213. Generators.tests.cpp:<line number>
  214. ...............................................................................
  215. Generators.tests.cpp:<line number>: PASSED:
  216. REQUIRE( i != j )
  217. with expansion:
  218. 2 != 3
  219. -------------------------------------------------------------------------------
  220. #1913 - GENERATEs can share a line
  221. -------------------------------------------------------------------------------
  222. Generators.tests.cpp:<line number>
  223. ...............................................................................
  224. Generators.tests.cpp:<line number>: PASSED:
  225. REQUIRE( i != j )
  226. with expansion:
  227. 2 != 4
  228. -------------------------------------------------------------------------------
  229. #1938 - GENERATE after a section
  230. A
  231. -------------------------------------------------------------------------------
  232. PartTracker.tests.cpp:<line number>
  233. ...............................................................................
  234. PartTracker.tests.cpp:<line number>: PASSED:
  235. with message:
  236. A
  237. -------------------------------------------------------------------------------
  238. #1938 - GENERATE after a section
  239. B
  240. -------------------------------------------------------------------------------
  241. PartTracker.tests.cpp:<line number>
  242. ...............................................................................
  243. PartTracker.tests.cpp:<line number>: PASSED:
  244. REQUIRE( m )
  245. with expansion:
  246. 1
  247. -------------------------------------------------------------------------------
  248. #1938 - GENERATE after a section
  249. B
  250. -------------------------------------------------------------------------------
  251. PartTracker.tests.cpp:<line number>
  252. ...............................................................................
  253. PartTracker.tests.cpp:<line number>: PASSED:
  254. REQUIRE( m )
  255. with expansion:
  256. 2
  257. -------------------------------------------------------------------------------
  258. #1938 - GENERATE after a section
  259. B
  260. -------------------------------------------------------------------------------
  261. PartTracker.tests.cpp:<line number>
  262. ...............................................................................
  263. PartTracker.tests.cpp:<line number>: PASSED:
  264. REQUIRE( m )
  265. with expansion:
  266. 3
  267. -------------------------------------------------------------------------------
  268. #1938 - Section followed by flat generate
  269. A
  270. -------------------------------------------------------------------------------
  271. PartTracker.tests.cpp:<line number>
  272. ...............................................................................
  273. PartTracker.tests.cpp:<line number>: PASSED:
  274. REQUIRE( 1 )
  275. -------------------------------------------------------------------------------
  276. #1938 - Section followed by flat generate
  277. -------------------------------------------------------------------------------
  278. PartTracker.tests.cpp:<line number>
  279. ...............................................................................
  280. PartTracker.tests.cpp:<line number>: PASSED:
  281. REQUIRE( m )
  282. with expansion:
  283. 2
  284. -------------------------------------------------------------------------------
  285. #1938 - Section followed by flat generate
  286. -------------------------------------------------------------------------------
  287. PartTracker.tests.cpp:<line number>
  288. ...............................................................................
  289. PartTracker.tests.cpp:<line number>: PASSED:
  290. REQUIRE( m )
  291. with expansion:
  292. 3
  293. -------------------------------------------------------------------------------
  294. #1938 - flat generate
  295. -------------------------------------------------------------------------------
  296. PartTracker.tests.cpp:<line number>
  297. ...............................................................................
  298. PartTracker.tests.cpp:<line number>: PASSED:
  299. REQUIRE( m )
  300. with expansion:
  301. 1
  302. -------------------------------------------------------------------------------
  303. #1938 - flat generate
  304. -------------------------------------------------------------------------------
  305. PartTracker.tests.cpp:<line number>
  306. ...............................................................................
  307. PartTracker.tests.cpp:<line number>: PASSED:
  308. REQUIRE( m )
  309. with expansion:
  310. 2
  311. -------------------------------------------------------------------------------
  312. #1938 - flat generate
  313. -------------------------------------------------------------------------------
  314. PartTracker.tests.cpp:<line number>
  315. ...............................................................................
  316. PartTracker.tests.cpp:<line number>: PASSED:
  317. REQUIRE( m )
  318. with expansion:
  319. 3
  320. -------------------------------------------------------------------------------
  321. #1938 - mixed sections and generates
  322. A
  323. -------------------------------------------------------------------------------
  324. PartTracker.tests.cpp:<line number>
  325. ...............................................................................
  326. PartTracker.tests.cpp:<line number>: PASSED:
  327. with message:
  328. A
  329. -------------------------------------------------------------------------------
  330. #1938 - mixed sections and generates
  331. -------------------------------------------------------------------------------
  332. PartTracker.tests.cpp:<line number>
  333. ...............................................................................
  334. PartTracker.tests.cpp:<line number>: PASSED:
  335. with messages:
  336. i := 1
  337. j := 3
  338. k := 5
  339. -------------------------------------------------------------------------------
  340. #1938 - mixed sections and generates
  341. B
  342. -------------------------------------------------------------------------------
  343. PartTracker.tests.cpp:<line number>
  344. ...............................................................................
  345. PartTracker.tests.cpp:<line number>: PASSED:
  346. with message:
  347. B
  348. -------------------------------------------------------------------------------
  349. #1938 - mixed sections and generates
  350. -------------------------------------------------------------------------------
  351. PartTracker.tests.cpp:<line number>
  352. ...............................................................................
  353. PartTracker.tests.cpp:<line number>: PASSED:
  354. with messages:
  355. i := 1
  356. j := 3
  357. k := 6
  358. -------------------------------------------------------------------------------
  359. #1938 - mixed sections and generates
  360. B
  361. -------------------------------------------------------------------------------
  362. PartTracker.tests.cpp:<line number>
  363. ...............................................................................
  364. PartTracker.tests.cpp:<line number>: PASSED:
  365. with message:
  366. B
  367. -------------------------------------------------------------------------------
  368. #1938 - mixed sections and generates
  369. -------------------------------------------------------------------------------
  370. PartTracker.tests.cpp:<line number>
  371. ...............................................................................
  372. PartTracker.tests.cpp:<line number>: PASSED:
  373. with messages:
  374. i := 1
  375. j := 4
  376. k := 5
  377. -------------------------------------------------------------------------------
  378. #1938 - mixed sections and generates
  379. -------------------------------------------------------------------------------
  380. PartTracker.tests.cpp:<line number>
  381. ...............................................................................
  382. PartTracker.tests.cpp:<line number>: PASSED:
  383. with messages:
  384. i := 1
  385. j := 4
  386. k := 6
  387. -------------------------------------------------------------------------------
  388. #1938 - mixed sections and generates
  389. A
  390. -------------------------------------------------------------------------------
  391. PartTracker.tests.cpp:<line number>
  392. ...............................................................................
  393. PartTracker.tests.cpp:<line number>: PASSED:
  394. with message:
  395. A
  396. -------------------------------------------------------------------------------
  397. #1938 - mixed sections and generates
  398. -------------------------------------------------------------------------------
  399. PartTracker.tests.cpp:<line number>
  400. ...............................................................................
  401. PartTracker.tests.cpp:<line number>: PASSED:
  402. with messages:
  403. i := 2
  404. j := 3
  405. k := 5
  406. -------------------------------------------------------------------------------
  407. #1938 - mixed sections and generates
  408. B
  409. -------------------------------------------------------------------------------
  410. PartTracker.tests.cpp:<line number>
  411. ...............................................................................
  412. PartTracker.tests.cpp:<line number>: PASSED:
  413. with message:
  414. B
  415. -------------------------------------------------------------------------------
  416. #1938 - mixed sections and generates
  417. -------------------------------------------------------------------------------
  418. PartTracker.tests.cpp:<line number>
  419. ...............................................................................
  420. PartTracker.tests.cpp:<line number>: PASSED:
  421. with messages:
  422. i := 2
  423. j := 3
  424. k := 6
  425. -------------------------------------------------------------------------------
  426. #1938 - mixed sections and generates
  427. B
  428. -------------------------------------------------------------------------------
  429. PartTracker.tests.cpp:<line number>
  430. ...............................................................................
  431. PartTracker.tests.cpp:<line number>: PASSED:
  432. with message:
  433. B
  434. -------------------------------------------------------------------------------
  435. #1938 - mixed sections and generates
  436. -------------------------------------------------------------------------------
  437. PartTracker.tests.cpp:<line number>
  438. ...............................................................................
  439. PartTracker.tests.cpp:<line number>: PASSED:
  440. with messages:
  441. i := 2
  442. j := 4
  443. k := 5
  444. -------------------------------------------------------------------------------
  445. #1938 - mixed sections and generates
  446. -------------------------------------------------------------------------------
  447. PartTracker.tests.cpp:<line number>
  448. ...............................................................................
  449. PartTracker.tests.cpp:<line number>: PASSED:
  450. with messages:
  451. i := 2
  452. j := 4
  453. k := 6
  454. -------------------------------------------------------------------------------
  455. #1938 - nested generate
  456. -------------------------------------------------------------------------------
  457. PartTracker.tests.cpp:<line number>
  458. ...............................................................................
  459. PartTracker.tests.cpp:<line number>: PASSED:
  460. REQUIRE( m )
  461. with expansion:
  462. 1
  463. PartTracker.tests.cpp:<line number>: PASSED:
  464. REQUIRE( n )
  465. with expansion:
  466. 1
  467. -------------------------------------------------------------------------------
  468. #1938 - nested generate
  469. -------------------------------------------------------------------------------
  470. PartTracker.tests.cpp:<line number>
  471. ...............................................................................
  472. PartTracker.tests.cpp:<line number>: PASSED:
  473. REQUIRE( m )
  474. with expansion:
  475. 1
  476. PartTracker.tests.cpp:<line number>: PASSED:
  477. REQUIRE( n )
  478. with expansion:
  479. 2
  480. -------------------------------------------------------------------------------
  481. #1938 - nested generate
  482. -------------------------------------------------------------------------------
  483. PartTracker.tests.cpp:<line number>
  484. ...............................................................................
  485. PartTracker.tests.cpp:<line number>: PASSED:
  486. REQUIRE( m )
  487. with expansion:
  488. 1
  489. PartTracker.tests.cpp:<line number>: PASSED:
  490. REQUIRE( n )
  491. with expansion:
  492. 3
  493. -------------------------------------------------------------------------------
  494. #1938 - nested generate
  495. -------------------------------------------------------------------------------
  496. PartTracker.tests.cpp:<line number>
  497. ...............................................................................
  498. PartTracker.tests.cpp:<line number>: PASSED:
  499. REQUIRE( m )
  500. with expansion:
  501. 2
  502. PartTracker.tests.cpp:<line number>: PASSED:
  503. REQUIRE( n )
  504. with expansion:
  505. 1
  506. -------------------------------------------------------------------------------
  507. #1938 - nested generate
  508. -------------------------------------------------------------------------------
  509. PartTracker.tests.cpp:<line number>
  510. ...............................................................................
  511. PartTracker.tests.cpp:<line number>: PASSED:
  512. REQUIRE( m )
  513. with expansion:
  514. 2
  515. PartTracker.tests.cpp:<line number>: PASSED:
  516. REQUIRE( n )
  517. with expansion:
  518. 2
  519. -------------------------------------------------------------------------------
  520. #1938 - nested generate
  521. -------------------------------------------------------------------------------
  522. PartTracker.tests.cpp:<line number>
  523. ...............................................................................
  524. PartTracker.tests.cpp:<line number>: PASSED:
  525. REQUIRE( m )
  526. with expansion:
  527. 2
  528. PartTracker.tests.cpp:<line number>: PASSED:
  529. REQUIRE( n )
  530. with expansion:
  531. 3
  532. -------------------------------------------------------------------------------
  533. #1938 - nested generate
  534. -------------------------------------------------------------------------------
  535. PartTracker.tests.cpp:<line number>
  536. ...............................................................................
  537. PartTracker.tests.cpp:<line number>: PASSED:
  538. REQUIRE( m )
  539. with expansion:
  540. 3
  541. PartTracker.tests.cpp:<line number>: PASSED:
  542. REQUIRE( n )
  543. with expansion:
  544. 1
  545. -------------------------------------------------------------------------------
  546. #1938 - nested generate
  547. -------------------------------------------------------------------------------
  548. PartTracker.tests.cpp:<line number>
  549. ...............................................................................
  550. PartTracker.tests.cpp:<line number>: PASSED:
  551. REQUIRE( m )
  552. with expansion:
  553. 3
  554. PartTracker.tests.cpp:<line number>: PASSED:
  555. REQUIRE( n )
  556. with expansion:
  557. 2
  558. -------------------------------------------------------------------------------
  559. #1938 - nested generate
  560. -------------------------------------------------------------------------------
  561. PartTracker.tests.cpp:<line number>
  562. ...............................................................................
  563. PartTracker.tests.cpp:<line number>: PASSED:
  564. REQUIRE( m )
  565. with expansion:
  566. 3
  567. PartTracker.tests.cpp:<line number>: PASSED:
  568. REQUIRE( n )
  569. with expansion:
  570. 3
  571. -------------------------------------------------------------------------------
  572. #1954 - 7 arg template test case sig compiles - 1, 1, 1, 1, 1, 0, 0
  573. -------------------------------------------------------------------------------
  574. Misc.tests.cpp:<line number>
  575. ...............................................................................
  576. Misc.tests.cpp:<line number>: PASSED:
  577. -------------------------------------------------------------------------------
  578. #1954 - 7 arg template test case sig compiles - 5, 1, 1, 1, 1, 0, 0
  579. -------------------------------------------------------------------------------
  580. Misc.tests.cpp:<line number>
  581. ...............................................................................
  582. Misc.tests.cpp:<line number>: PASSED:
  583. -------------------------------------------------------------------------------
  584. #1954 - 7 arg template test case sig compiles - 5, 3, 1, 1, 1, 0, 0
  585. -------------------------------------------------------------------------------
  586. Misc.tests.cpp:<line number>
  587. ...............................................................................
  588. Misc.tests.cpp:<line number>: PASSED:
  589. -------------------------------------------------------------------------------
  590. #2152 - ULP checks between differently signed values were wrong - double
  591. -------------------------------------------------------------------------------
  592. Matchers.tests.cpp:<line number>
  593. ...............................................................................
  594. Matchers.tests.cpp:<line number>: PASSED:
  595. CHECK_THAT( smallest_non_zero, WithinULP( -smallest_non_zero, 2 ) )
  596. with expansion:
  597. 0.0 is within 2 ULPs of -4.9406564584124654e-324 ([-1.4821969375237396e-323,
  598. 4.9406564584124654e-324])
  599. Matchers.tests.cpp:<line number>: PASSED:
  600. CHECK_THAT( smallest_non_zero, !WithinULP( -smallest_non_zero, 1 ) )
  601. with expansion:
  602. 0.0 not is within 1 ULPs of -4.9406564584124654e-324 ([-9.8813129168249309e-
  603. 324, -0.0000000000000000e+00])
  604. -------------------------------------------------------------------------------
  605. #2152 - ULP checks between differently signed values were wrong - float
  606. -------------------------------------------------------------------------------
  607. Matchers.tests.cpp:<line number>
  608. ...............................................................................
  609. Matchers.tests.cpp:<line number>: PASSED:
  610. CHECK_THAT( smallest_non_zero, WithinULP( -smallest_non_zero, 2 ) )
  611. with expansion:
  612. 0.0f is within 2 ULPs of -1.40129846e-45f ([-4.20389539e-45, 1.40129846e-45])
  613. Matchers.tests.cpp:<line number>: PASSED:
  614. CHECK_THAT( smallest_non_zero, !WithinULP( -smallest_non_zero, 1 ) )
  615. with expansion:
  616. 0.0f not is within 1 ULPs of -1.40129846e-45f ([-2.80259693e-45, -0.
  617. 00000000e+00])
  618. -------------------------------------------------------------------------------
  619. #748 - captures with unexpected exceptions
  620. outside assertions
  621. -------------------------------------------------------------------------------
  622. Exception.tests.cpp:<line number>
  623. ...............................................................................
  624. Exception.tests.cpp:<line number>: FAILED:
  625. due to unexpected exception with messages:
  626. answer := 42
  627. expected exception
  628. -------------------------------------------------------------------------------
  629. #748 - captures with unexpected exceptions
  630. inside REQUIRE_NOTHROW
  631. -------------------------------------------------------------------------------
  632. Exception.tests.cpp:<line number>
  633. ...............................................................................
  634. Exception.tests.cpp:<line number>: FAILED:
  635. REQUIRE_NOTHROW( thisThrows() )
  636. due to unexpected exception with messages:
  637. answer := 42
  638. expected exception
  639. -------------------------------------------------------------------------------
  640. #748 - captures with unexpected exceptions
  641. inside REQUIRE_THROWS
  642. -------------------------------------------------------------------------------
  643. Exception.tests.cpp:<line number>
  644. ...............................................................................
  645. Exception.tests.cpp:<line number>: PASSED:
  646. REQUIRE_THROWS( thisThrows() )
  647. with message:
  648. answer := 42
  649. -------------------------------------------------------------------------------
  650. #809
  651. -------------------------------------------------------------------------------
  652. Compilation.tests.cpp:<line number>
  653. ...............................................................................
  654. Compilation.tests.cpp:<line number>: PASSED:
  655. REQUIRE( 42 == f )
  656. with expansion:
  657. 42 == {?}
  658. -------------------------------------------------------------------------------
  659. #833
  660. -------------------------------------------------------------------------------
  661. Compilation.tests.cpp:<line number>
  662. ...............................................................................
  663. Compilation.tests.cpp:<line number>: PASSED:
  664. REQUIRE( a == t )
  665. with expansion:
  666. 3 == 3
  667. Compilation.tests.cpp:<line number>: PASSED:
  668. CHECK( a == t )
  669. with expansion:
  670. 3 == 3
  671. Compilation.tests.cpp:<line number>: PASSED:
  672. REQUIRE_THROWS( throws_int(true) )
  673. Compilation.tests.cpp:<line number>: PASSED:
  674. CHECK_THROWS_AS( throws_int(true), int )
  675. Compilation.tests.cpp:<line number>: PASSED:
  676. REQUIRE_NOTHROW( throws_int(false) )
  677. Compilation.tests.cpp:<line number>: PASSED:
  678. REQUIRE_THAT( "aaa", Catch::Matchers::EndsWith("aaa") )
  679. with expansion:
  680. "aaa" ends with: "aaa"
  681. Compilation.tests.cpp:<line number>: PASSED:
  682. REQUIRE( templated_tests<int>(3) )
  683. with expansion:
  684. true
  685. -------------------------------------------------------------------------------
  686. #835 -- errno should not be touched by Catch2
  687. -------------------------------------------------------------------------------
  688. Misc.tests.cpp:<line number>
  689. ...............................................................................
  690. Misc.tests.cpp:<line number>: FAILED:
  691. CHECK( f() == 0 )
  692. with expansion:
  693. 1 == 0
  694. Misc.tests.cpp:<line number>: PASSED:
  695. REQUIRE( errno_after == 1 )
  696. with expansion:
  697. 1 == 1
  698. -------------------------------------------------------------------------------
  699. #872
  700. -------------------------------------------------------------------------------
  701. Compilation.tests.cpp:<line number>
  702. ...............................................................................
  703. Compilation.tests.cpp:<line number>: PASSED:
  704. REQUIRE( x == 4 )
  705. with expansion:
  706. {?} == 4
  707. with message:
  708. dummy := 0
  709. -------------------------------------------------------------------------------
  710. #961 -- Dynamically created sections should all be reported
  711. Looped section 0
  712. -------------------------------------------------------------------------------
  713. Misc.tests.cpp:<line number>
  714. ...............................................................................
  715. Misc.tests.cpp:<line number>: PASSED:
  716. with message:
  717. Everything is OK
  718. -------------------------------------------------------------------------------
  719. #961 -- Dynamically created sections should all be reported
  720. Looped section 1
  721. -------------------------------------------------------------------------------
  722. Misc.tests.cpp:<line number>
  723. ...............................................................................
  724. Misc.tests.cpp:<line number>: PASSED:
  725. with message:
  726. Everything is OK
  727. -------------------------------------------------------------------------------
  728. #961 -- Dynamically created sections should all be reported
  729. Looped section 2
  730. -------------------------------------------------------------------------------
  731. Misc.tests.cpp:<line number>
  732. ...............................................................................
  733. Misc.tests.cpp:<line number>: PASSED:
  734. with message:
  735. Everything is OK
  736. -------------------------------------------------------------------------------
  737. #961 -- Dynamically created sections should all be reported
  738. Looped section 3
  739. -------------------------------------------------------------------------------
  740. Misc.tests.cpp:<line number>
  741. ...............................................................................
  742. Misc.tests.cpp:<line number>: PASSED:
  743. with message:
  744. Everything is OK
  745. -------------------------------------------------------------------------------
  746. #961 -- Dynamically created sections should all be reported
  747. Looped section 4
  748. -------------------------------------------------------------------------------
  749. Misc.tests.cpp:<line number>
  750. ...............................................................................
  751. Misc.tests.cpp:<line number>: PASSED:
  752. with message:
  753. Everything is OK
  754. -------------------------------------------------------------------------------
  755. 'Not' checks that should fail
  756. -------------------------------------------------------------------------------
  757. Condition.tests.cpp:<line number>
  758. ...............................................................................
  759. Condition.tests.cpp:<line number>: FAILED:
  760. CHECK( false != false )
  761. Condition.tests.cpp:<line number>: FAILED:
  762. CHECK( true != true )
  763. Condition.tests.cpp:<line number>: FAILED:
  764. CHECK( !true )
  765. with expansion:
  766. false
  767. Condition.tests.cpp:<line number>: FAILED:
  768. CHECK_FALSE( true )
  769. with expansion:
  770. !true
  771. Condition.tests.cpp:<line number>: FAILED:
  772. CHECK( !trueValue )
  773. with expansion:
  774. false
  775. Condition.tests.cpp:<line number>: FAILED:
  776. CHECK_FALSE( trueValue )
  777. with expansion:
  778. !true
  779. Condition.tests.cpp:<line number>: FAILED:
  780. CHECK( !(1 == 1) )
  781. with expansion:
  782. false
  783. Condition.tests.cpp:<line number>: FAILED:
  784. CHECK_FALSE( 1 == 1 )
  785. -------------------------------------------------------------------------------
  786. 'Not' checks that should succeed
  787. -------------------------------------------------------------------------------
  788. Condition.tests.cpp:<line number>
  789. ...............................................................................
  790. Condition.tests.cpp:<line number>: PASSED:
  791. REQUIRE( false == false )
  792. Condition.tests.cpp:<line number>: PASSED:
  793. REQUIRE( true == true )
  794. Condition.tests.cpp:<line number>: PASSED:
  795. REQUIRE( !false )
  796. with expansion:
  797. true
  798. Condition.tests.cpp:<line number>: PASSED:
  799. REQUIRE_FALSE( false )
  800. with expansion:
  801. !false
  802. Condition.tests.cpp:<line number>: PASSED:
  803. REQUIRE( !falseValue )
  804. with expansion:
  805. true
  806. Condition.tests.cpp:<line number>: PASSED:
  807. REQUIRE_FALSE( falseValue )
  808. with expansion:
  809. !false
  810. Condition.tests.cpp:<line number>: PASSED:
  811. REQUIRE( !(1 == 2) )
  812. with expansion:
  813. true
  814. Condition.tests.cpp:<line number>: PASSED:
  815. REQUIRE_FALSE( 1 == 2 )
  816. -------------------------------------------------------------------------------
  817. (unimplemented) static bools can be evaluated
  818. compare to true
  819. -------------------------------------------------------------------------------
  820. Tricky.tests.cpp:<line number>
  821. ...............................................................................
  822. Tricky.tests.cpp:<line number>: PASSED:
  823. REQUIRE( is_true<true>::value == true )
  824. with expansion:
  825. true == true
  826. Tricky.tests.cpp:<line number>: PASSED:
  827. REQUIRE( true == is_true<true>::value )
  828. with expansion:
  829. true == true
  830. -------------------------------------------------------------------------------
  831. (unimplemented) static bools can be evaluated
  832. compare to false
  833. -------------------------------------------------------------------------------
  834. Tricky.tests.cpp:<line number>
  835. ...............................................................................
  836. Tricky.tests.cpp:<line number>: PASSED:
  837. REQUIRE( is_true<false>::value == false )
  838. with expansion:
  839. false == false
  840. Tricky.tests.cpp:<line number>: PASSED:
  841. REQUIRE( false == is_true<false>::value )
  842. with expansion:
  843. false == false
  844. -------------------------------------------------------------------------------
  845. (unimplemented) static bools can be evaluated
  846. negation
  847. -------------------------------------------------------------------------------
  848. Tricky.tests.cpp:<line number>
  849. ...............................................................................
  850. Tricky.tests.cpp:<line number>: PASSED:
  851. REQUIRE( !is_true<false>::value )
  852. with expansion:
  853. true
  854. -------------------------------------------------------------------------------
  855. (unimplemented) static bools can be evaluated
  856. double negation
  857. -------------------------------------------------------------------------------
  858. Tricky.tests.cpp:<line number>
  859. ...............................................................................
  860. Tricky.tests.cpp:<line number>: PASSED:
  861. REQUIRE( !!is_true<true>::value )
  862. with expansion:
  863. true
  864. -------------------------------------------------------------------------------
  865. (unimplemented) static bools can be evaluated
  866. direct
  867. -------------------------------------------------------------------------------
  868. Tricky.tests.cpp:<line number>
  869. ...............................................................................
  870. Tricky.tests.cpp:<line number>: PASSED:
  871. REQUIRE( is_true<true>::value )
  872. with expansion:
  873. true
  874. Tricky.tests.cpp:<line number>: PASSED:
  875. REQUIRE_FALSE( is_true<false>::value )
  876. with expansion:
  877. !false
  878. -------------------------------------------------------------------------------
  879. 3x3x3 ints
  880. -------------------------------------------------------------------------------
  881. Generators.tests.cpp:<line number>
  882. ...............................................................................
  883. Generators.tests.cpp:<line number>: PASSED:
  884. CHECK( x < y )
  885. with expansion:
  886. 1 < 4
  887. Generators.tests.cpp:<line number>: PASSED:
  888. CHECK( y < z )
  889. with expansion:
  890. 4 < 7
  891. Generators.tests.cpp:<line number>: PASSED:
  892. REQUIRE( x < z )
  893. with expansion:
  894. 1 < 7
  895. -------------------------------------------------------------------------------
  896. 3x3x3 ints
  897. -------------------------------------------------------------------------------
  898. Generators.tests.cpp:<line number>
  899. ...............................................................................
  900. Generators.tests.cpp:<line number>: PASSED:
  901. CHECK( x < y )
  902. with expansion:
  903. 1 < 4
  904. Generators.tests.cpp:<line number>: PASSED:
  905. CHECK( y < z )
  906. with expansion:
  907. 4 < 8
  908. Generators.tests.cpp:<line number>: PASSED:
  909. REQUIRE( x < z )
  910. with expansion:
  911. 1 < 8
  912. -------------------------------------------------------------------------------
  913. 3x3x3 ints
  914. -------------------------------------------------------------------------------
  915. Generators.tests.cpp:<line number>
  916. ...............................................................................
  917. Generators.tests.cpp:<line number>: PASSED:
  918. CHECK( x < y )
  919. with expansion:
  920. 1 < 4
  921. Generators.tests.cpp:<line number>: PASSED:
  922. CHECK( y < z )
  923. with expansion:
  924. 4 < 9
  925. Generators.tests.cpp:<line number>: PASSED:
  926. REQUIRE( x < z )
  927. with expansion:
  928. 1 < 9
  929. -------------------------------------------------------------------------------
  930. 3x3x3 ints
  931. -------------------------------------------------------------------------------
  932. Generators.tests.cpp:<line number>
  933. ...............................................................................
  934. Generators.tests.cpp:<line number>: PASSED:
  935. CHECK( x < y )
  936. with expansion:
  937. 1 < 5
  938. Generators.tests.cpp:<line number>: PASSED:
  939. CHECK( y < z )
  940. with expansion:
  941. 5 < 7
  942. Generators.tests.cpp:<line number>: PASSED:
  943. REQUIRE( x < z )
  944. with expansion:
  945. 1 < 7
  946. -------------------------------------------------------------------------------
  947. 3x3x3 ints
  948. -------------------------------------------------------------------------------
  949. Generators.tests.cpp:<line number>
  950. ...............................................................................
  951. Generators.tests.cpp:<line number>: PASSED:
  952. CHECK( x < y )
  953. with expansion:
  954. 1 < 5
  955. Generators.tests.cpp:<line number>: PASSED:
  956. CHECK( y < z )
  957. with expansion:
  958. 5 < 8
  959. Generators.tests.cpp:<line number>: PASSED:
  960. REQUIRE( x < z )
  961. with expansion:
  962. 1 < 8
  963. -------------------------------------------------------------------------------
  964. 3x3x3 ints
  965. -------------------------------------------------------------------------------
  966. Generators.tests.cpp:<line number>
  967. ...............................................................................
  968. Generators.tests.cpp:<line number>: PASSED:
  969. CHECK( x < y )
  970. with expansion:
  971. 1 < 5
  972. Generators.tests.cpp:<line number>: PASSED:
  973. CHECK( y < z )
  974. with expansion:
  975. 5 < 9
  976. Generators.tests.cpp:<line number>: PASSED:
  977. REQUIRE( x < z )
  978. with expansion:
  979. 1 < 9
  980. -------------------------------------------------------------------------------
  981. 3x3x3 ints
  982. -------------------------------------------------------------------------------
  983. Generators.tests.cpp:<line number>
  984. ...............................................................................
  985. Generators.tests.cpp:<line number>: PASSED:
  986. CHECK( x < y )
  987. with expansion:
  988. 1 < 6
  989. Generators.tests.cpp:<line number>: PASSED:
  990. CHECK( y < z )
  991. with expansion:
  992. 6 < 7
  993. Generators.tests.cpp:<line number>: PASSED:
  994. REQUIRE( x < z )
  995. with expansion:
  996. 1 < 7
  997. -------------------------------------------------------------------------------
  998. 3x3x3 ints
  999. -------------------------------------------------------------------------------
  1000. Generators.tests.cpp:<line number>
  1001. ...............................................................................
  1002. Generators.tests.cpp:<line number>: PASSED:
  1003. CHECK( x < y )
  1004. with expansion:
  1005. 1 < 6
  1006. Generators.tests.cpp:<line number>: PASSED:
  1007. CHECK( y < z )
  1008. with expansion:
  1009. 6 < 8
  1010. Generators.tests.cpp:<line number>: PASSED:
  1011. REQUIRE( x < z )
  1012. with expansion:
  1013. 1 < 8
  1014. -------------------------------------------------------------------------------
  1015. 3x3x3 ints
  1016. -------------------------------------------------------------------------------
  1017. Generators.tests.cpp:<line number>
  1018. ...............................................................................
  1019. Generators.tests.cpp:<line number>: PASSED:
  1020. CHECK( x < y )
  1021. with expansion:
  1022. 1 < 6
  1023. Generators.tests.cpp:<line number>: PASSED:
  1024. CHECK( y < z )
  1025. with expansion:
  1026. 6 < 9
  1027. Generators.tests.cpp:<line number>: PASSED:
  1028. REQUIRE( x < z )
  1029. with expansion:
  1030. 1 < 9
  1031. -------------------------------------------------------------------------------
  1032. 3x3x3 ints
  1033. -------------------------------------------------------------------------------
  1034. Generators.tests.cpp:<line number>
  1035. ...............................................................................
  1036. Generators.tests.cpp:<line number>: PASSED:
  1037. CHECK( x < y )
  1038. with expansion:
  1039. 2 < 4
  1040. Generators.tests.cpp:<line number>: PASSED:
  1041. CHECK( y < z )
  1042. with expansion:
  1043. 4 < 7
  1044. Generators.tests.cpp:<line number>: PASSED:
  1045. REQUIRE( x < z )
  1046. with expansion:
  1047. 2 < 7
  1048. -------------------------------------------------------------------------------
  1049. 3x3x3 ints
  1050. -------------------------------------------------------------------------------
  1051. Generators.tests.cpp:<line number>
  1052. ...............................................................................
  1053. Generators.tests.cpp:<line number>: PASSED:
  1054. CHECK( x < y )
  1055. with expansion:
  1056. 2 < 4
  1057. Generators.tests.cpp:<line number>: PASSED:
  1058. CHECK( y < z )
  1059. with expansion:
  1060. 4 < 8
  1061. Generators.tests.cpp:<line number>: PASSED:
  1062. REQUIRE( x < z )
  1063. with expansion:
  1064. 2 < 8
  1065. -------------------------------------------------------------------------------
  1066. 3x3x3 ints
  1067. -------------------------------------------------------------------------------
  1068. Generators.tests.cpp:<line number>
  1069. ...............................................................................
  1070. Generators.tests.cpp:<line number>: PASSED:
  1071. CHECK( x < y )
  1072. with expansion:
  1073. 2 < 4
  1074. Generators.tests.cpp:<line number>: PASSED:
  1075. CHECK( y < z )
  1076. with expansion:
  1077. 4 < 9
  1078. Generators.tests.cpp:<line number>: PASSED:
  1079. REQUIRE( x < z )
  1080. with expansion:
  1081. 2 < 9
  1082. -------------------------------------------------------------------------------
  1083. 3x3x3 ints
  1084. -------------------------------------------------------------------------------
  1085. Generators.tests.cpp:<line number>
  1086. ...............................................................................
  1087. Generators.tests.cpp:<line number>: PASSED:
  1088. CHECK( x < y )
  1089. with expansion:
  1090. 2 < 5
  1091. Generators.tests.cpp:<line number>: PASSED:
  1092. CHECK( y < z )
  1093. with expansion:
  1094. 5 < 7
  1095. Generators.tests.cpp:<line number>: PASSED:
  1096. REQUIRE( x < z )
  1097. with expansion:
  1098. 2 < 7
  1099. -------------------------------------------------------------------------------
  1100. 3x3x3 ints
  1101. -------------------------------------------------------------------------------
  1102. Generators.tests.cpp:<line number>
  1103. ...............................................................................
  1104. Generators.tests.cpp:<line number>: PASSED:
  1105. CHECK( x < y )
  1106. with expansion:
  1107. 2 < 5
  1108. Generators.tests.cpp:<line number>: PASSED:
  1109. CHECK( y < z )
  1110. with expansion:
  1111. 5 < 8
  1112. Generators.tests.cpp:<line number>: PASSED:
  1113. REQUIRE( x < z )
  1114. with expansion:
  1115. 2 < 8
  1116. -------------------------------------------------------------------------------
  1117. 3x3x3 ints
  1118. -------------------------------------------------------------------------------
  1119. Generators.tests.cpp:<line number>
  1120. ...............................................................................
  1121. Generators.tests.cpp:<line number>: PASSED:
  1122. CHECK( x < y )
  1123. with expansion:
  1124. 2 < 5
  1125. Generators.tests.cpp:<line number>: PASSED:
  1126. CHECK( y < z )
  1127. with expansion:
  1128. 5 < 9
  1129. Generators.tests.cpp:<line number>: PASSED:
  1130. REQUIRE( x < z )
  1131. with expansion:
  1132. 2 < 9
  1133. -------------------------------------------------------------------------------
  1134. 3x3x3 ints
  1135. -------------------------------------------------------------------------------
  1136. Generators.tests.cpp:<line number>
  1137. ...............................................................................
  1138. Generators.tests.cpp:<line number>: PASSED:
  1139. CHECK( x < y )
  1140. with expansion:
  1141. 2 < 6
  1142. Generators.tests.cpp:<line number>: PASSED:
  1143. CHECK( y < z )
  1144. with expansion:
  1145. 6 < 7
  1146. Generators.tests.cpp:<line number>: PASSED:
  1147. REQUIRE( x < z )
  1148. with expansion:
  1149. 2 < 7
  1150. -------------------------------------------------------------------------------
  1151. 3x3x3 ints
  1152. -------------------------------------------------------------------------------
  1153. Generators.tests.cpp:<line number>
  1154. ...............................................................................
  1155. Generators.tests.cpp:<line number>: PASSED:
  1156. CHECK( x < y )
  1157. with expansion:
  1158. 2 < 6
  1159. Generators.tests.cpp:<line number>: PASSED:
  1160. CHECK( y < z )
  1161. with expansion:
  1162. 6 < 8
  1163. Generators.tests.cpp:<line number>: PASSED:
  1164. REQUIRE( x < z )
  1165. with expansion:
  1166. 2 < 8
  1167. -------------------------------------------------------------------------------
  1168. 3x3x3 ints
  1169. -------------------------------------------------------------------------------
  1170. Generators.tests.cpp:<line number>
  1171. ...............................................................................
  1172. Generators.tests.cpp:<line number>: PASSED:
  1173. CHECK( x < y )
  1174. with expansion:
  1175. 2 < 6
  1176. Generators.tests.cpp:<line number>: PASSED:
  1177. CHECK( y < z )
  1178. with expansion:
  1179. 6 < 9
  1180. Generators.tests.cpp:<line number>: PASSED:
  1181. REQUIRE( x < z )
  1182. with expansion:
  1183. 2 < 9
  1184. -------------------------------------------------------------------------------
  1185. 3x3x3 ints
  1186. -------------------------------------------------------------------------------
  1187. Generators.tests.cpp:<line number>
  1188. ...............................................................................
  1189. Generators.tests.cpp:<line number>: PASSED:
  1190. CHECK( x < y )
  1191. with expansion:
  1192. 3 < 4
  1193. Generators.tests.cpp:<line number>: PASSED:
  1194. CHECK( y < z )
  1195. with expansion:
  1196. 4 < 7
  1197. Generators.tests.cpp:<line number>: PASSED:
  1198. REQUIRE( x < z )
  1199. with expansion:
  1200. 3 < 7
  1201. -------------------------------------------------------------------------------
  1202. 3x3x3 ints
  1203. -------------------------------------------------------------------------------
  1204. Generators.tests.cpp:<line number>
  1205. ...............................................................................
  1206. Generators.tests.cpp:<line number>: PASSED:
  1207. CHECK( x < y )
  1208. with expansion:
  1209. 3 < 4
  1210. Generators.tests.cpp:<line number>: PASSED:
  1211. CHECK( y < z )
  1212. with expansion:
  1213. 4 < 8
  1214. Generators.tests.cpp:<line number>: PASSED:
  1215. REQUIRE( x < z )
  1216. with expansion:
  1217. 3 < 8
  1218. -------------------------------------------------------------------------------
  1219. 3x3x3 ints
  1220. -------------------------------------------------------------------------------
  1221. Generators.tests.cpp:<line number>
  1222. ...............................................................................
  1223. Generators.tests.cpp:<line number>: PASSED:
  1224. CHECK( x < y )
  1225. with expansion:
  1226. 3 < 4
  1227. Generators.tests.cpp:<line number>: PASSED:
  1228. CHECK( y < z )
  1229. with expansion:
  1230. 4 < 9
  1231. Generators.tests.cpp:<line number>: PASSED:
  1232. REQUIRE( x < z )
  1233. with expansion:
  1234. 3 < 9
  1235. -------------------------------------------------------------------------------
  1236. 3x3x3 ints
  1237. -------------------------------------------------------------------------------
  1238. Generators.tests.cpp:<line number>
  1239. ...............................................................................
  1240. Generators.tests.cpp:<line number>: PASSED:
  1241. CHECK( x < y )
  1242. with expansion:
  1243. 3 < 5
  1244. Generators.tests.cpp:<line number>: PASSED:
  1245. CHECK( y < z )
  1246. with expansion:
  1247. 5 < 7
  1248. Generators.tests.cpp:<line number>: PASSED:
  1249. REQUIRE( x < z )
  1250. with expansion:
  1251. 3 < 7
  1252. -------------------------------------------------------------------------------
  1253. 3x3x3 ints
  1254. -------------------------------------------------------------------------------
  1255. Generators.tests.cpp:<line number>
  1256. ...............................................................................
  1257. Generators.tests.cpp:<line number>: PASSED:
  1258. CHECK( x < y )
  1259. with expansion:
  1260. 3 < 5
  1261. Generators.tests.cpp:<line number>: PASSED:
  1262. CHECK( y < z )
  1263. with expansion:
  1264. 5 < 8
  1265. Generators.tests.cpp:<line number>: PASSED:
  1266. REQUIRE( x < z )
  1267. with expansion:
  1268. 3 < 8
  1269. -------------------------------------------------------------------------------
  1270. 3x3x3 ints
  1271. -------------------------------------------------------------------------------
  1272. Generators.tests.cpp:<line number>
  1273. ...............................................................................
  1274. Generators.tests.cpp:<line number>: PASSED:
  1275. CHECK( x < y )
  1276. with expansion:
  1277. 3 < 5
  1278. Generators.tests.cpp:<line number>: PASSED:
  1279. CHECK( y < z )
  1280. with expansion:
  1281. 5 < 9
  1282. Generators.tests.cpp:<line number>: PASSED:
  1283. REQUIRE( x < z )
  1284. with expansion:
  1285. 3 < 9
  1286. -------------------------------------------------------------------------------
  1287. 3x3x3 ints
  1288. -------------------------------------------------------------------------------
  1289. Generators.tests.cpp:<line number>
  1290. ...............................................................................
  1291. Generators.tests.cpp:<line number>: PASSED:
  1292. CHECK( x < y )
  1293. with expansion:
  1294. 3 < 6
  1295. Generators.tests.cpp:<line number>: PASSED:
  1296. CHECK( y < z )
  1297. with expansion:
  1298. 6 < 7
  1299. Generators.tests.cpp:<line number>: PASSED:
  1300. REQUIRE( x < z )
  1301. with expansion:
  1302. 3 < 7
  1303. -------------------------------------------------------------------------------
  1304. 3x3x3 ints
  1305. -------------------------------------------------------------------------------
  1306. Generators.tests.cpp:<line number>
  1307. ...............................................................................
  1308. Generators.tests.cpp:<line number>: PASSED:
  1309. CHECK( x < y )
  1310. with expansion:
  1311. 3 < 6
  1312. Generators.tests.cpp:<line number>: PASSED:
  1313. CHECK( y < z )
  1314. with expansion:
  1315. 6 < 8
  1316. Generators.tests.cpp:<line number>: PASSED:
  1317. REQUIRE( x < z )
  1318. with expansion:
  1319. 3 < 8
  1320. -------------------------------------------------------------------------------
  1321. 3x3x3 ints
  1322. -------------------------------------------------------------------------------
  1323. Generators.tests.cpp:<line number>
  1324. ...............................................................................
  1325. Generators.tests.cpp:<line number>: PASSED:
  1326. CHECK( x < y )
  1327. with expansion:
  1328. 3 < 6
  1329. Generators.tests.cpp:<line number>: PASSED:
  1330. CHECK( y < z )
  1331. with expansion:
  1332. 6 < 9
  1333. Generators.tests.cpp:<line number>: PASSED:
  1334. REQUIRE( x < z )
  1335. with expansion:
  1336. 3 < 9
  1337. -------------------------------------------------------------------------------
  1338. A METHOD_AS_TEST_CASE based test run that fails
  1339. -------------------------------------------------------------------------------
  1340. Class.tests.cpp:<line number>
  1341. ...............................................................................
  1342. Class.tests.cpp:<line number>: FAILED:
  1343. REQUIRE( s == "world" )
  1344. with expansion:
  1345. "hello" == "world"
  1346. -------------------------------------------------------------------------------
  1347. A METHOD_AS_TEST_CASE based test run that succeeds
  1348. -------------------------------------------------------------------------------
  1349. Class.tests.cpp:<line number>
  1350. ...............................................................................
  1351. Class.tests.cpp:<line number>: PASSED:
  1352. REQUIRE( s == "hello" )
  1353. with expansion:
  1354. "hello" == "hello"
  1355. -------------------------------------------------------------------------------
  1356. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - Template_Foo
  1357. <float>
  1358. -------------------------------------------------------------------------------
  1359. Class.tests.cpp:<line number>
  1360. ...............................................................................
  1361. Class.tests.cpp:<line number>: FAILED:
  1362. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 1 )
  1363. with expansion:
  1364. 0 == 1
  1365. -------------------------------------------------------------------------------
  1366. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - Template_Foo
  1367. <int>
  1368. -------------------------------------------------------------------------------
  1369. Class.tests.cpp:<line number>
  1370. ...............................................................................
  1371. Class.tests.cpp:<line number>: FAILED:
  1372. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 1 )
  1373. with expansion:
  1374. 0 == 1
  1375. -------------------------------------------------------------------------------
  1376. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - std::vector
  1377. <float>
  1378. -------------------------------------------------------------------------------
  1379. Class.tests.cpp:<line number>
  1380. ...............................................................................
  1381. Class.tests.cpp:<line number>: FAILED:
  1382. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 1 )
  1383. with expansion:
  1384. 0 == 1
  1385. -------------------------------------------------------------------------------
  1386. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that fails - std::vector
  1387. <int>
  1388. -------------------------------------------------------------------------------
  1389. Class.tests.cpp:<line number>
  1390. ...............................................................................
  1391. Class.tests.cpp:<line number>: FAILED:
  1392. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 1 )
  1393. with expansion:
  1394. 0 == 1
  1395. -------------------------------------------------------------------------------
  1396. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - Template_Foo
  1397. <float>
  1398. -------------------------------------------------------------------------------
  1399. Class.tests.cpp:<line number>
  1400. ...............................................................................
  1401. Class.tests.cpp:<line number>: PASSED:
  1402. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 0 )
  1403. with expansion:
  1404. 0 == 0
  1405. -------------------------------------------------------------------------------
  1406. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - Template_Foo
  1407. <int>
  1408. -------------------------------------------------------------------------------
  1409. Class.tests.cpp:<line number>
  1410. ...............................................................................
  1411. Class.tests.cpp:<line number>: PASSED:
  1412. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 0 )
  1413. with expansion:
  1414. 0 == 0
  1415. -------------------------------------------------------------------------------
  1416. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - std::vector
  1417. <float>
  1418. -------------------------------------------------------------------------------
  1419. Class.tests.cpp:<line number>
  1420. ...............................................................................
  1421. Class.tests.cpp:<line number>: PASSED:
  1422. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 0 )
  1423. with expansion:
  1424. 0 == 0
  1425. -------------------------------------------------------------------------------
  1426. A TEMPLATE_PRODUCT_TEST_CASE_METHOD based test run that succeeds - std::vector
  1427. <int>
  1428. -------------------------------------------------------------------------------
  1429. Class.tests.cpp:<line number>
  1430. ...............................................................................
  1431. Class.tests.cpp:<line number>: PASSED:
  1432. REQUIRE( Template_Fixture_2<TestType>::m_a.size() == 0 )
  1433. with expansion:
  1434. 0 == 0
  1435. -------------------------------------------------------------------------------
  1436. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails -
  1437. Template_Foo_2<float, 6>
  1438. -------------------------------------------------------------------------------
  1439. Class.tests.cpp:<line number>
  1440. ...............................................................................
  1441. Class.tests.cpp:<line number>: FAILED:
  1442. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() < 2 )
  1443. with expansion:
  1444. 6 < 2
  1445. -------------------------------------------------------------------------------
  1446. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails -
  1447. Template_Foo_2<int, 2>
  1448. -------------------------------------------------------------------------------
  1449. Class.tests.cpp:<line number>
  1450. ...............................................................................
  1451. Class.tests.cpp:<line number>: FAILED:
  1452. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() < 2 )
  1453. with expansion:
  1454. 2 < 2
  1455. -------------------------------------------------------------------------------
  1456. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - std::array
  1457. <float, 6>
  1458. -------------------------------------------------------------------------------
  1459. Class.tests.cpp:<line number>
  1460. ...............................................................................
  1461. Class.tests.cpp:<line number>: FAILED:
  1462. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() < 2 )
  1463. with expansion:
  1464. 6 < 2
  1465. -------------------------------------------------------------------------------
  1466. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that fails - std::array
  1467. <int, 2>
  1468. -------------------------------------------------------------------------------
  1469. Class.tests.cpp:<line number>
  1470. ...............................................................................
  1471. Class.tests.cpp:<line number>: FAILED:
  1472. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() < 2 )
  1473. with expansion:
  1474. 2 < 2
  1475. -------------------------------------------------------------------------------
  1476. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds -
  1477. Template_Foo_2<float,6>
  1478. -------------------------------------------------------------------------------
  1479. Class.tests.cpp:<line number>
  1480. ...............................................................................
  1481. Class.tests.cpp:<line number>: PASSED:
  1482. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() >= 2 )
  1483. with expansion:
  1484. 6 >= 2
  1485. -------------------------------------------------------------------------------
  1486. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds -
  1487. Template_Foo_2<int,2>
  1488. -------------------------------------------------------------------------------
  1489. Class.tests.cpp:<line number>
  1490. ...............................................................................
  1491. Class.tests.cpp:<line number>: PASSED:
  1492. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() >= 2 )
  1493. with expansion:
  1494. 2 >= 2
  1495. -------------------------------------------------------------------------------
  1496. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - std::
  1497. array<float,6>
  1498. -------------------------------------------------------------------------------
  1499. Class.tests.cpp:<line number>
  1500. ...............................................................................
  1501. Class.tests.cpp:<line number>: PASSED:
  1502. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() >= 2 )
  1503. with expansion:
  1504. 6 >= 2
  1505. -------------------------------------------------------------------------------
  1506. A TEMPLATE_PRODUCT_TEST_CASE_METHOD_SIG based test run that succeeds - std::
  1507. array<int,2>
  1508. -------------------------------------------------------------------------------
  1509. Class.tests.cpp:<line number>
  1510. ...............................................................................
  1511. Class.tests.cpp:<line number>: PASSED:
  1512. REQUIRE( Template_Fixture_2<TestType>{}.m_a.size() >= 2 )
  1513. with expansion:
  1514. 2 >= 2
  1515. -------------------------------------------------------------------------------
  1516. A TEMPLATE_TEST_CASE_METHOD based test run that fails - double
  1517. -------------------------------------------------------------------------------
  1518. Class.tests.cpp:<line number>
  1519. ...............................................................................
  1520. Class.tests.cpp:<line number>: FAILED:
  1521. REQUIRE( Template_Fixture<TestType>::m_a == 2 )
  1522. with expansion:
  1523. 1.0 == 2
  1524. -------------------------------------------------------------------------------
  1525. A TEMPLATE_TEST_CASE_METHOD based test run that fails - float
  1526. -------------------------------------------------------------------------------
  1527. Class.tests.cpp:<line number>
  1528. ...............................................................................
  1529. Class.tests.cpp:<line number>: FAILED:
  1530. REQUIRE( Template_Fixture<TestType>::m_a == 2 )
  1531. with expansion:
  1532. 1.0f == 2
  1533. -------------------------------------------------------------------------------
  1534. A TEMPLATE_TEST_CASE_METHOD based test run that fails - int
  1535. -------------------------------------------------------------------------------
  1536. Class.tests.cpp:<line number>
  1537. ...............................................................................
  1538. Class.tests.cpp:<line number>: FAILED:
  1539. REQUIRE( Template_Fixture<TestType>::m_a == 2 )
  1540. with expansion:
  1541. 1 == 2
  1542. -------------------------------------------------------------------------------
  1543. A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - double
  1544. -------------------------------------------------------------------------------
  1545. Class.tests.cpp:<line number>
  1546. ...............................................................................
  1547. Class.tests.cpp:<line number>: PASSED:
  1548. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  1549. with expansion:
  1550. 1.0 == 1
  1551. -------------------------------------------------------------------------------
  1552. A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - float
  1553. -------------------------------------------------------------------------------
  1554. Class.tests.cpp:<line number>
  1555. ...............................................................................
  1556. Class.tests.cpp:<line number>: PASSED:
  1557. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  1558. with expansion:
  1559. 1.0f == 1
  1560. -------------------------------------------------------------------------------
  1561. A TEMPLATE_TEST_CASE_METHOD based test run that succeeds - int
  1562. -------------------------------------------------------------------------------
  1563. Class.tests.cpp:<line number>
  1564. ...............................................................................
  1565. Class.tests.cpp:<line number>: PASSED:
  1566. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  1567. with expansion:
  1568. 1 == 1
  1569. -------------------------------------------------------------------------------
  1570. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 1
  1571. -------------------------------------------------------------------------------
  1572. Class.tests.cpp:<line number>
  1573. ...............................................................................
  1574. Class.tests.cpp:<line number>: FAILED:
  1575. REQUIRE( Nttp_Fixture<V>::value == 0 )
  1576. with expansion:
  1577. 1 == 0
  1578. -------------------------------------------------------------------------------
  1579. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 3
  1580. -------------------------------------------------------------------------------
  1581. Class.tests.cpp:<line number>
  1582. ...............................................................................
  1583. Class.tests.cpp:<line number>: FAILED:
  1584. REQUIRE( Nttp_Fixture<V>::value == 0 )
  1585. with expansion:
  1586. 3 == 0
  1587. -------------------------------------------------------------------------------
  1588. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that fails - 6
  1589. -------------------------------------------------------------------------------
  1590. Class.tests.cpp:<line number>
  1591. ...............................................................................
  1592. Class.tests.cpp:<line number>: FAILED:
  1593. REQUIRE( Nttp_Fixture<V>::value == 0 )
  1594. with expansion:
  1595. 6 == 0
  1596. -------------------------------------------------------------------------------
  1597. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 1
  1598. -------------------------------------------------------------------------------
  1599. Class.tests.cpp:<line number>
  1600. ...............................................................................
  1601. Class.tests.cpp:<line number>: PASSED:
  1602. REQUIRE( Nttp_Fixture<V>::value > 0 )
  1603. with expansion:
  1604. 1 > 0
  1605. -------------------------------------------------------------------------------
  1606. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 3
  1607. -------------------------------------------------------------------------------
  1608. Class.tests.cpp:<line number>
  1609. ...............................................................................
  1610. Class.tests.cpp:<line number>: PASSED:
  1611. REQUIRE( Nttp_Fixture<V>::value > 0 )
  1612. with expansion:
  1613. 3 > 0
  1614. -------------------------------------------------------------------------------
  1615. A TEMPLATE_TEST_CASE_METHOD_SIG based test run that succeeds - 6
  1616. -------------------------------------------------------------------------------
  1617. Class.tests.cpp:<line number>
  1618. ...............................................................................
  1619. Class.tests.cpp:<line number>: PASSED:
  1620. REQUIRE( Nttp_Fixture<V>::value > 0 )
  1621. with expansion:
  1622. 6 > 0
  1623. -------------------------------------------------------------------------------
  1624. A TEST_CASE_METHOD based test run that fails
  1625. -------------------------------------------------------------------------------
  1626. Class.tests.cpp:<line number>
  1627. ...............................................................................
  1628. Class.tests.cpp:<line number>: FAILED:
  1629. REQUIRE( m_a == 2 )
  1630. with expansion:
  1631. 1 == 2
  1632. -------------------------------------------------------------------------------
  1633. A TEST_CASE_METHOD based test run that succeeds
  1634. -------------------------------------------------------------------------------
  1635. Class.tests.cpp:<line number>
  1636. ...............................................................................
  1637. Class.tests.cpp:<line number>: PASSED:
  1638. REQUIRE( m_a == 1 )
  1639. with expansion:
  1640. 1 == 1
  1641. -------------------------------------------------------------------------------
  1642. A Template product test case - Foo<float>
  1643. -------------------------------------------------------------------------------
  1644. Misc.tests.cpp:<line number>
  1645. ...............................................................................
  1646. Misc.tests.cpp:<line number>: PASSED:
  1647. REQUIRE( x.size() == 0 )
  1648. with expansion:
  1649. 0 == 0
  1650. -------------------------------------------------------------------------------
  1651. A Template product test case - Foo<int>
  1652. -------------------------------------------------------------------------------
  1653. Misc.tests.cpp:<line number>
  1654. ...............................................................................
  1655. Misc.tests.cpp:<line number>: PASSED:
  1656. REQUIRE( x.size() == 0 )
  1657. with expansion:
  1658. 0 == 0
  1659. -------------------------------------------------------------------------------
  1660. A Template product test case - std::vector<float>
  1661. -------------------------------------------------------------------------------
  1662. Misc.tests.cpp:<line number>
  1663. ...............................................................................
  1664. Misc.tests.cpp:<line number>: PASSED:
  1665. REQUIRE( x.size() == 0 )
  1666. with expansion:
  1667. 0 == 0
  1668. -------------------------------------------------------------------------------
  1669. A Template product test case - std::vector<int>
  1670. -------------------------------------------------------------------------------
  1671. Misc.tests.cpp:<line number>
  1672. ...............................................................................
  1673. Misc.tests.cpp:<line number>: PASSED:
  1674. REQUIRE( x.size() == 0 )
  1675. with expansion:
  1676. 0 == 0
  1677. -------------------------------------------------------------------------------
  1678. A Template product test case with array signature - Bar<float, 42>
  1679. -------------------------------------------------------------------------------
  1680. Misc.tests.cpp:<line number>
  1681. ...............................................................................
  1682. Misc.tests.cpp:<line number>: PASSED:
  1683. REQUIRE( x.size() > 0 )
  1684. with expansion:
  1685. 42 > 0
  1686. -------------------------------------------------------------------------------
  1687. A Template product test case with array signature - Bar<int, 9>
  1688. -------------------------------------------------------------------------------
  1689. Misc.tests.cpp:<line number>
  1690. ...............................................................................
  1691. Misc.tests.cpp:<line number>: PASSED:
  1692. REQUIRE( x.size() > 0 )
  1693. with expansion:
  1694. 9 > 0
  1695. -------------------------------------------------------------------------------
  1696. A Template product test case with array signature - std::array<float, 42>
  1697. -------------------------------------------------------------------------------
  1698. Misc.tests.cpp:<line number>
  1699. ...............................................................................
  1700. Misc.tests.cpp:<line number>: PASSED:
  1701. REQUIRE( x.size() > 0 )
  1702. with expansion:
  1703. 42 > 0
  1704. -------------------------------------------------------------------------------
  1705. A Template product test case with array signature - std::array<int, 9>
  1706. -------------------------------------------------------------------------------
  1707. Misc.tests.cpp:<line number>
  1708. ...............................................................................
  1709. Misc.tests.cpp:<line number>: PASSED:
  1710. REQUIRE( x.size() > 0 )
  1711. with expansion:
  1712. 9 > 0
  1713. -------------------------------------------------------------------------------
  1714. A comparison that uses literals instead of the normal constructor
  1715. -------------------------------------------------------------------------------
  1716. Approx.tests.cpp:<line number>
  1717. ...............................................................................
  1718. Approx.tests.cpp:<line number>: PASSED:
  1719. REQUIRE( d == 1.23_a )
  1720. with expansion:
  1721. 1.23 == Approx( 1.23 )
  1722. Approx.tests.cpp:<line number>: PASSED:
  1723. REQUIRE( d != 1.22_a )
  1724. with expansion:
  1725. 1.23 != Approx( 1.22 )
  1726. Approx.tests.cpp:<line number>: PASSED:
  1727. REQUIRE( -d == -1.23_a )
  1728. with expansion:
  1729. -1.23 == Approx( -1.23 )
  1730. Approx.tests.cpp:<line number>: PASSED:
  1731. REQUIRE( d == 1.2_a .epsilon(.1) )
  1732. with expansion:
  1733. 1.23 == Approx( 1.2 )
  1734. Approx.tests.cpp:<line number>: PASSED:
  1735. REQUIRE( d != 1.2_a .epsilon(.001) )
  1736. with expansion:
  1737. 1.23 != Approx( 1.2 )
  1738. Approx.tests.cpp:<line number>: PASSED:
  1739. REQUIRE( d == 1_a .epsilon(.3) )
  1740. with expansion:
  1741. 1.23 == Approx( 1.0 )
  1742. -------------------------------------------------------------------------------
  1743. A couple of nested sections followed by a failure
  1744. Outer
  1745. Inner
  1746. -------------------------------------------------------------------------------
  1747. Misc.tests.cpp:<line number>
  1748. ...............................................................................
  1749. Misc.tests.cpp:<line number>: PASSED:
  1750. with message:
  1751. that's not flying - that's failing in style
  1752. -------------------------------------------------------------------------------
  1753. A couple of nested sections followed by a failure
  1754. -------------------------------------------------------------------------------
  1755. Misc.tests.cpp:<line number>
  1756. ...............................................................................
  1757. Misc.tests.cpp:<line number>: FAILED:
  1758. explicitly with message:
  1759. to infinity and beyond
  1760. -------------------------------------------------------------------------------
  1761. A failing expression with a non streamable type is still captured
  1762. -------------------------------------------------------------------------------
  1763. Tricky.tests.cpp:<line number>
  1764. ...............................................................................
  1765. Tricky.tests.cpp:<line number>: FAILED:
  1766. CHECK( &o1 == &o2 )
  1767. with expansion:
  1768. 0x<hex digits> == 0x<hex digits>
  1769. Tricky.tests.cpp:<line number>: FAILED:
  1770. CHECK( o1 == o2 )
  1771. with expansion:
  1772. {?} == {?}
  1773. -------------------------------------------------------------------------------
  1774. Absolute margin
  1775. -------------------------------------------------------------------------------
  1776. Approx.tests.cpp:<line number>
  1777. ...............................................................................
  1778. Approx.tests.cpp:<line number>: PASSED:
  1779. REQUIRE( 104.0 != Approx(100.0) )
  1780. with expansion:
  1781. 104.0 != Approx( 100.0 )
  1782. Approx.tests.cpp:<line number>: PASSED:
  1783. REQUIRE( 104.0 == Approx(100.0).margin(5) )
  1784. with expansion:
  1785. 104.0 == Approx( 100.0 )
  1786. Approx.tests.cpp:<line number>: PASSED:
  1787. REQUIRE( 104.0 == Approx(100.0).margin(4) )
  1788. with expansion:
  1789. 104.0 == Approx( 100.0 )
  1790. Approx.tests.cpp:<line number>: PASSED:
  1791. REQUIRE( 104.0 != Approx(100.0).margin(3) )
  1792. with expansion:
  1793. 104.0 != Approx( 100.0 )
  1794. Approx.tests.cpp:<line number>: PASSED:
  1795. REQUIRE( 100.3 != Approx(100.0) )
  1796. with expansion:
  1797. 100.3 != Approx( 100.0 )
  1798. Approx.tests.cpp:<line number>: PASSED:
  1799. REQUIRE( 100.3 == Approx(100.0).margin(0.5) )
  1800. with expansion:
  1801. 100.3 == Approx( 100.0 )
  1802. -------------------------------------------------------------------------------
  1803. An empty test with no assertions
  1804. -------------------------------------------------------------------------------
  1805. Misc.tests.cpp:<line number>
  1806. ...............................................................................
  1807. No assertions in test case 'An empty test with no assertions'
  1808. -------------------------------------------------------------------------------
  1809. An expression with side-effects should only be evaluated once
  1810. -------------------------------------------------------------------------------
  1811. Tricky.tests.cpp:<line number>
  1812. ...............................................................................
  1813. Tricky.tests.cpp:<line number>: PASSED:
  1814. REQUIRE( i++ == 7 )
  1815. with expansion:
  1816. 7 == 7
  1817. Tricky.tests.cpp:<line number>: PASSED:
  1818. REQUIRE( i++ == 8 )
  1819. with expansion:
  1820. 8 == 8
  1821. -------------------------------------------------------------------------------
  1822. An unchecked exception reports the line of the last assertion
  1823. -------------------------------------------------------------------------------
  1824. Exception.tests.cpp:<line number>
  1825. ...............................................................................
  1826. Exception.tests.cpp:<line number>: PASSED:
  1827. CHECK( 1 == 1 )
  1828. Exception.tests.cpp:<line number>: FAILED:
  1829. {Unknown expression after the reported line}
  1830. due to unexpected exception with message:
  1831. unexpected exception
  1832. -------------------------------------------------------------------------------
  1833. Anonymous test case 1
  1834. -------------------------------------------------------------------------------
  1835. VariadicMacros.tests.cpp:<line number>
  1836. ...............................................................................
  1837. VariadicMacros.tests.cpp:<line number>: PASSED:
  1838. with message:
  1839. anonymous test case
  1840. -------------------------------------------------------------------------------
  1841. Approx setters validate their arguments
  1842. -------------------------------------------------------------------------------
  1843. Approx.tests.cpp:<line number>
  1844. ...............................................................................
  1845. Approx.tests.cpp:<line number>: PASSED:
  1846. REQUIRE_NOTHROW( Approx(0).margin(0) )
  1847. Approx.tests.cpp:<line number>: PASSED:
  1848. REQUIRE_NOTHROW( Approx(0).margin(1234656) )
  1849. Approx.tests.cpp:<line number>: PASSED:
  1850. REQUIRE_THROWS_AS( Approx(0).margin(-2), std::domain_error )
  1851. Approx.tests.cpp:<line number>: PASSED:
  1852. REQUIRE_NOTHROW( Approx(0).epsilon(0) )
  1853. Approx.tests.cpp:<line number>: PASSED:
  1854. REQUIRE_NOTHROW( Approx(0).epsilon(1) )
  1855. Approx.tests.cpp:<line number>: PASSED:
  1856. REQUIRE_THROWS_AS( Approx(0).epsilon(-0.001), std::domain_error )
  1857. Approx.tests.cpp:<line number>: PASSED:
  1858. REQUIRE_THROWS_AS( Approx(0).epsilon(1.0001), std::domain_error )
  1859. -------------------------------------------------------------------------------
  1860. Approx with exactly-representable margin
  1861. -------------------------------------------------------------------------------
  1862. Approx.tests.cpp:<line number>
  1863. ...............................................................................
  1864. Approx.tests.cpp:<line number>: PASSED:
  1865. CHECK( 0.25f == Approx(0.0f).margin(0.25f) )
  1866. with expansion:
  1867. 0.25f == Approx( 0.0 )
  1868. Approx.tests.cpp:<line number>: PASSED:
  1869. CHECK( 0.0f == Approx(0.25f).margin(0.25f) )
  1870. with expansion:
  1871. 0.0f == Approx( 0.25 )
  1872. Approx.tests.cpp:<line number>: PASSED:
  1873. CHECK( 0.5f == Approx(0.25f).margin(0.25f) )
  1874. with expansion:
  1875. 0.5f == Approx( 0.25 )
  1876. Approx.tests.cpp:<line number>: PASSED:
  1877. CHECK( 245.0f == Approx(245.25f).margin(0.25f) )
  1878. with expansion:
  1879. 245.0f == Approx( 245.25 )
  1880. Approx.tests.cpp:<line number>: PASSED:
  1881. CHECK( 245.5f == Approx(245.25f).margin(0.25f) )
  1882. with expansion:
  1883. 245.5f == Approx( 245.25 )
  1884. -------------------------------------------------------------------------------
  1885. Approximate PI
  1886. -------------------------------------------------------------------------------
  1887. Approx.tests.cpp:<line number>
  1888. ...............................................................................
  1889. Approx.tests.cpp:<line number>: PASSED:
  1890. REQUIRE( divide( 22, 7 ) == Approx( 3.141 ).epsilon( 0.001 ) )
  1891. with expansion:
  1892. 3.1428571429 == Approx( 3.141 )
  1893. Approx.tests.cpp:<line number>: PASSED:
  1894. REQUIRE( divide( 22, 7 ) != Approx( 3.141 ).epsilon( 0.0001 ) )
  1895. with expansion:
  1896. 3.1428571429 != Approx( 3.141 )
  1897. -------------------------------------------------------------------------------
  1898. Approximate comparisons with different epsilons
  1899. -------------------------------------------------------------------------------
  1900. Approx.tests.cpp:<line number>
  1901. ...............................................................................
  1902. Approx.tests.cpp:<line number>: PASSED:
  1903. REQUIRE( d != Approx( 1.231 ) )
  1904. with expansion:
  1905. 1.23 != Approx( 1.231 )
  1906. Approx.tests.cpp:<line number>: PASSED:
  1907. REQUIRE( d == Approx( 1.231 ).epsilon( 0.1 ) )
  1908. with expansion:
  1909. 1.23 == Approx( 1.231 )
  1910. -------------------------------------------------------------------------------
  1911. Approximate comparisons with floats
  1912. -------------------------------------------------------------------------------
  1913. Approx.tests.cpp:<line number>
  1914. ...............................................................................
  1915. Approx.tests.cpp:<line number>: PASSED:
  1916. REQUIRE( 1.23f == Approx( 1.23f ) )
  1917. with expansion:
  1918. 1.23f == Approx( 1.2300000191 )
  1919. Approx.tests.cpp:<line number>: PASSED:
  1920. REQUIRE( 0.0f == Approx( 0.0f ) )
  1921. with expansion:
  1922. 0.0f == Approx( 0.0 )
  1923. -------------------------------------------------------------------------------
  1924. Approximate comparisons with ints
  1925. -------------------------------------------------------------------------------
  1926. Approx.tests.cpp:<line number>
  1927. ...............................................................................
  1928. Approx.tests.cpp:<line number>: PASSED:
  1929. REQUIRE( 1 == Approx( 1 ) )
  1930. with expansion:
  1931. 1 == Approx( 1.0 )
  1932. Approx.tests.cpp:<line number>: PASSED:
  1933. REQUIRE( 0 == Approx( 0 ) )
  1934. with expansion:
  1935. 0 == Approx( 0.0 )
  1936. -------------------------------------------------------------------------------
  1937. Approximate comparisons with mixed numeric types
  1938. -------------------------------------------------------------------------------
  1939. Approx.tests.cpp:<line number>
  1940. ...............................................................................
  1941. Approx.tests.cpp:<line number>: PASSED:
  1942. REQUIRE( 1.0f == Approx( 1 ) )
  1943. with expansion:
  1944. 1.0f == Approx( 1.0 )
  1945. Approx.tests.cpp:<line number>: PASSED:
  1946. REQUIRE( 0 == Approx( dZero) )
  1947. with expansion:
  1948. 0 == Approx( 0.0 )
  1949. Approx.tests.cpp:<line number>: PASSED:
  1950. REQUIRE( 0 == Approx( dSmall ).margin( 0.001 ) )
  1951. with expansion:
  1952. 0 == Approx( 0.00001 )
  1953. Approx.tests.cpp:<line number>: PASSED:
  1954. REQUIRE( 1.234f == Approx( dMedium ) )
  1955. with expansion:
  1956. 1.234f == Approx( 1.234 )
  1957. Approx.tests.cpp:<line number>: PASSED:
  1958. REQUIRE( dMedium == Approx( 1.234f ) )
  1959. with expansion:
  1960. 1.234 == Approx( 1.2339999676 )
  1961. -------------------------------------------------------------------------------
  1962. Arbitrary predicate matcher
  1963. Function pointer
  1964. -------------------------------------------------------------------------------
  1965. Matchers.tests.cpp:<line number>
  1966. ...............................................................................
  1967. Matchers.tests.cpp:<line number>: PASSED:
  1968. REQUIRE_THAT( 1, Predicate<int>( alwaysTrue, "always true" ) )
  1969. with expansion:
  1970. 1 matches predicate: "always true"
  1971. Matchers.tests.cpp:<line number>: PASSED:
  1972. REQUIRE_THAT( 1, !Predicate<int>( alwaysFalse, "always false" ) )
  1973. with expansion:
  1974. 1 not matches predicate: "always false"
  1975. -------------------------------------------------------------------------------
  1976. Arbitrary predicate matcher
  1977. Lambdas + different type
  1978. -------------------------------------------------------------------------------
  1979. Matchers.tests.cpp:<line number>
  1980. ...............................................................................
  1981. Matchers.tests.cpp:<line number>: PASSED:
  1982. REQUIRE_THAT( "Hello olleH", Predicate<std::string>( []( std::string const& str ) -> bool { return str.front() == str.back(); }, "First and last character should be equal" ) )
  1983. with expansion:
  1984. "Hello olleH" matches predicate: "First and last character should be equal"
  1985. Matchers.tests.cpp:<line number>: PASSED:
  1986. REQUIRE_THAT( "This wouldn't pass", !Predicate<std::string>( []( std::string const& str ) -> bool { return str.front() == str.back(); } ) )
  1987. with expansion:
  1988. "This wouldn't pass" not matches undescribed predicate
  1989. -------------------------------------------------------------------------------
  1990. Assertion macros support bit operators and bool conversions
  1991. -------------------------------------------------------------------------------
  1992. Compilation.tests.cpp:<line number>
  1993. ...............................................................................
  1994. Compilation.tests.cpp:<line number>: PASSED:
  1995. REQUIRE( lhs | rhs )
  1996. with expansion:
  1997. Val: 1 | Val: 2
  1998. Compilation.tests.cpp:<line number>: PASSED:
  1999. REQUIRE_FALSE( lhs & rhs )
  2000. with expansion:
  2001. !(Val: 1 & Val: 2)
  2002. Compilation.tests.cpp:<line number>: PASSED:
  2003. REQUIRE( HasBitOperators{ 1 } & HasBitOperators{ 1 } )
  2004. with expansion:
  2005. Val: 1 & Val: 1
  2006. Compilation.tests.cpp:<line number>: PASSED:
  2007. REQUIRE( lhs ^ rhs )
  2008. with expansion:
  2009. Val: 1 ^ Val: 2
  2010. Compilation.tests.cpp:<line number>: PASSED:
  2011. REQUIRE_FALSE( lhs ^ lhs )
  2012. with expansion:
  2013. !(Val: 1 ^ Val: 1)
  2014. -------------------------------------------------------------------------------
  2015. Assertions then sections
  2016. -------------------------------------------------------------------------------
  2017. Tricky.tests.cpp:<line number>
  2018. ...............................................................................
  2019. Tricky.tests.cpp:<line number>: PASSED:
  2020. REQUIRE( true )
  2021. -------------------------------------------------------------------------------
  2022. Assertions then sections
  2023. A section
  2024. -------------------------------------------------------------------------------
  2025. Tricky.tests.cpp:<line number>
  2026. ...............................................................................
  2027. Tricky.tests.cpp:<line number>: PASSED:
  2028. REQUIRE( true )
  2029. -------------------------------------------------------------------------------
  2030. Assertions then sections
  2031. A section
  2032. Another section
  2033. -------------------------------------------------------------------------------
  2034. Tricky.tests.cpp:<line number>
  2035. ...............................................................................
  2036. Tricky.tests.cpp:<line number>: PASSED:
  2037. REQUIRE( true )
  2038. -------------------------------------------------------------------------------
  2039. Assertions then sections
  2040. -------------------------------------------------------------------------------
  2041. Tricky.tests.cpp:<line number>
  2042. ...............................................................................
  2043. Tricky.tests.cpp:<line number>: PASSED:
  2044. REQUIRE( true )
  2045. -------------------------------------------------------------------------------
  2046. Assertions then sections
  2047. A section
  2048. -------------------------------------------------------------------------------
  2049. Tricky.tests.cpp:<line number>
  2050. ...............................................................................
  2051. Tricky.tests.cpp:<line number>: PASSED:
  2052. REQUIRE( true )
  2053. -------------------------------------------------------------------------------
  2054. Assertions then sections
  2055. A section
  2056. Another other section
  2057. -------------------------------------------------------------------------------
  2058. Tricky.tests.cpp:<line number>
  2059. ...............................................................................
  2060. Tricky.tests.cpp:<line number>: PASSED:
  2061. REQUIRE( true )
  2062. -------------------------------------------------------------------------------
  2063. Basic use of the Contains range matcher
  2064. Different argument ranges, same element type, default comparison
  2065. -------------------------------------------------------------------------------
  2066. MatchersRanges.tests.cpp:<line number>
  2067. ...............................................................................
  2068. MatchersRanges.tests.cpp:<line number>: PASSED:
  2069. REQUIRE_THAT( a, Contains(1) )
  2070. with expansion:
  2071. { 1, 2, 3 } contains element 1
  2072. MatchersRanges.tests.cpp:<line number>: PASSED:
  2073. REQUIRE_THAT( b, Contains(1) )
  2074. with expansion:
  2075. { 0, 1, 2 } contains element 1
  2076. MatchersRanges.tests.cpp:<line number>: PASSED:
  2077. REQUIRE_THAT( c, !Contains(1) )
  2078. with expansion:
  2079. { 4, 5, 6 } not contains element 1
  2080. -------------------------------------------------------------------------------
  2081. Basic use of the Contains range matcher
  2082. Different argument ranges, same element type, custom comparison
  2083. -------------------------------------------------------------------------------
  2084. MatchersRanges.tests.cpp:<line number>
  2085. ...............................................................................
  2086. MatchersRanges.tests.cpp:<line number>: PASSED:
  2087. REQUIRE_THAT( a, Contains(0, close_enough) )
  2088. with expansion:
  2089. { 1, 2, 3 } contains element 0
  2090. MatchersRanges.tests.cpp:<line number>: PASSED:
  2091. REQUIRE_THAT( b, Contains(0, close_enough) )
  2092. with expansion:
  2093. { 0, 1, 2 } contains element 0
  2094. MatchersRanges.tests.cpp:<line number>: PASSED:
  2095. REQUIRE_THAT( c, !Contains(0, close_enough) )
  2096. with expansion:
  2097. { 4, 5, 6 } not contains element 0
  2098. -------------------------------------------------------------------------------
  2099. Basic use of the Contains range matcher
  2100. Different element type, custom comparisons
  2101. -------------------------------------------------------------------------------
  2102. MatchersRanges.tests.cpp:<line number>
  2103. ...............................................................................
  2104. MatchersRanges.tests.cpp:<line number>: PASSED:
  2105. REQUIRE_THAT( a, Contains(4, [](auto&& lhs, size_t sz) { return lhs.size() == sz; }) )
  2106. with expansion:
  2107. { "abc", "abcd", "abcde" } contains element 4
  2108. -------------------------------------------------------------------------------
  2109. Basic use of the Contains range matcher
  2110. Can handle type that requires ADL-found free function begin and end
  2111. -------------------------------------------------------------------------------
  2112. MatchersRanges.tests.cpp:<line number>
  2113. ...............................................................................
  2114. MatchersRanges.tests.cpp:<line number>: PASSED:
  2115. REQUIRE_THAT( in, Contains(1) )
  2116. with expansion:
  2117. { 1, 2, 3, 4, 5 } contains element 1
  2118. MatchersRanges.tests.cpp:<line number>: PASSED:
  2119. REQUIRE_THAT( in, !Contains(8) )
  2120. with expansion:
  2121. { 1, 2, 3, 4, 5 } not contains element 8
  2122. -------------------------------------------------------------------------------
  2123. Basic use of the Contains range matcher
  2124. Initialization with move only types
  2125. -------------------------------------------------------------------------------
  2126. MatchersRanges.tests.cpp:<line number>
  2127. ...............................................................................
  2128. MatchersRanges.tests.cpp:<line number>: PASSED:
  2129. REQUIRE_THAT( in, Contains(MoveOnlyTestElement{ 2 }) )
  2130. with expansion:
  2131. { 1, 2, 3 } contains element 2
  2132. MatchersRanges.tests.cpp:<line number>: PASSED:
  2133. REQUIRE_THAT( in, !Contains(MoveOnlyTestElement{ 9 }) )
  2134. with expansion:
  2135. { 1, 2, 3 } not contains element 9
  2136. -------------------------------------------------------------------------------
  2137. Basic use of the Contains range matcher
  2138. Matching using matcher
  2139. -------------------------------------------------------------------------------
  2140. MatchersRanges.tests.cpp:<line number>
  2141. ...............................................................................
  2142. MatchersRanges.tests.cpp:<line number>: PASSED:
  2143. REQUIRE_THAT( in, Contains(Catch::Matchers::WithinAbs(0.5, 0.5)) )
  2144. with expansion:
  2145. { 1.0, 2.0, 3.0, 0.0 } contains element matching is within 0.5 of 0.5
  2146. -------------------------------------------------------------------------------
  2147. Basic use of the Empty range matcher
  2148. Simple, std-provided containers
  2149. -------------------------------------------------------------------------------
  2150. MatchersRanges.tests.cpp:<line number>
  2151. ...............................................................................
  2152. MatchersRanges.tests.cpp:<line number>: PASSED:
  2153. REQUIRE_THAT( empty_array, IsEmpty() )
  2154. with expansion:
  2155. { } is empty
  2156. MatchersRanges.tests.cpp:<line number>: PASSED:
  2157. REQUIRE_THAT( non_empty_array, !IsEmpty() )
  2158. with expansion:
  2159. { 0.0 } not is empty
  2160. MatchersRanges.tests.cpp:<line number>: PASSED:
  2161. REQUIRE_THAT( empty_vec, IsEmpty() )
  2162. with expansion:
  2163. { } is empty
  2164. MatchersRanges.tests.cpp:<line number>: PASSED:
  2165. REQUIRE_THAT( non_empty_vec, !IsEmpty() )
  2166. with expansion:
  2167. { 'a', 'b', 'c' } not is empty
  2168. MatchersRanges.tests.cpp:<line number>: PASSED:
  2169. REQUIRE_THAT( inner_lists_are_empty, !IsEmpty() )
  2170. with expansion:
  2171. { { } } not is empty
  2172. MatchersRanges.tests.cpp:<line number>: PASSED:
  2173. REQUIRE_THAT( inner_lists_are_empty.front(), IsEmpty() )
  2174. with expansion:
  2175. { } is empty
  2176. -------------------------------------------------------------------------------
  2177. Basic use of the Empty range matcher
  2178. Type with empty
  2179. -------------------------------------------------------------------------------
  2180. MatchersRanges.tests.cpp:<line number>
  2181. ...............................................................................
  2182. MatchersRanges.tests.cpp:<line number>: PASSED:
  2183. REQUIRE_THAT( has_empty{}, !IsEmpty() )
  2184. with expansion:
  2185. {?} not is empty
  2186. -------------------------------------------------------------------------------
  2187. Basic use of the Empty range matcher
  2188. Type requires ADL found empty free function
  2189. -------------------------------------------------------------------------------
  2190. MatchersRanges.tests.cpp:<line number>
  2191. ...............................................................................
  2192. MatchersRanges.tests.cpp:<line number>: PASSED:
  2193. REQUIRE_THAT( unrelated::ADL_empty{}, IsEmpty() )
  2194. with expansion:
  2195. {?} is empty
  2196. -------------------------------------------------------------------------------
  2197. CAPTURE can deal with complex expressions
  2198. -------------------------------------------------------------------------------
  2199. Message.tests.cpp:<line number>
  2200. ...............................................................................
  2201. Message.tests.cpp:<line number>: PASSED:
  2202. with messages:
  2203. a := 1
  2204. b := 2
  2205. c := 3
  2206. a + b := 3
  2207. a+b := 3
  2208. c > b := true
  2209. a == 1 := true
  2210. -------------------------------------------------------------------------------
  2211. CAPTURE can deal with complex expressions involving commas
  2212. -------------------------------------------------------------------------------
  2213. Message.tests.cpp:<line number>
  2214. ...............................................................................
  2215. Message.tests.cpp:<line number>: PASSED:
  2216. with messages:
  2217. std::vector<int>{1, 2, 3}[0, 1, 2] := 3
  2218. std::vector<int>{1, 2, 3}[(0, 1)] := 2
  2219. std::vector<int>{1, 2, 3}[0] := 1
  2220. (helper_1436<int, int>{12, -12}) := { 12, -12 }
  2221. (helper_1436<int, int>(-12, 12)) := { -12, 12 }
  2222. (1, 2) := 2
  2223. (2, 3) := 3
  2224. -------------------------------------------------------------------------------
  2225. CAPTURE parses string and character constants
  2226. -------------------------------------------------------------------------------
  2227. Message.tests.cpp:<line number>
  2228. ...............................................................................
  2229. Message.tests.cpp:<line number>: PASSED:
  2230. with messages:
  2231. ("comma, in string", "escaped, \", ") := "escaped, ", "
  2232. "single quote in string,'," := "single quote in string,',"
  2233. "some escapes, \\,\\\\" := "some escapes, \,\\"
  2234. "some, ), unmatched, } prenheses {[<" := "some, ), unmatched, } prenheses {[
  2235. <"
  2236. '"' := '"'
  2237. '\'' := '''
  2238. ',' := ','
  2239. '}' := '}'
  2240. ')' := ')'
  2241. '(' := '('
  2242. '{' := '{'
  2243. -------------------------------------------------------------------------------
  2244. Capture and info messages
  2245. Capture should stringify like assertions
  2246. -------------------------------------------------------------------------------
  2247. ToStringGeneral.tests.cpp:<line number>
  2248. ...............................................................................
  2249. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2250. REQUIRE( true )
  2251. with message:
  2252. i := 2
  2253. -------------------------------------------------------------------------------
  2254. Capture and info messages
  2255. Info should NOT stringify the way assertions do
  2256. -------------------------------------------------------------------------------
  2257. ToStringGeneral.tests.cpp:<line number>
  2258. ...............................................................................
  2259. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2260. REQUIRE( true )
  2261. with message:
  2262. 3
  2263. -------------------------------------------------------------------------------
  2264. CaseInsensitiveEqualsTo is case insensitive
  2265. Degenerate cases
  2266. -------------------------------------------------------------------------------
  2267. Details.tests.cpp:<line number>
  2268. ...............................................................................
  2269. Details.tests.cpp:<line number>: PASSED:
  2270. REQUIRE( eq( "", "" ) )
  2271. with expansion:
  2272. true
  2273. Details.tests.cpp:<line number>: PASSED:
  2274. REQUIRE_FALSE( eq( "", "a" ) )
  2275. with expansion:
  2276. !false
  2277. -------------------------------------------------------------------------------
  2278. CaseInsensitiveEqualsTo is case insensitive
  2279. Plain comparisons
  2280. -------------------------------------------------------------------------------
  2281. Details.tests.cpp:<line number>
  2282. ...............................................................................
  2283. Details.tests.cpp:<line number>: PASSED:
  2284. REQUIRE( eq( "a", "a" ) )
  2285. with expansion:
  2286. true
  2287. Details.tests.cpp:<line number>: PASSED:
  2288. REQUIRE( eq( "a", "A" ) )
  2289. with expansion:
  2290. true
  2291. Details.tests.cpp:<line number>: PASSED:
  2292. REQUIRE( eq( "A", "a" ) )
  2293. with expansion:
  2294. true
  2295. Details.tests.cpp:<line number>: PASSED:
  2296. REQUIRE( eq( "A", "A" ) )
  2297. with expansion:
  2298. true
  2299. Details.tests.cpp:<line number>: PASSED:
  2300. REQUIRE_FALSE( eq( "a", "b" ) )
  2301. with expansion:
  2302. !false
  2303. Details.tests.cpp:<line number>: PASSED:
  2304. REQUIRE_FALSE( eq( "a", "B" ) )
  2305. with expansion:
  2306. !false
  2307. -------------------------------------------------------------------------------
  2308. CaseInsensitiveLess is case insensitive
  2309. Degenerate cases
  2310. -------------------------------------------------------------------------------
  2311. Details.tests.cpp:<line number>
  2312. ...............................................................................
  2313. Details.tests.cpp:<line number>: PASSED:
  2314. REQUIRE( lt( "", "a" ) )
  2315. with expansion:
  2316. true
  2317. Details.tests.cpp:<line number>: PASSED:
  2318. REQUIRE_FALSE( lt( "a", "a" ) )
  2319. with expansion:
  2320. !false
  2321. Details.tests.cpp:<line number>: PASSED:
  2322. REQUIRE_FALSE( lt( "", "" ) )
  2323. with expansion:
  2324. !false
  2325. -------------------------------------------------------------------------------
  2326. CaseInsensitiveLess is case insensitive
  2327. Plain comparisons
  2328. -------------------------------------------------------------------------------
  2329. Details.tests.cpp:<line number>
  2330. ...............................................................................
  2331. Details.tests.cpp:<line number>: PASSED:
  2332. REQUIRE( lt( "a", "b" ) )
  2333. with expansion:
  2334. true
  2335. Details.tests.cpp:<line number>: PASSED:
  2336. REQUIRE( lt( "a", "B" ) )
  2337. with expansion:
  2338. true
  2339. Details.tests.cpp:<line number>: PASSED:
  2340. REQUIRE( lt( "A", "b" ) )
  2341. with expansion:
  2342. true
  2343. Details.tests.cpp:<line number>: PASSED:
  2344. REQUIRE( lt( "A", "B" ) )
  2345. with expansion:
  2346. true
  2347. -------------------------------------------------------------------------------
  2348. Character pretty printing
  2349. Specifically escaped
  2350. -------------------------------------------------------------------------------
  2351. ToStringGeneral.tests.cpp:<line number>
  2352. ...............................................................................
  2353. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2354. CHECK( tab == '\t' )
  2355. with expansion:
  2356. '\t' == '\t'
  2357. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2358. CHECK( newline == '\n' )
  2359. with expansion:
  2360. '\n' == '\n'
  2361. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2362. CHECK( carr_return == '\r' )
  2363. with expansion:
  2364. '\r' == '\r'
  2365. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2366. CHECK( form_feed == '\f' )
  2367. with expansion:
  2368. '\f' == '\f'
  2369. -------------------------------------------------------------------------------
  2370. Character pretty printing
  2371. General chars
  2372. -------------------------------------------------------------------------------
  2373. ToStringGeneral.tests.cpp:<line number>
  2374. ...............................................................................
  2375. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2376. CHECK( space == ' ' )
  2377. with expansion:
  2378. ' ' == ' '
  2379. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2380. REQUIRE( c == chars[i] )
  2381. with expansion:
  2382. 'a' == 'a'
  2383. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2384. REQUIRE( c == chars[i] )
  2385. with expansion:
  2386. 'z' == 'z'
  2387. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2388. REQUIRE( c == chars[i] )
  2389. with expansion:
  2390. 'A' == 'A'
  2391. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2392. REQUIRE( c == chars[i] )
  2393. with expansion:
  2394. 'Z' == 'Z'
  2395. -------------------------------------------------------------------------------
  2396. Character pretty printing
  2397. Low ASCII
  2398. -------------------------------------------------------------------------------
  2399. ToStringGeneral.tests.cpp:<line number>
  2400. ...............................................................................
  2401. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2402. CHECK( null_terminator == '\0' )
  2403. with expansion:
  2404. 0 == 0
  2405. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2406. REQUIRE( c == i )
  2407. with expansion:
  2408. 2 == 2
  2409. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2410. REQUIRE( c == i )
  2411. with expansion:
  2412. 3 == 3
  2413. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2414. REQUIRE( c == i )
  2415. with expansion:
  2416. 4 == 4
  2417. ToStringGeneral.tests.cpp:<line number>: PASSED:
  2418. REQUIRE( c == i )
  2419. with expansion:
  2420. 5 == 5
  2421. -------------------------------------------------------------------------------
  2422. Clara::Arg supports single-arg parse the way Opt does
  2423. -------------------------------------------------------------------------------
  2424. Clara.tests.cpp:<line number>
  2425. ...............................................................................
  2426. Clara.tests.cpp:<line number>: PASSED:
  2427. CHECK( name.empty() )
  2428. with expansion:
  2429. true
  2430. Clara.tests.cpp:<line number>: PASSED:
  2431. REQUIRE( name == "foo" )
  2432. with expansion:
  2433. "foo" == "foo"
  2434. -------------------------------------------------------------------------------
  2435. Clara::Opt supports accept-many lambdas
  2436. Parsing fails on multiple options without accept_many
  2437. -------------------------------------------------------------------------------
  2438. Clara.tests.cpp:<line number>
  2439. ...............................................................................
  2440. Clara.tests.cpp:<line number>: PASSED:
  2441. CHECK_FALSE( parse_result )
  2442. with expansion:
  2443. !{?}
  2444. -------------------------------------------------------------------------------
  2445. Clara::Opt supports accept-many lambdas
  2446. Parsing succeeds on multiple options with accept_many
  2447. -------------------------------------------------------------------------------
  2448. Clara.tests.cpp:<line number>
  2449. ...............................................................................
  2450. Clara.tests.cpp:<line number>: PASSED:
  2451. CHECK( parse_result )
  2452. with expansion:
  2453. {?}
  2454. Clara.tests.cpp:<line number>: PASSED:
  2455. CHECK( res == std::vector<std::string>{ "aaa", "bbb" } )
  2456. with expansion:
  2457. { "aaa", "bbb" } == { "aaa", "bbb" }
  2458. -------------------------------------------------------------------------------
  2459. ColourGuard behaviour
  2460. ColourGuard is disengaged by default
  2461. -------------------------------------------------------------------------------
  2462. ColourImpl.tests.cpp:<line number>
  2463. ...............................................................................
  2464. ColourImpl.tests.cpp:<line number>: PASSED:
  2465. REQUIRE( streamWrapper.str().empty() )
  2466. with expansion:
  2467. true
  2468. -------------------------------------------------------------------------------
  2469. ColourGuard behaviour
  2470. ColourGuard is engaged by op<<
  2471. -------------------------------------------------------------------------------
  2472. ColourImpl.tests.cpp:<line number>
  2473. ...............................................................................
  2474. ColourImpl.tests.cpp:<line number>: PASSED:
  2475. REQUIRE( streamWrapper.str() == "1\nUsing code: 2\n2\nUsing code: 0\n3\n" )
  2476. with expansion:
  2477. "1
  2478. Using code: 2
  2479. 2
  2480. Using code: 0
  2481. 3
  2482. "
  2483. ==
  2484. "1
  2485. Using code: 2
  2486. 2
  2487. Using code: 0
  2488. 3
  2489. "
  2490. -------------------------------------------------------------------------------
  2491. ColourGuard behaviour
  2492. ColourGuard can be engaged explicitly
  2493. -------------------------------------------------------------------------------
  2494. ColourImpl.tests.cpp:<line number>
  2495. ...............................................................................
  2496. ColourImpl.tests.cpp:<line number>: PASSED:
  2497. REQUIRE( streamWrapper.str() == "Using code: 2\nA\nB\nUsing code: 0\nC\n" )
  2498. with expansion:
  2499. "Using code: 2
  2500. A
  2501. B
  2502. Using code: 0
  2503. C
  2504. "
  2505. ==
  2506. "Using code: 2
  2507. A
  2508. B
  2509. Using code: 0
  2510. C
  2511. "
  2512. -------------------------------------------------------------------------------
  2513. Combining MatchAllOfGeneric does not nest
  2514. -------------------------------------------------------------------------------
  2515. Matchers.tests.cpp:<line number>
  2516. ...............................................................................
  2517. Matchers.tests.cpp:<line number>: PASSED:
  2518. with message:
  2519. std::is_same< decltype( ( MatcherA() && MatcherB() ) && MatcherC() ), Catch::
  2520. Matchers::Detail:: MatchAllOfGeneric<MatcherA, MatcherB, MatcherC>>::value
  2521. Matchers.tests.cpp:<line number>: PASSED:
  2522. REQUIRE_THAT( 1, ( MatcherA() && MatcherB() ) && MatcherC() )
  2523. with expansion:
  2524. 1 ( equals: (int) 1 or (string) "1" and equals: (long long) 1 and equals: (T)
  2525. 1 )
  2526. Matchers.tests.cpp:<line number>: PASSED:
  2527. with message:
  2528. std::is_same< decltype( MatcherA() && ( MatcherB() && MatcherC() ) ), Catch::
  2529. Matchers::Detail:: MatchAllOfGeneric<MatcherA, MatcherB, MatcherC>>::value
  2530. Matchers.tests.cpp:<line number>: PASSED:
  2531. REQUIRE_THAT( 1, MatcherA() && ( MatcherB() && MatcherC() ) )
  2532. with expansion:
  2533. 1 ( equals: (int) 1 or (string) "1" and equals: (long long) 1 and equals: (T)
  2534. 1 )
  2535. Matchers.tests.cpp:<line number>: PASSED:
  2536. with message:
  2537. std::is_same< decltype( ( MatcherA() && MatcherB() ) && ( MatcherC() &&
  2538. MatcherD() ) ), Catch::Matchers::Detail:: MatchAllOfGeneric<MatcherA,
  2539. MatcherB, MatcherC, MatcherD>>:: value
  2540. Matchers.tests.cpp:<line number>: PASSED:
  2541. REQUIRE_THAT( 1, ( MatcherA() && MatcherB() ) && ( MatcherC() && MatcherD() ) )
  2542. with expansion:
  2543. 1 ( equals: (int) 1 or (string) "1" and equals: (long long) 1 and equals: (T)
  2544. 1 and equals: true )
  2545. -------------------------------------------------------------------------------
  2546. Combining MatchAnyOfGeneric does not nest
  2547. -------------------------------------------------------------------------------
  2548. Matchers.tests.cpp:<line number>
  2549. ...............................................................................
  2550. Matchers.tests.cpp:<line number>: PASSED:
  2551. with message:
  2552. std::is_same< decltype( ( MatcherA() || MatcherB() ) || MatcherC() ), Catch::
  2553. Matchers::Detail:: MatchAnyOfGeneric<MatcherA, MatcherB, MatcherC>>::value
  2554. Matchers.tests.cpp:<line number>: PASSED:
  2555. REQUIRE_THAT( 1, ( MatcherA() || MatcherB() ) || MatcherC() )
  2556. with expansion:
  2557. 1 ( equals: (int) 1 or (string) "1" or equals: (long long) 1 or equals: (T) 1
  2558. )
  2559. Matchers.tests.cpp:<line number>: PASSED:
  2560. with message:
  2561. std::is_same< decltype( MatcherA() || ( MatcherB() || MatcherC() ) ), Catch::
  2562. Matchers::Detail:: MatchAnyOfGeneric<MatcherA, MatcherB, MatcherC>>::value
  2563. Matchers.tests.cpp:<line number>: PASSED:
  2564. REQUIRE_THAT( 1, MatcherA() || ( MatcherB() || MatcherC() ) )
  2565. with expansion:
  2566. 1 ( equals: (int) 1 or (string) "1" or equals: (long long) 1 or equals: (T) 1
  2567. )
  2568. Matchers.tests.cpp:<line number>: PASSED:
  2569. with message:
  2570. std::is_same< decltype( ( MatcherA() || MatcherB() ) || ( MatcherC() ||
  2571. MatcherD() ) ), Catch::Matchers::Detail:: MatchAnyOfGeneric<MatcherA,
  2572. MatcherB, MatcherC, MatcherD>>:: value
  2573. Matchers.tests.cpp:<line number>: PASSED:
  2574. REQUIRE_THAT( 1, ( MatcherA() || MatcherB() ) || ( MatcherC() || MatcherD() ) )
  2575. with expansion:
  2576. 1 ( equals: (int) 1 or (string) "1" or equals: (long long) 1 or equals: (T) 1
  2577. or equals: true )
  2578. -------------------------------------------------------------------------------
  2579. Combining MatchNotOfGeneric does not nest
  2580. -------------------------------------------------------------------------------
  2581. Matchers.tests.cpp:<line number>
  2582. ...............................................................................
  2583. Matchers.tests.cpp:<line number>: PASSED:
  2584. with message:
  2585. std::is_same< decltype( !MatcherA() ), Catch::Matchers::Detail::
  2586. MatchNotOfGeneric<MatcherA>>::value
  2587. Matchers.tests.cpp:<line number>: PASSED:
  2588. REQUIRE_THAT( 0, !MatcherA() )
  2589. with expansion:
  2590. 0 not equals: (int) 1 or (string) "1"
  2591. Matchers.tests.cpp:<line number>: PASSED:
  2592. with message:
  2593. std::is_same<decltype( !!MatcherA() ), MatcherA const&>::value
  2594. Matchers.tests.cpp:<line number>: PASSED:
  2595. REQUIRE_THAT( 1, !!MatcherA() )
  2596. with expansion:
  2597. 1 equals: (int) 1 or (string) "1"
  2598. Matchers.tests.cpp:<line number>: PASSED:
  2599. with message:
  2600. std::is_same< decltype( !!!MatcherA() ), Catch::Matchers::Detail::
  2601. MatchNotOfGeneric<MatcherA>>::value
  2602. Matchers.tests.cpp:<line number>: PASSED:
  2603. REQUIRE_THAT( 0, !!!MatcherA() )
  2604. with expansion:
  2605. 0 not equals: (int) 1 or (string) "1"
  2606. Matchers.tests.cpp:<line number>: PASSED:
  2607. with message:
  2608. std::is_same<decltype( !!!!MatcherA() ), MatcherA const&>::value
  2609. Matchers.tests.cpp:<line number>: PASSED:
  2610. REQUIRE_THAT( 1, !!!!MatcherA() )
  2611. with expansion:
  2612. 1 equals: (int) 1 or (string) "1"
  2613. -------------------------------------------------------------------------------
  2614. Combining concrete matchers does not use templated matchers
  2615. -------------------------------------------------------------------------------
  2616. Matchers.tests.cpp:<line number>
  2617. ...............................................................................
  2618. Matchers.tests.cpp:<line number>: PASSED:
  2619. with message:
  2620. std::is_same<decltype( StartsWith( "foo" ) || ( StartsWith( "bar" ) &&
  2621. EndsWith( "bar" ) && !EndsWith( "foo" ) ) ), Catch::Matchers::Detail::
  2622. MatchAnyOf<std::string>>::value
  2623. -------------------------------------------------------------------------------
  2624. Combining only templated matchers
  2625. -------------------------------------------------------------------------------
  2626. Matchers.tests.cpp:<line number>
  2627. ...............................................................................
  2628. Matchers.tests.cpp:<line number>: PASSED:
  2629. with message:
  2630. std::is_same<decltype( MatcherA() || MatcherB() ), Catch::Matchers::Detail::
  2631. MatchAnyOfGeneric<MatcherA, MatcherB>>::value
  2632. Matchers.tests.cpp:<line number>: PASSED:
  2633. REQUIRE_THAT( 1, MatcherA() || MatcherB() )
  2634. with expansion:
  2635. 1 ( equals: (int) 1 or (string) "1" or equals: (long long) 1 )
  2636. Matchers.tests.cpp:<line number>: PASSED:
  2637. with message:
  2638. std::is_same<decltype( MatcherA() && MatcherB() ), Catch::Matchers::Detail::
  2639. MatchAllOfGeneric<MatcherA, MatcherB>>::value
  2640. Matchers.tests.cpp:<line number>: PASSED:
  2641. REQUIRE_THAT( 1, MatcherA() && MatcherB() )
  2642. with expansion:
  2643. 1 ( equals: (int) 1 or (string) "1" and equals: (long long) 1 )
  2644. Matchers.tests.cpp:<line number>: PASSED:
  2645. with message:
  2646. std::is_same< decltype( MatcherA() || !MatcherB() ), Catch::Matchers::Detail:
  2647. :MatchAnyOfGeneric< MatcherA, Catch::Matchers::Detail::MatchNotOfGeneric
  2648. <MatcherB>>>::value
  2649. Matchers.tests.cpp:<line number>: PASSED:
  2650. REQUIRE_THAT( 1, MatcherA() || !MatcherB() )
  2651. with expansion:
  2652. 1 ( equals: (int) 1 or (string) "1" or not equals: (long long) 1 )
  2653. -------------------------------------------------------------------------------
  2654. Combining templated and concrete matchers
  2655. -------------------------------------------------------------------------------
  2656. Matchers.tests.cpp:<line number>
  2657. ...............................................................................
  2658. Matchers.tests.cpp:<line number>: PASSED:
  2659. REQUIRE_THAT( vec, Predicate<std::vector<int>>( []( auto const& v ) { return std::all_of( v.begin(), v.end(), []( int elem ) { return elem % 2 == 1; } ); }, "All elements are odd" ) && !EqualsRange( a ) )
  2660. with expansion:
  2661. { 1, 3, 5 } ( matches predicate: "All elements are odd" and not Equals: { 5,
  2662. 3, 1 } )
  2663. Matchers.tests.cpp:<line number>: PASSED:
  2664. REQUIRE_THAT( str, StartsWith( "foo" ) && EqualsRange( arr ) && EndsWith( "bar" ) )
  2665. with expansion:
  2666. "foobar" ( starts with: "foo" and Equals: { 'f', 'o', 'o', 'b', 'a', 'r' }
  2667. and ends with: "bar" )
  2668. Matchers.tests.cpp:<line number>: PASSED:
  2669. REQUIRE_THAT( str, StartsWith( "foo" ) && !EqualsRange( bad_arr ) && EndsWith( "bar" ) )
  2670. with expansion:
  2671. "foobar" ( starts with: "foo" and not Equals: { 'o', 'o', 'f', 'b', 'a', 'r'
  2672. } and ends with: "bar" )
  2673. Matchers.tests.cpp:<line number>: PASSED:
  2674. REQUIRE_THAT( str, EqualsRange( arr ) && StartsWith( "foo" ) && EndsWith( "bar" ) )
  2675. with expansion:
  2676. "foobar" ( Equals: { 'f', 'o', 'o', 'b', 'a', 'r' } and starts with: "foo"
  2677. and ends with: "bar" )
  2678. Matchers.tests.cpp:<line number>: PASSED:
  2679. REQUIRE_THAT( str, !EqualsRange( bad_arr ) && StartsWith( "foo" ) && EndsWith( "bar" ) )
  2680. with expansion:
  2681. "foobar" ( not Equals: { 'o', 'o', 'f', 'b', 'a', 'r' } and starts with:
  2682. "foo" and ends with: "bar" )
  2683. Matchers.tests.cpp:<line number>: PASSED:
  2684. REQUIRE_THAT( str, EqualsRange( bad_arr ) || ( StartsWith( "foo" ) && EndsWith( "bar" ) ) )
  2685. with expansion:
  2686. "foobar" ( Equals: { 'o', 'o', 'f', 'b', 'a', 'r' } or ( starts with: "foo"
  2687. and ends with: "bar" ) )
  2688. Matchers.tests.cpp:<line number>: PASSED:
  2689. REQUIRE_THAT( str, ( StartsWith( "foo" ) && EndsWith( "bar" ) ) || EqualsRange( bad_arr ) )
  2690. with expansion:
  2691. "foobar" ( ( starts with: "foo" and ends with: "bar" ) or Equals: { 'o', 'o',
  2692. 'f', 'b', 'a', 'r' } )
  2693. -------------------------------------------------------------------------------
  2694. Combining templated matchers
  2695. -------------------------------------------------------------------------------
  2696. Matchers.tests.cpp:<line number>
  2697. ...............................................................................
  2698. Matchers.tests.cpp:<line number>: PASSED:
  2699. REQUIRE_THAT( container, EqualsRange( a ) || EqualsRange( b ) || EqualsRange( c ) )
  2700. with expansion:
  2701. { 1, 2, 3 } ( Equals: { 1, 2, 3 } or Equals: { 0, 1, 2 } or Equals: { 4, 5, 6
  2702. } )
  2703. -------------------------------------------------------------------------------
  2704. Commas in various macros are allowed
  2705. -------------------------------------------------------------------------------
  2706. Tricky.tests.cpp:<line number>
  2707. ...............................................................................
  2708. Tricky.tests.cpp:<line number>: PASSED:
  2709. REQUIRE_THROWS( std::vector<constructor_throws>{constructor_throws{}, constructor_throws{}} )
  2710. Tricky.tests.cpp:<line number>: PASSED:
  2711. CHECK_THROWS( std::vector<constructor_throws>{constructor_throws{}, constructor_throws{}} )
  2712. Tricky.tests.cpp:<line number>: PASSED:
  2713. REQUIRE_NOTHROW( std::vector<int>{1, 2, 3} == std::vector<int>{1, 2, 3} )
  2714. Tricky.tests.cpp:<line number>: PASSED:
  2715. CHECK_NOTHROW( std::vector<int>{1, 2, 3} == std::vector<int>{1, 2, 3} )
  2716. Tricky.tests.cpp:<line number>: PASSED:
  2717. REQUIRE( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
  2718. with expansion:
  2719. { 1, 2 } == { 1, 2 }
  2720. Tricky.tests.cpp:<line number>: PASSED:
  2721. CHECK( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
  2722. with expansion:
  2723. { 1, 2 } == { 1, 2 }
  2724. Tricky.tests.cpp:<line number>: PASSED:
  2725. REQUIRE_FALSE( std::vector<int>{1, 2} == std::vector<int>{1, 2, 3} )
  2726. with expansion:
  2727. !({ 1, 2 } == { 1, 2, 3 })
  2728. Tricky.tests.cpp:<line number>: PASSED:
  2729. CHECK_FALSE( std::vector<int>{1, 2} == std::vector<int>{1, 2, 3} )
  2730. with expansion:
  2731. !({ 1, 2 } == { 1, 2, 3 })
  2732. Tricky.tests.cpp:<line number>: PASSED:
  2733. CHECK_NOFAIL( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
  2734. with expansion:
  2735. { 1, 2 } == { 1, 2 }
  2736. Tricky.tests.cpp:<line number>: PASSED:
  2737. CHECKED_IF( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
  2738. with expansion:
  2739. { 1, 2 } == { 1, 2 }
  2740. Tricky.tests.cpp:<line number>: PASSED:
  2741. REQUIRE( true )
  2742. Tricky.tests.cpp:<line number>: PASSED:
  2743. CHECKED_ELSE( std::vector<int>{1, 2} == std::vector<int>{1, 2} )
  2744. with expansion:
  2745. { 1, 2 } == { 1, 2 }
  2746. -------------------------------------------------------------------------------
  2747. Comparing function pointers
  2748. -------------------------------------------------------------------------------
  2749. Tricky.tests.cpp:<line number>
  2750. ...............................................................................
  2751. Tricky.tests.cpp:<line number>: PASSED:
  2752. REQUIRE( a )
  2753. with expansion:
  2754. 0x<hex digits>
  2755. Tricky.tests.cpp:<line number>: PASSED:
  2756. REQUIRE( a == &foo )
  2757. with expansion:
  2758. 0x<hex digits> == 0x<hex digits>
  2759. -------------------------------------------------------------------------------
  2760. Comparison ops
  2761. -------------------------------------------------------------------------------
  2762. RandomNumberGeneration.tests.cpp:<line number>
  2763. ...............................................................................
  2764. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  2765. REQUIRE( SimplePcg32{} == SimplePcg32{} )
  2766. with expansion:
  2767. {?} == {?}
  2768. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  2769. REQUIRE( SimplePcg32{ 0 } != SimplePcg32{} )
  2770. with expansion:
  2771. {?} != {?}
  2772. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  2773. REQUIRE_FALSE( SimplePcg32{ 1 } == SimplePcg32{ 2 } )
  2774. with expansion:
  2775. !({?} == {?})
  2776. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  2777. REQUIRE_FALSE( SimplePcg32{ 1 } != SimplePcg32{ 1 } )
  2778. with expansion:
  2779. !({?} != {?})
  2780. -------------------------------------------------------------------------------
  2781. Comparison with explicitly convertible types
  2782. -------------------------------------------------------------------------------
  2783. Approx.tests.cpp:<line number>
  2784. ...............................................................................
  2785. Approx.tests.cpp:<line number>: PASSED:
  2786. REQUIRE( td == Approx(10.0) )
  2787. with expansion:
  2788. StrongDoubleTypedef(10) == Approx( 10.0 )
  2789. Approx.tests.cpp:<line number>: PASSED:
  2790. REQUIRE( Approx(10.0) == td )
  2791. with expansion:
  2792. Approx( 10.0 ) == StrongDoubleTypedef(10)
  2793. Approx.tests.cpp:<line number>: PASSED:
  2794. REQUIRE( td != Approx(11.0) )
  2795. with expansion:
  2796. StrongDoubleTypedef(10) != Approx( 11.0 )
  2797. Approx.tests.cpp:<line number>: PASSED:
  2798. REQUIRE( Approx(11.0) != td )
  2799. with expansion:
  2800. Approx( 11.0 ) != StrongDoubleTypedef(10)
  2801. Approx.tests.cpp:<line number>: PASSED:
  2802. REQUIRE( td <= Approx(10.0) )
  2803. with expansion:
  2804. StrongDoubleTypedef(10) <= Approx( 10.0 )
  2805. Approx.tests.cpp:<line number>: PASSED:
  2806. REQUIRE( td <= Approx(11.0) )
  2807. with expansion:
  2808. StrongDoubleTypedef(10) <= Approx( 11.0 )
  2809. Approx.tests.cpp:<line number>: PASSED:
  2810. REQUIRE( Approx(10.0) <= td )
  2811. with expansion:
  2812. Approx( 10.0 ) <= StrongDoubleTypedef(10)
  2813. Approx.tests.cpp:<line number>: PASSED:
  2814. REQUIRE( Approx(9.0) <= td )
  2815. with expansion:
  2816. Approx( 9.0 ) <= StrongDoubleTypedef(10)
  2817. Approx.tests.cpp:<line number>: PASSED:
  2818. REQUIRE( td >= Approx(9.0) )
  2819. with expansion:
  2820. StrongDoubleTypedef(10) >= Approx( 9.0 )
  2821. Approx.tests.cpp:<line number>: PASSED:
  2822. REQUIRE( td >= Approx(td) )
  2823. with expansion:
  2824. StrongDoubleTypedef(10) >= Approx( 10.0 )
  2825. Approx.tests.cpp:<line number>: PASSED:
  2826. REQUIRE( Approx(td) >= td )
  2827. with expansion:
  2828. Approx( 10.0 ) >= StrongDoubleTypedef(10)
  2829. Approx.tests.cpp:<line number>: PASSED:
  2830. REQUIRE( Approx(11.0) >= td )
  2831. with expansion:
  2832. Approx( 11.0 ) >= StrongDoubleTypedef(10)
  2833. -------------------------------------------------------------------------------
  2834. Comparisons between ints where one side is computed
  2835. -------------------------------------------------------------------------------
  2836. Condition.tests.cpp:<line number>
  2837. ...............................................................................
  2838. Condition.tests.cpp:<line number>: PASSED:
  2839. CHECK( 54 == 6*9 )
  2840. with expansion:
  2841. 54 == 54
  2842. -------------------------------------------------------------------------------
  2843. Comparisons between unsigned ints and negative signed ints match c++ standard
  2844. behaviour
  2845. -------------------------------------------------------------------------------
  2846. Condition.tests.cpp:<line number>
  2847. ...............................................................................
  2848. Condition.tests.cpp:<line number>: PASSED:
  2849. CHECK( ( -1 > 2u ) )
  2850. with expansion:
  2851. true
  2852. Condition.tests.cpp:<line number>: PASSED:
  2853. CHECK( -1 > 2u )
  2854. with expansion:
  2855. -1 > 2
  2856. Condition.tests.cpp:<line number>: PASSED:
  2857. CHECK( ( 2u < -1 ) )
  2858. with expansion:
  2859. true
  2860. Condition.tests.cpp:<line number>: PASSED:
  2861. CHECK( 2u < -1 )
  2862. with expansion:
  2863. 2 < -1
  2864. Condition.tests.cpp:<line number>: PASSED:
  2865. CHECK( ( minInt > 2u ) )
  2866. with expansion:
  2867. true
  2868. Condition.tests.cpp:<line number>: PASSED:
  2869. CHECK( minInt > 2u )
  2870. with expansion:
  2871. -2147483648 > 2
  2872. -------------------------------------------------------------------------------
  2873. Comparisons with int literals don't warn when mixing signed/ unsigned
  2874. -------------------------------------------------------------------------------
  2875. Condition.tests.cpp:<line number>
  2876. ...............................................................................
  2877. Condition.tests.cpp:<line number>: PASSED:
  2878. REQUIRE( i == 1 )
  2879. with expansion:
  2880. 1 == 1
  2881. Condition.tests.cpp:<line number>: PASSED:
  2882. REQUIRE( ui == 2 )
  2883. with expansion:
  2884. 2 == 2
  2885. Condition.tests.cpp:<line number>: PASSED:
  2886. REQUIRE( l == 3 )
  2887. with expansion:
  2888. 3 == 3
  2889. Condition.tests.cpp:<line number>: PASSED:
  2890. REQUIRE( ul == 4 )
  2891. with expansion:
  2892. 4 == 4
  2893. Condition.tests.cpp:<line number>: PASSED:
  2894. REQUIRE( c == 5 )
  2895. with expansion:
  2896. 5 == 5
  2897. Condition.tests.cpp:<line number>: PASSED:
  2898. REQUIRE( uc == 6 )
  2899. with expansion:
  2900. 6 == 6
  2901. Condition.tests.cpp:<line number>: PASSED:
  2902. REQUIRE( 1 == i )
  2903. with expansion:
  2904. 1 == 1
  2905. Condition.tests.cpp:<line number>: PASSED:
  2906. REQUIRE( 2 == ui )
  2907. with expansion:
  2908. 2 == 2
  2909. Condition.tests.cpp:<line number>: PASSED:
  2910. REQUIRE( 3 == l )
  2911. with expansion:
  2912. 3 == 3
  2913. Condition.tests.cpp:<line number>: PASSED:
  2914. REQUIRE( 4 == ul )
  2915. with expansion:
  2916. 4 == 4
  2917. Condition.tests.cpp:<line number>: PASSED:
  2918. REQUIRE( 5 == c )
  2919. with expansion:
  2920. 5 == 5
  2921. Condition.tests.cpp:<line number>: PASSED:
  2922. REQUIRE( 6 == uc )
  2923. with expansion:
  2924. 6 == 6
  2925. Condition.tests.cpp:<line number>: PASSED:
  2926. REQUIRE( (std::numeric_limits<uint32_t>::max)() > ul )
  2927. with expansion:
  2928. 4294967295 (0x<hex digits>) > 4
  2929. -------------------------------------------------------------------------------
  2930. Composed generic matchers shortcircuit
  2931. MatchAllOf
  2932. -------------------------------------------------------------------------------
  2933. Matchers.tests.cpp:<line number>
  2934. ...............................................................................
  2935. Matchers.tests.cpp:<line number>: PASSED:
  2936. CHECK_FALSE( matcher.match( 1 ) )
  2937. with expansion:
  2938. !false
  2939. Matchers.tests.cpp:<line number>: PASSED:
  2940. REQUIRE( first.matchCalled )
  2941. with expansion:
  2942. true
  2943. Matchers.tests.cpp:<line number>: PASSED:
  2944. REQUIRE( !second.matchCalled )
  2945. with expansion:
  2946. true
  2947. -------------------------------------------------------------------------------
  2948. Composed generic matchers shortcircuit
  2949. MatchAnyOf
  2950. -------------------------------------------------------------------------------
  2951. Matchers.tests.cpp:<line number>
  2952. ...............................................................................
  2953. Matchers.tests.cpp:<line number>: PASSED:
  2954. CHECK( matcher.match( 1 ) )
  2955. with expansion:
  2956. true
  2957. Matchers.tests.cpp:<line number>: PASSED:
  2958. REQUIRE( first.matchCalled )
  2959. with expansion:
  2960. true
  2961. Matchers.tests.cpp:<line number>: PASSED:
  2962. REQUIRE( !second.matchCalled )
  2963. with expansion:
  2964. true
  2965. -------------------------------------------------------------------------------
  2966. Composed matchers shortcircuit
  2967. MatchAllOf
  2968. -------------------------------------------------------------------------------
  2969. Matchers.tests.cpp:<line number>
  2970. ...............................................................................
  2971. Matchers.tests.cpp:<line number>: PASSED:
  2972. CHECK_FALSE( matcher.match( 1 ) )
  2973. with expansion:
  2974. !false
  2975. Matchers.tests.cpp:<line number>: PASSED:
  2976. REQUIRE( first.matchCalled )
  2977. with expansion:
  2978. true
  2979. Matchers.tests.cpp:<line number>: PASSED:
  2980. REQUIRE( !second.matchCalled )
  2981. with expansion:
  2982. true
  2983. -------------------------------------------------------------------------------
  2984. Composed matchers shortcircuit
  2985. MatchAnyOf
  2986. -------------------------------------------------------------------------------
  2987. Matchers.tests.cpp:<line number>
  2988. ...............................................................................
  2989. Matchers.tests.cpp:<line number>: PASSED:
  2990. CHECK( matcher.match( 1 ) )
  2991. with expansion:
  2992. true
  2993. Matchers.tests.cpp:<line number>: PASSED:
  2994. REQUIRE( first.matchCalled )
  2995. with expansion:
  2996. true
  2997. Matchers.tests.cpp:<line number>: PASSED:
  2998. REQUIRE( !second.matchCalled )
  2999. with expansion:
  3000. true
  3001. -------------------------------------------------------------------------------
  3002. Contains string matcher
  3003. -------------------------------------------------------------------------------
  3004. Matchers.tests.cpp:<line number>
  3005. ...............................................................................
  3006. Matchers.tests.cpp:<line number>: FAILED:
  3007. CHECK_THAT( testStringForMatching(), ContainsSubstring( "not there", Catch::CaseSensitive::No ) )
  3008. with expansion:
  3009. "this string contains 'abc' as a substring" contains: "not there" (case
  3010. insensitive)
  3011. Matchers.tests.cpp:<line number>: FAILED:
  3012. CHECK_THAT( testStringForMatching(), ContainsSubstring( "STRING" ) )
  3013. with expansion:
  3014. "this string contains 'abc' as a substring" contains: "STRING"
  3015. -------------------------------------------------------------------------------
  3016. Copy and then generate a range
  3017. from var and iterators
  3018. -------------------------------------------------------------------------------
  3019. Generators.tests.cpp:<line number>
  3020. ...............................................................................
  3021. Generators.tests.cpp:<line number>: PASSED:
  3022. REQUIRE( elem % 2 == 1 )
  3023. with expansion:
  3024. 1 == 1
  3025. -------------------------------------------------------------------------------
  3026. Copy and then generate a range
  3027. from var and iterators
  3028. -------------------------------------------------------------------------------
  3029. Generators.tests.cpp:<line number>
  3030. ...............................................................................
  3031. Generators.tests.cpp:<line number>: PASSED:
  3032. REQUIRE( elem % 2 == 1 )
  3033. with expansion:
  3034. 1 == 1
  3035. -------------------------------------------------------------------------------
  3036. Copy and then generate a range
  3037. from var and iterators
  3038. -------------------------------------------------------------------------------
  3039. Generators.tests.cpp:<line number>
  3040. ...............................................................................
  3041. Generators.tests.cpp:<line number>: PASSED:
  3042. REQUIRE( elem % 2 == 1 )
  3043. with expansion:
  3044. 1 == 1
  3045. -------------------------------------------------------------------------------
  3046. Copy and then generate a range
  3047. from var and iterators
  3048. -------------------------------------------------------------------------------
  3049. Generators.tests.cpp:<line number>
  3050. ...............................................................................
  3051. Generators.tests.cpp:<line number>: PASSED:
  3052. REQUIRE( elem % 2 == 1 )
  3053. with expansion:
  3054. 1 == 1
  3055. -------------------------------------------------------------------------------
  3056. Copy and then generate a range
  3057. from var and iterators
  3058. -------------------------------------------------------------------------------
  3059. Generators.tests.cpp:<line number>
  3060. ...............................................................................
  3061. Generators.tests.cpp:<line number>: PASSED:
  3062. REQUIRE( elem % 2 == 1 )
  3063. with expansion:
  3064. 1 == 1
  3065. -------------------------------------------------------------------------------
  3066. Copy and then generate a range
  3067. from var and iterators
  3068. -------------------------------------------------------------------------------
  3069. Generators.tests.cpp:<line number>
  3070. ...............................................................................
  3071. Generators.tests.cpp:<line number>: PASSED:
  3072. REQUIRE( elem % 2 == 1 )
  3073. with expansion:
  3074. 1 == 1
  3075. -------------------------------------------------------------------------------
  3076. Copy and then generate a range
  3077. From a temporary container
  3078. -------------------------------------------------------------------------------
  3079. Generators.tests.cpp:<line number>
  3080. ...............................................................................
  3081. Generators.tests.cpp:<line number>: PASSED:
  3082. REQUIRE( elem % 2 == 1 )
  3083. with expansion:
  3084. 1 == 1
  3085. -------------------------------------------------------------------------------
  3086. Copy and then generate a range
  3087. From a temporary container
  3088. -------------------------------------------------------------------------------
  3089. Generators.tests.cpp:<line number>
  3090. ...............................................................................
  3091. Generators.tests.cpp:<line number>: PASSED:
  3092. REQUIRE( elem % 2 == 1 )
  3093. with expansion:
  3094. 1 == 1
  3095. -------------------------------------------------------------------------------
  3096. Copy and then generate a range
  3097. From a temporary container
  3098. -------------------------------------------------------------------------------
  3099. Generators.tests.cpp:<line number>
  3100. ...............................................................................
  3101. Generators.tests.cpp:<line number>: PASSED:
  3102. REQUIRE( elem % 2 == 1 )
  3103. with expansion:
  3104. 1 == 1
  3105. -------------------------------------------------------------------------------
  3106. Copy and then generate a range
  3107. From a temporary container
  3108. -------------------------------------------------------------------------------
  3109. Generators.tests.cpp:<line number>
  3110. ...............................................................................
  3111. Generators.tests.cpp:<line number>: PASSED:
  3112. REQUIRE( elem % 2 == 1 )
  3113. with expansion:
  3114. 1 == 1
  3115. -------------------------------------------------------------------------------
  3116. Copy and then generate a range
  3117. From a temporary container
  3118. -------------------------------------------------------------------------------
  3119. Generators.tests.cpp:<line number>
  3120. ...............................................................................
  3121. Generators.tests.cpp:<line number>: PASSED:
  3122. REQUIRE( elem % 2 == 1 )
  3123. with expansion:
  3124. 1 == 1
  3125. -------------------------------------------------------------------------------
  3126. Copy and then generate a range
  3127. From a temporary container
  3128. -------------------------------------------------------------------------------
  3129. Generators.tests.cpp:<line number>
  3130. ...............................................................................
  3131. Generators.tests.cpp:<line number>: PASSED:
  3132. REQUIRE( elem % 2 == 1 )
  3133. with expansion:
  3134. 1 == 1
  3135. -------------------------------------------------------------------------------
  3136. Copy and then generate a range
  3137. Final validation
  3138. -------------------------------------------------------------------------------
  3139. Generators.tests.cpp:<line number>
  3140. ...............................................................................
  3141. Generators.tests.cpp:<line number>: PASSED:
  3142. REQUIRE( call_count == 1 )
  3143. with expansion:
  3144. 1 == 1
  3145. Generators.tests.cpp:<line number>: PASSED:
  3146. REQUIRE( make_data().size() == test_count )
  3147. with expansion:
  3148. 6 == 6
  3149. -------------------------------------------------------------------------------
  3150. Cout stream properly declares it writes to stdout
  3151. -------------------------------------------------------------------------------
  3152. Stream.tests.cpp:<line number>
  3153. ...............................................................................
  3154. Stream.tests.cpp:<line number>: PASSED:
  3155. REQUIRE( Catch::makeStream( "-" )->isConsole() )
  3156. with expansion:
  3157. true
  3158. -------------------------------------------------------------------------------
  3159. Custom exceptions can be translated when testing for nothrow
  3160. -------------------------------------------------------------------------------
  3161. Exception.tests.cpp:<line number>
  3162. ...............................................................................
  3163. Exception.tests.cpp:<line number>: FAILED:
  3164. REQUIRE_NOTHROW( throwCustom() )
  3165. due to unexpected exception with message:
  3166. custom exception - not std
  3167. -------------------------------------------------------------------------------
  3168. Custom exceptions can be translated when testing for throwing as something else
  3169. -------------------------------------------------------------------------------
  3170. Exception.tests.cpp:<line number>
  3171. ...............................................................................
  3172. Exception.tests.cpp:<line number>: FAILED:
  3173. REQUIRE_THROWS_AS( throwCustom(), std::exception )
  3174. due to unexpected exception with message:
  3175. custom exception - not std
  3176. -------------------------------------------------------------------------------
  3177. Custom std-exceptions can be custom translated
  3178. -------------------------------------------------------------------------------
  3179. Exception.tests.cpp:<line number>
  3180. ...............................................................................
  3181. Exception.tests.cpp:<line number>: FAILED:
  3182. due to unexpected exception with message:
  3183. custom std exception
  3184. -------------------------------------------------------------------------------
  3185. Default scale is invisible to comparison
  3186. -------------------------------------------------------------------------------
  3187. Approx.tests.cpp:<line number>
  3188. ...............................................................................
  3189. Approx.tests.cpp:<line number>: PASSED:
  3190. REQUIRE( 101.000001 != Approx(100).epsilon(0.01) )
  3191. with expansion:
  3192. 101.000001 != Approx( 100.0 )
  3193. Approx.tests.cpp:<line number>: PASSED:
  3194. REQUIRE( std::pow(10, -5) != Approx(std::pow(10, -7)) )
  3195. with expansion:
  3196. 0.00001 != Approx( 0.0000001 )
  3197. -------------------------------------------------------------------------------
  3198. Directly creating an EnumInfo
  3199. -------------------------------------------------------------------------------
  3200. ToString.tests.cpp:<line number>
  3201. ...............................................................................
  3202. ToString.tests.cpp:<line number>: PASSED:
  3203. CHECK( enumInfo->lookup(0) == "Value1" )
  3204. with expansion:
  3205. Value1 == "Value1"
  3206. ToString.tests.cpp:<line number>: PASSED:
  3207. CHECK( enumInfo->lookup(1) == "Value2" )
  3208. with expansion:
  3209. Value2 == "Value2"
  3210. ToString.tests.cpp:<line number>: PASSED:
  3211. CHECK( enumInfo->lookup(3) == "{** unexpected enum value **}" )
  3212. with expansion:
  3213. {** unexpected enum value **}
  3214. ==
  3215. "{** unexpected enum value **}"
  3216. -------------------------------------------------------------------------------
  3217. Empty stream name opens cout stream
  3218. -------------------------------------------------------------------------------
  3219. Stream.tests.cpp:<line number>
  3220. ...............................................................................
  3221. Stream.tests.cpp:<line number>: PASSED:
  3222. REQUIRE( Catch::makeStream( "" )->isConsole() )
  3223. with expansion:
  3224. true
  3225. -------------------------------------------------------------------------------
  3226. Empty tag is not allowed
  3227. -------------------------------------------------------------------------------
  3228. Tag.tests.cpp:<line number>
  3229. ...............................................................................
  3230. Tag.tests.cpp:<line number>: PASSED:
  3231. REQUIRE_THROWS( Catch::TestCaseInfo( "", { "fake test name", "[]" }, dummySourceLineInfo ) )
  3232. -------------------------------------------------------------------------------
  3233. EndsWith string matcher
  3234. -------------------------------------------------------------------------------
  3235. Matchers.tests.cpp:<line number>
  3236. ...............................................................................
  3237. Matchers.tests.cpp:<line number>: FAILED:
  3238. CHECK_THAT( testStringForMatching(), EndsWith( "Substring" ) )
  3239. with expansion:
  3240. "this string contains 'abc' as a substring" ends with: "Substring"
  3241. Matchers.tests.cpp:<line number>: FAILED:
  3242. CHECK_THAT( testStringForMatching(), EndsWith( "this", Catch::CaseSensitive::No ) )
  3243. with expansion:
  3244. "this string contains 'abc' as a substring" ends with: "this" (case
  3245. insensitive)
  3246. -------------------------------------------------------------------------------
  3247. Enums can quickly have stringification enabled using REGISTER_ENUM
  3248. -------------------------------------------------------------------------------
  3249. EnumToString.tests.cpp:<line number>
  3250. ...............................................................................
  3251. EnumToString.tests.cpp:<line number>: PASSED:
  3252. REQUIRE( stringify( EnumClass3::Value1 ) == "Value1" )
  3253. with expansion:
  3254. "Value1" == "Value1"
  3255. EnumToString.tests.cpp:<line number>: PASSED:
  3256. REQUIRE( stringify( EnumClass3::Value2 ) == "Value2" )
  3257. with expansion:
  3258. "Value2" == "Value2"
  3259. EnumToString.tests.cpp:<line number>: PASSED:
  3260. REQUIRE( stringify( EnumClass3::Value3 ) == "Value3" )
  3261. with expansion:
  3262. "Value3" == "Value3"
  3263. EnumToString.tests.cpp:<line number>: PASSED:
  3264. REQUIRE( stringify( EnumClass3::Value4 ) == "{** unexpected enum value **}" )
  3265. with expansion:
  3266. "{** unexpected enum value **}"
  3267. ==
  3268. "{** unexpected enum value **}"
  3269. EnumToString.tests.cpp:<line number>: PASSED:
  3270. REQUIRE( stringify( ec3 ) == "Value2" )
  3271. with expansion:
  3272. "Value2" == "Value2"
  3273. -------------------------------------------------------------------------------
  3274. Enums in namespaces can quickly have stringification enabled using
  3275. REGISTER_ENUM
  3276. -------------------------------------------------------------------------------
  3277. EnumToString.tests.cpp:<line number>
  3278. ...............................................................................
  3279. EnumToString.tests.cpp:<line number>: PASSED:
  3280. REQUIRE( stringify( Bikeshed::Colours::Red ) == "Red" )
  3281. with expansion:
  3282. "Red" == "Red"
  3283. EnumToString.tests.cpp:<line number>: PASSED:
  3284. REQUIRE( stringify( Bikeshed::Colours::Blue ) == "Blue" )
  3285. with expansion:
  3286. "Blue" == "Blue"
  3287. -------------------------------------------------------------------------------
  3288. Epsilon only applies to Approx's value
  3289. -------------------------------------------------------------------------------
  3290. Approx.tests.cpp:<line number>
  3291. ...............................................................................
  3292. Approx.tests.cpp:<line number>: PASSED:
  3293. REQUIRE( 101.01 != Approx(100).epsilon(0.01) )
  3294. with expansion:
  3295. 101.01 != Approx( 100.0 )
  3296. -------------------------------------------------------------------------------
  3297. Equality checks that should fail
  3298. -------------------------------------------------------------------------------
  3299. Condition.tests.cpp:<line number>
  3300. ...............................................................................
  3301. Condition.tests.cpp:<line number>: FAILED:
  3302. CHECK( data.int_seven == 6 )
  3303. with expansion:
  3304. 7 == 6
  3305. Condition.tests.cpp:<line number>: FAILED:
  3306. CHECK( data.int_seven == 8 )
  3307. with expansion:
  3308. 7 == 8
  3309. Condition.tests.cpp:<line number>: FAILED:
  3310. CHECK( data.int_seven == 0 )
  3311. with expansion:
  3312. 7 == 0
  3313. Condition.tests.cpp:<line number>: FAILED:
  3314. CHECK( data.float_nine_point_one == Approx( 9.11f ) )
  3315. with expansion:
  3316. 9.1f == Approx( 9.1099996567 )
  3317. Condition.tests.cpp:<line number>: FAILED:
  3318. CHECK( data.float_nine_point_one == Approx( 9.0f ) )
  3319. with expansion:
  3320. 9.1f == Approx( 9.0 )
  3321. Condition.tests.cpp:<line number>: FAILED:
  3322. CHECK( data.float_nine_point_one == Approx( 1 ) )
  3323. with expansion:
  3324. 9.1f == Approx( 1.0 )
  3325. Condition.tests.cpp:<line number>: FAILED:
  3326. CHECK( data.float_nine_point_one == Approx( 0 ) )
  3327. with expansion:
  3328. 9.1f == Approx( 0.0 )
  3329. Condition.tests.cpp:<line number>: FAILED:
  3330. CHECK( data.double_pi == Approx( 3.1415 ) )
  3331. with expansion:
  3332. 3.1415926535 == Approx( 3.1415 )
  3333. Condition.tests.cpp:<line number>: FAILED:
  3334. CHECK( data.str_hello == "goodbye" )
  3335. with expansion:
  3336. "hello" == "goodbye"
  3337. Condition.tests.cpp:<line number>: FAILED:
  3338. CHECK( data.str_hello == "hell" )
  3339. with expansion:
  3340. "hello" == "hell"
  3341. Condition.tests.cpp:<line number>: FAILED:
  3342. CHECK( data.str_hello == "hello1" )
  3343. with expansion:
  3344. "hello" == "hello1"
  3345. Condition.tests.cpp:<line number>: FAILED:
  3346. CHECK( data.str_hello.size() == 6 )
  3347. with expansion:
  3348. 5 == 6
  3349. Condition.tests.cpp:<line number>: FAILED:
  3350. CHECK( x == Approx( 1.301 ) )
  3351. with expansion:
  3352. 1.3 == Approx( 1.301 )
  3353. -------------------------------------------------------------------------------
  3354. Equality checks that should succeed
  3355. -------------------------------------------------------------------------------
  3356. Condition.tests.cpp:<line number>
  3357. ...............................................................................
  3358. Condition.tests.cpp:<line number>: PASSED:
  3359. REQUIRE( data.int_seven == 7 )
  3360. with expansion:
  3361. 7 == 7
  3362. Condition.tests.cpp:<line number>: PASSED:
  3363. REQUIRE( data.float_nine_point_one == Approx( 9.1f ) )
  3364. with expansion:
  3365. 9.1f == Approx( 9.1000003815 )
  3366. Condition.tests.cpp:<line number>: PASSED:
  3367. REQUIRE( data.double_pi == Approx( 3.1415926535 ) )
  3368. with expansion:
  3369. 3.1415926535 == Approx( 3.1415926535 )
  3370. Condition.tests.cpp:<line number>: PASSED:
  3371. REQUIRE( data.str_hello == "hello" )
  3372. with expansion:
  3373. "hello" == "hello"
  3374. Condition.tests.cpp:<line number>: PASSED:
  3375. REQUIRE( "hello" == data.str_hello )
  3376. with expansion:
  3377. "hello" == "hello"
  3378. Condition.tests.cpp:<line number>: PASSED:
  3379. REQUIRE( data.str_hello.size() == 5 )
  3380. with expansion:
  3381. 5 == 5
  3382. Condition.tests.cpp:<line number>: PASSED:
  3383. REQUIRE( x == Approx( 1.3 ) )
  3384. with expansion:
  3385. 1.3 == Approx( 1.3 )
  3386. -------------------------------------------------------------------------------
  3387. Equals
  3388. -------------------------------------------------------------------------------
  3389. Matchers.tests.cpp:<line number>
  3390. ...............................................................................
  3391. Matchers.tests.cpp:<line number>: PASSED:
  3392. CHECK_THAT( testStringForMatching(), Equals( "this string contains 'abc' as a substring" ) )
  3393. with expansion:
  3394. "this string contains 'abc' as a substring" equals: "this string contains
  3395. 'abc' as a substring"
  3396. Matchers.tests.cpp:<line number>: PASSED:
  3397. CHECK_THAT( testStringForMatching(), Equals( "this string contains 'ABC' as a substring", Catch::CaseSensitive::No ) )
  3398. with expansion:
  3399. "this string contains 'abc' as a substring" equals: "this string contains
  3400. 'abc' as a substring" (case insensitive)
  3401. -------------------------------------------------------------------------------
  3402. Equals string matcher
  3403. -------------------------------------------------------------------------------
  3404. Matchers.tests.cpp:<line number>
  3405. ...............................................................................
  3406. Matchers.tests.cpp:<line number>: FAILED:
  3407. CHECK_THAT( testStringForMatching(), Equals( "this string contains 'ABC' as a substring" ) )
  3408. with expansion:
  3409. "this string contains 'abc' as a substring" equals: "this string contains
  3410. 'ABC' as a substring"
  3411. Matchers.tests.cpp:<line number>: FAILED:
  3412. CHECK_THAT( testStringForMatching(), Equals( "something else", Catch::CaseSensitive::No ) )
  3413. with expansion:
  3414. "this string contains 'abc' as a substring" equals: "something else" (case
  3415. insensitive)
  3416. -------------------------------------------------------------------------------
  3417. Exception as a value (e.g. in REQUIRE_THROWS_MATCHES) can be stringified
  3418. -------------------------------------------------------------------------------
  3419. ToStringGeneral.tests.cpp:<line number>
  3420. ...............................................................................
  3421. ToStringGeneral.tests.cpp:<line number>: PASSED:
  3422. REQUIRE( ::Catch::Detail::stringify(WhatException{}) == "This exception has overridden what() method" )
  3423. with expansion:
  3424. "This exception has overridden what() method"
  3425. ==
  3426. "This exception has overridden what() method"
  3427. ToStringGeneral.tests.cpp:<line number>: PASSED:
  3428. REQUIRE( ::Catch::Detail::stringify(OperatorException{}) == "OperatorException" )
  3429. with expansion:
  3430. "OperatorException" == "OperatorException"
  3431. ToStringGeneral.tests.cpp:<line number>: PASSED:
  3432. REQUIRE( ::Catch::Detail::stringify(StringMakerException{}) == "StringMakerException" )
  3433. with expansion:
  3434. "StringMakerException"
  3435. ==
  3436. "StringMakerException"
  3437. -------------------------------------------------------------------------------
  3438. Exception matchers that fail
  3439. No exception
  3440. -------------------------------------------------------------------------------
  3441. Matchers.tests.cpp:<line number>
  3442. ...............................................................................
  3443. Matchers.tests.cpp:<line number>: FAILED:
  3444. CHECK_THROWS_MATCHES( doesNotThrow(), SpecialException, ExceptionMatcher{ 1 } )
  3445. because no exception was thrown where one was expected:
  3446. Matchers.tests.cpp:<line number>: FAILED:
  3447. REQUIRE_THROWS_MATCHES( doesNotThrow(), SpecialException, ExceptionMatcher{ 1 } )
  3448. because no exception was thrown where one was expected:
  3449. -------------------------------------------------------------------------------
  3450. Exception matchers that fail
  3451. Type mismatch
  3452. -------------------------------------------------------------------------------
  3453. Matchers.tests.cpp:<line number>
  3454. ...............................................................................
  3455. Matchers.tests.cpp:<line number>: FAILED:
  3456. CHECK_THROWS_MATCHES( throwsAsInt( 1 ), SpecialException, ExceptionMatcher{ 1 } )
  3457. due to unexpected exception with message:
  3458. Unknown exception
  3459. Matchers.tests.cpp:<line number>: FAILED:
  3460. REQUIRE_THROWS_MATCHES( throwsAsInt( 1 ), SpecialException, ExceptionMatcher{ 1 } )
  3461. due to unexpected exception with message:
  3462. Unknown exception
  3463. -------------------------------------------------------------------------------
  3464. Exception matchers that fail
  3465. Contents are wrong
  3466. -------------------------------------------------------------------------------
  3467. Matchers.tests.cpp:<line number>
  3468. ...............................................................................
  3469. Matchers.tests.cpp:<line number>: FAILED:
  3470. CHECK_THROWS_MATCHES( throwsSpecialException( 3 ), SpecialException, ExceptionMatcher{ 1 } )
  3471. with expansion:
  3472. SpecialException::what special exception has value of 1
  3473. Matchers.tests.cpp:<line number>: FAILED:
  3474. REQUIRE_THROWS_MATCHES( throwsSpecialException( 4 ), SpecialException, ExceptionMatcher{ 1 } )
  3475. with expansion:
  3476. SpecialException::what special exception has value of 1
  3477. -------------------------------------------------------------------------------
  3478. Exception matchers that succeed
  3479. -------------------------------------------------------------------------------
  3480. Matchers.tests.cpp:<line number>
  3481. ...............................................................................
  3482. Matchers.tests.cpp:<line number>: PASSED:
  3483. CHECK_THROWS_MATCHES( throwsSpecialException( 1 ), SpecialException, ExceptionMatcher{ 1 } )
  3484. with expansion:
  3485. SpecialException::what special exception has value of 1
  3486. Matchers.tests.cpp:<line number>: PASSED:
  3487. REQUIRE_THROWS_MATCHES( throwsSpecialException( 2 ), SpecialException, ExceptionMatcher{ 2 } )
  3488. with expansion:
  3489. SpecialException::what special exception has value of 2
  3490. -------------------------------------------------------------------------------
  3491. Exception messages can be tested for
  3492. exact match
  3493. -------------------------------------------------------------------------------
  3494. Exception.tests.cpp:<line number>
  3495. ...............................................................................
  3496. Exception.tests.cpp:<line number>: PASSED:
  3497. REQUIRE_THROWS_WITH( thisThrows(), "expected exception" )
  3498. with expansion:
  3499. "expected exception" equals: "expected exception"
  3500. -------------------------------------------------------------------------------
  3501. Exception messages can be tested for
  3502. different case
  3503. -------------------------------------------------------------------------------
  3504. Exception.tests.cpp:<line number>
  3505. ...............................................................................
  3506. Exception.tests.cpp:<line number>: PASSED:
  3507. REQUIRE_THROWS_WITH( thisThrows(), Equals( "expecteD Exception", Catch::CaseSensitive::No ) )
  3508. with expansion:
  3509. "expected exception" equals: "expected exception" (case insensitive)
  3510. -------------------------------------------------------------------------------
  3511. Exception messages can be tested for
  3512. wildcarded
  3513. -------------------------------------------------------------------------------
  3514. Exception.tests.cpp:<line number>
  3515. ...............................................................................
  3516. Exception.tests.cpp:<line number>: PASSED:
  3517. REQUIRE_THROWS_WITH( thisThrows(), StartsWith( "expected" ) )
  3518. with expansion:
  3519. "expected exception" starts with: "expected"
  3520. Exception.tests.cpp:<line number>: PASSED:
  3521. REQUIRE_THROWS_WITH( thisThrows(), EndsWith( "exception" ) )
  3522. with expansion:
  3523. "expected exception" ends with: "exception"
  3524. Exception.tests.cpp:<line number>: PASSED:
  3525. REQUIRE_THROWS_WITH( thisThrows(), ContainsSubstring( "except" ) )
  3526. with expansion:
  3527. "expected exception" contains: "except"
  3528. Exception.tests.cpp:<line number>: PASSED:
  3529. REQUIRE_THROWS_WITH( thisThrows(), ContainsSubstring( "exCept", Catch::CaseSensitive::No ) )
  3530. with expansion:
  3531. "expected exception" contains: "except" (case insensitive)
  3532. -------------------------------------------------------------------------------
  3533. Exceptions matchers
  3534. -------------------------------------------------------------------------------
  3535. Matchers.tests.cpp:<line number>
  3536. ...............................................................................
  3537. Matchers.tests.cpp:<line number>: PASSED:
  3538. REQUIRE_THROWS_MATCHES( throwsDerivedException(), DerivedException, Message( "DerivedException::what" ) )
  3539. with expansion:
  3540. DerivedException::what exception message matches "DerivedException::what"
  3541. Matchers.tests.cpp:<line number>: PASSED:
  3542. REQUIRE_THROWS_MATCHES( throwsDerivedException(), DerivedException, !Message( "derivedexception::what" ) )
  3543. with expansion:
  3544. DerivedException::what not exception message matches "derivedexception::what"
  3545. Matchers.tests.cpp:<line number>: PASSED:
  3546. REQUIRE_THROWS_MATCHES( throwsSpecialException( 2 ), SpecialException, !Message( "DerivedException::what" ) )
  3547. with expansion:
  3548. SpecialException::what not exception message matches "DerivedException::what"
  3549. Matchers.tests.cpp:<line number>: PASSED:
  3550. REQUIRE_THROWS_MATCHES( throwsSpecialException( 2 ), SpecialException, Message( "SpecialException::what" ) )
  3551. with expansion:
  3552. SpecialException::what exception message matches "SpecialException::what"
  3553. -------------------------------------------------------------------------------
  3554. Expected exceptions that don't throw or unexpected exceptions fail the test
  3555. -------------------------------------------------------------------------------
  3556. Exception.tests.cpp:<line number>
  3557. ...............................................................................
  3558. Exception.tests.cpp:<line number>: FAILED:
  3559. CHECK_THROWS_AS( thisThrows(), std::string )
  3560. due to unexpected exception with message:
  3561. expected exception
  3562. Exception.tests.cpp:<line number>: FAILED:
  3563. CHECK_THROWS_AS( thisDoesntThrow(), std::domain_error )
  3564. because no exception was thrown where one was expected:
  3565. Exception.tests.cpp:<line number>: FAILED:
  3566. CHECK_NOTHROW( thisThrows() )
  3567. due to unexpected exception with message:
  3568. expected exception
  3569. -------------------------------------------------------------------------------
  3570. FAIL aborts the test
  3571. -------------------------------------------------------------------------------
  3572. Message.tests.cpp:<line number>
  3573. ...............................................................................
  3574. Message.tests.cpp:<line number>: FAILED:
  3575. explicitly with message:
  3576. This is a failure
  3577. -------------------------------------------------------------------------------
  3578. FAIL does not require an argument
  3579. -------------------------------------------------------------------------------
  3580. Message.tests.cpp:<line number>
  3581. ...............................................................................
  3582. Message.tests.cpp:<line number>: FAILED:
  3583. -------------------------------------------------------------------------------
  3584. FAIL_CHECK does not abort the test
  3585. -------------------------------------------------------------------------------
  3586. Message.tests.cpp:<line number>
  3587. ...............................................................................
  3588. Message.tests.cpp:<line number>: FAILED:
  3589. explicitly with message:
  3590. This is a failure
  3591. Message.tests.cpp:<line number>: warning:
  3592. This message appears in the output
  3593. -------------------------------------------------------------------------------
  3594. Factorials are computed
  3595. -------------------------------------------------------------------------------
  3596. Misc.tests.cpp:<line number>
  3597. ...............................................................................
  3598. Misc.tests.cpp:<line number>: PASSED:
  3599. REQUIRE( Factorial(0) == 1 )
  3600. with expansion:
  3601. 1 == 1
  3602. Misc.tests.cpp:<line number>: PASSED:
  3603. REQUIRE( Factorial(1) == 1 )
  3604. with expansion:
  3605. 1 == 1
  3606. Misc.tests.cpp:<line number>: PASSED:
  3607. REQUIRE( Factorial(2) == 2 )
  3608. with expansion:
  3609. 2 == 2
  3610. Misc.tests.cpp:<line number>: PASSED:
  3611. REQUIRE( Factorial(3) == 6 )
  3612. with expansion:
  3613. 6 == 6
  3614. Misc.tests.cpp:<line number>: PASSED:
  3615. REQUIRE( Factorial(10) == 3628800 )
  3616. with expansion:
  3617. 3628800 (0x<hex digits>) == 3628800 (0x<hex digits>)
  3618. -------------------------------------------------------------------------------
  3619. Floating point matchers: double
  3620. Relative
  3621. -------------------------------------------------------------------------------
  3622. Matchers.tests.cpp:<line number>
  3623. ...............................................................................
  3624. Matchers.tests.cpp:<line number>: PASSED:
  3625. REQUIRE_THAT( 10., WithinRel( 11.1, 0.1 ) )
  3626. with expansion:
  3627. 10.0 and 11.1 are within 10% of each other
  3628. Matchers.tests.cpp:<line number>: PASSED:
  3629. REQUIRE_THAT( 10., !WithinRel( 11.2, 0.1 ) )
  3630. with expansion:
  3631. 10.0 not and 11.2 are within 10% of each other
  3632. Matchers.tests.cpp:<line number>: PASSED:
  3633. REQUIRE_THAT( 1., !WithinRel( 0., 0.99 ) )
  3634. with expansion:
  3635. 1.0 not and 0 are within 99% of each other
  3636. Matchers.tests.cpp:<line number>: PASSED:
  3637. REQUIRE_THAT( -0., WithinRel( 0. ) )
  3638. with expansion:
  3639. -0.0 and 0 are within 2.22045e-12% of each other
  3640. -------------------------------------------------------------------------------
  3641. Floating point matchers: double
  3642. Relative
  3643. Some subnormal values
  3644. -------------------------------------------------------------------------------
  3645. Matchers.tests.cpp:<line number>
  3646. ...............................................................................
  3647. Matchers.tests.cpp:<line number>: PASSED:
  3648. REQUIRE_THAT( v1, WithinRel( v2 ) )
  3649. with expansion:
  3650. 0.0 and 2.22507e-308 are within 2.22045e-12% of each other
  3651. -------------------------------------------------------------------------------
  3652. Floating point matchers: double
  3653. Margin
  3654. -------------------------------------------------------------------------------
  3655. Matchers.tests.cpp:<line number>
  3656. ...............................................................................
  3657. Matchers.tests.cpp:<line number>: PASSED:
  3658. REQUIRE_THAT( 1., WithinAbs( 1., 0 ) )
  3659. with expansion:
  3660. 1.0 is within 0.0 of 1.0
  3661. Matchers.tests.cpp:<line number>: PASSED:
  3662. REQUIRE_THAT( 0., WithinAbs( 1., 1 ) )
  3663. with expansion:
  3664. 0.0 is within 1.0 of 1.0
  3665. Matchers.tests.cpp:<line number>: PASSED:
  3666. REQUIRE_THAT( 0., !WithinAbs( 1., 0.99 ) )
  3667. with expansion:
  3668. 0.0 not is within 0.99 of 1.0
  3669. Matchers.tests.cpp:<line number>: PASSED:
  3670. REQUIRE_THAT( 0., !WithinAbs( 1., 0.99 ) )
  3671. with expansion:
  3672. 0.0 not is within 0.99 of 1.0
  3673. Matchers.tests.cpp:<line number>: PASSED:
  3674. REQUIRE_THAT( 11., !WithinAbs( 10., 0.5 ) )
  3675. with expansion:
  3676. 11.0 not is within 0.5 of 10.0
  3677. Matchers.tests.cpp:<line number>: PASSED:
  3678. REQUIRE_THAT( 10., !WithinAbs( 11., 0.5 ) )
  3679. with expansion:
  3680. 10.0 not is within 0.5 of 11.0
  3681. Matchers.tests.cpp:<line number>: PASSED:
  3682. REQUIRE_THAT( -10., WithinAbs( -10., 0.5 ) )
  3683. with expansion:
  3684. -10.0 is within 0.5 of -10.0
  3685. Matchers.tests.cpp:<line number>: PASSED:
  3686. REQUIRE_THAT( -10., WithinAbs( -9.6, 0.5 ) )
  3687. with expansion:
  3688. -10.0 is within 0.5 of -9.6
  3689. -------------------------------------------------------------------------------
  3690. Floating point matchers: double
  3691. ULPs
  3692. -------------------------------------------------------------------------------
  3693. Matchers.tests.cpp:<line number>
  3694. ...............................................................................
  3695. Matchers.tests.cpp:<line number>: PASSED:
  3696. REQUIRE_THAT( 1., WithinULP( 1., 0 ) )
  3697. with expansion:
  3698. 1.0 is within 0 ULPs of 1.0000000000000000e+00 ([1.0000000000000000e+00, 1.
  3699. 0000000000000000e+00])
  3700. Matchers.tests.cpp:<line number>: PASSED:
  3701. REQUIRE_THAT( nextafter( 1., 2. ), WithinULP( 1., 1 ) )
  3702. with expansion:
  3703. 1.0 is within 1 ULPs of 1.0000000000000000e+00 ([9.9999999999999989e-01, 1.
  3704. 0000000000000002e+00])
  3705. Matchers.tests.cpp:<line number>: PASSED:
  3706. REQUIRE_THAT( 0., WithinULP( nextafter( 0., 1. ), 1 ) )
  3707. with expansion:
  3708. 0.0 is within 1 ULPs of 4.9406564584124654e-324 ([0.0000000000000000e+00, 9.
  3709. 8813129168249309e-324])
  3710. Matchers.tests.cpp:<line number>: PASSED:
  3711. REQUIRE_THAT( 1., WithinULP( nextafter( 1., 0. ), 1 ) )
  3712. with expansion:
  3713. 1.0 is within 1 ULPs of 9.9999999999999989e-01 ([9.9999999999999978e-01, 1.
  3714. 0000000000000000e+00])
  3715. Matchers.tests.cpp:<line number>: PASSED:
  3716. REQUIRE_THAT( 1., !WithinULP( nextafter( 1., 2. ), 0 ) )
  3717. with expansion:
  3718. 1.0 not is within 0 ULPs of 1.0000000000000002e+00 ([1.0000000000000002e+00,
  3719. 1.0000000000000002e+00])
  3720. Matchers.tests.cpp:<line number>: PASSED:
  3721. REQUIRE_THAT( 1., WithinULP( 1., 0 ) )
  3722. with expansion:
  3723. 1.0 is within 0 ULPs of 1.0000000000000000e+00 ([1.0000000000000000e+00, 1.
  3724. 0000000000000000e+00])
  3725. Matchers.tests.cpp:<line number>: PASSED:
  3726. REQUIRE_THAT( -0., WithinULP( 0., 0 ) )
  3727. with expansion:
  3728. -0.0 is within 0 ULPs of 0.0000000000000000e+00 ([0.0000000000000000e+00, 0.
  3729. 0000000000000000e+00])
  3730. -------------------------------------------------------------------------------
  3731. Floating point matchers: double
  3732. Composed
  3733. -------------------------------------------------------------------------------
  3734. Matchers.tests.cpp:<line number>
  3735. ...............................................................................
  3736. Matchers.tests.cpp:<line number>: PASSED:
  3737. REQUIRE_THAT( 1., WithinAbs( 1., 0.5 ) || WithinULP( 2., 1 ) )
  3738. with expansion:
  3739. 1.0 ( is within 0.5 of 1.0 or is within 1 ULPs of 2.0000000000000000e+00 ([1.
  3740. 9999999999999998e+00, 2.0000000000000004e+00]) )
  3741. Matchers.tests.cpp:<line number>: PASSED:
  3742. REQUIRE_THAT( 1., WithinAbs( 2., 0.5 ) || WithinULP( 1., 0 ) )
  3743. with expansion:
  3744. 1.0 ( is within 0.5 of 2.0 or is within 0 ULPs of 1.0000000000000000e+00 ([1.
  3745. 0000000000000000e+00, 1.0000000000000000e+00]) )
  3746. Matchers.tests.cpp:<line number>: PASSED:
  3747. REQUIRE_THAT( 0.0001, WithinAbs( 0., 0.001 ) || WithinRel( 0., 0.1 ) )
  3748. with expansion:
  3749. 0.0001 ( is within 0.001 of 0.0 or and 0 are within 10% of each other )
  3750. -------------------------------------------------------------------------------
  3751. Floating point matchers: double
  3752. Constructor validation
  3753. -------------------------------------------------------------------------------
  3754. Matchers.tests.cpp:<line number>
  3755. ...............................................................................
  3756. Matchers.tests.cpp:<line number>: PASSED:
  3757. REQUIRE_NOTHROW( WithinAbs( 1., 0. ) )
  3758. Matchers.tests.cpp:<line number>: PASSED:
  3759. REQUIRE_THROWS_AS( WithinAbs( 1., -1. ), std::domain_error )
  3760. Matchers.tests.cpp:<line number>: PASSED:
  3761. REQUIRE_NOTHROW( WithinULP( 1., 0 ) )
  3762. Matchers.tests.cpp:<line number>: PASSED:
  3763. REQUIRE_NOTHROW( WithinRel( 1., 0. ) )
  3764. Matchers.tests.cpp:<line number>: PASSED:
  3765. REQUIRE_THROWS_AS( WithinRel( 1., -0.2 ), std::domain_error )
  3766. Matchers.tests.cpp:<line number>: PASSED:
  3767. REQUIRE_THROWS_AS( WithinRel( 1., 1. ), std::domain_error )
  3768. -------------------------------------------------------------------------------
  3769. Floating point matchers: float
  3770. Relative
  3771. -------------------------------------------------------------------------------
  3772. Matchers.tests.cpp:<line number>
  3773. ...............................................................................
  3774. Matchers.tests.cpp:<line number>: PASSED:
  3775. REQUIRE_THAT( 10.f, WithinRel( 11.1f, 0.1f ) )
  3776. with expansion:
  3777. 10.0f and 11.1 are within 10% of each other
  3778. Matchers.tests.cpp:<line number>: PASSED:
  3779. REQUIRE_THAT( 10.f, !WithinRel( 11.2f, 0.1f ) )
  3780. with expansion:
  3781. 10.0f not and 11.2 are within 10% of each other
  3782. Matchers.tests.cpp:<line number>: PASSED:
  3783. REQUIRE_THAT( 1.f, !WithinRel( 0.f, 0.99f ) )
  3784. with expansion:
  3785. 1.0f not and 0 are within 99% of each other
  3786. Matchers.tests.cpp:<line number>: PASSED:
  3787. REQUIRE_THAT( -0.f, WithinRel( 0.f ) )
  3788. with expansion:
  3789. -0.0f and 0 are within 0.00119209% of each other
  3790. -------------------------------------------------------------------------------
  3791. Floating point matchers: float
  3792. Relative
  3793. Some subnormal values
  3794. -------------------------------------------------------------------------------
  3795. Matchers.tests.cpp:<line number>
  3796. ...............................................................................
  3797. Matchers.tests.cpp:<line number>: PASSED:
  3798. REQUIRE_THAT( v1, WithinRel( v2 ) )
  3799. with expansion:
  3800. 0.0f and 1.17549e-38 are within 0.00119209% of each other
  3801. -------------------------------------------------------------------------------
  3802. Floating point matchers: float
  3803. Margin
  3804. -------------------------------------------------------------------------------
  3805. Matchers.tests.cpp:<line number>
  3806. ...............................................................................
  3807. Matchers.tests.cpp:<line number>: PASSED:
  3808. REQUIRE_THAT( 1.f, WithinAbs( 1.f, 0 ) )
  3809. with expansion:
  3810. 1.0f is within 0.0 of 1.0
  3811. Matchers.tests.cpp:<line number>: PASSED:
  3812. REQUIRE_THAT( 0.f, WithinAbs( 1.f, 1 ) )
  3813. with expansion:
  3814. 0.0f is within 1.0 of 1.0
  3815. Matchers.tests.cpp:<line number>: PASSED:
  3816. REQUIRE_THAT( 0.f, !WithinAbs( 1.f, 0.99f ) )
  3817. with expansion:
  3818. 0.0f not is within 0.9900000095 of 1.0
  3819. Matchers.tests.cpp:<line number>: PASSED:
  3820. REQUIRE_THAT( 0.f, !WithinAbs( 1.f, 0.99f ) )
  3821. with expansion:
  3822. 0.0f not is within 0.9900000095 of 1.0
  3823. Matchers.tests.cpp:<line number>: PASSED:
  3824. REQUIRE_THAT( 0.f, WithinAbs( -0.f, 0 ) )
  3825. with expansion:
  3826. 0.0f is within 0.0 of -0.0
  3827. Matchers.tests.cpp:<line number>: PASSED:
  3828. REQUIRE_THAT( 11.f, !WithinAbs( 10.f, 0.5f ) )
  3829. with expansion:
  3830. 11.0f not is within 0.5 of 10.0
  3831. Matchers.tests.cpp:<line number>: PASSED:
  3832. REQUIRE_THAT( 10.f, !WithinAbs( 11.f, 0.5f ) )
  3833. with expansion:
  3834. 10.0f not is within 0.5 of 11.0
  3835. Matchers.tests.cpp:<line number>: PASSED:
  3836. REQUIRE_THAT( -10.f, WithinAbs( -10.f, 0.5f ) )
  3837. with expansion:
  3838. -10.0f is within 0.5 of -10.0
  3839. Matchers.tests.cpp:<line number>: PASSED:
  3840. REQUIRE_THAT( -10.f, WithinAbs( -9.6f, 0.5f ) )
  3841. with expansion:
  3842. -10.0f is within 0.5 of -9.6000003815
  3843. -------------------------------------------------------------------------------
  3844. Floating point matchers: float
  3845. ULPs
  3846. -------------------------------------------------------------------------------
  3847. Matchers.tests.cpp:<line number>
  3848. ...............................................................................
  3849. Matchers.tests.cpp:<line number>: PASSED:
  3850. REQUIRE_THAT( 1.f, WithinULP( 1.f, 0 ) )
  3851. with expansion:
  3852. 1.0f is within 0 ULPs of 1.00000000e+00f ([1.00000000e+00, 1.00000000e+00])
  3853. Matchers.tests.cpp:<line number>: PASSED:
  3854. REQUIRE_THAT( -1.f, WithinULP( -1.f, 0 ) )
  3855. with expansion:
  3856. -1.0f is within 0 ULPs of -1.00000000e+00f ([-1.00000000e+00, -1.00000000e+
  3857. 00])
  3858. Matchers.tests.cpp:<line number>: PASSED:
  3859. REQUIRE_THAT( nextafter( 1.f, 2.f ), WithinULP( 1.f, 1 ) )
  3860. with expansion:
  3861. 1.0f is within 1 ULPs of 1.00000000e+00f ([9.99999940e-01, 1.00000012e+00])
  3862. Matchers.tests.cpp:<line number>: PASSED:
  3863. REQUIRE_THAT( 0.f, WithinULP( nextafter( 0.f, 1.f ), 1 ) )
  3864. with expansion:
  3865. 0.0f is within 1 ULPs of 1.40129846e-45f ([0.00000000e+00, 2.80259693e-45])
  3866. Matchers.tests.cpp:<line number>: PASSED:
  3867. REQUIRE_THAT( 1.f, WithinULP( nextafter( 1.f, 0.f ), 1 ) )
  3868. with expansion:
  3869. 1.0f is within 1 ULPs of 9.99999940e-01f ([9.99999881e-01, 1.00000000e+00])
  3870. Matchers.tests.cpp:<line number>: PASSED:
  3871. REQUIRE_THAT( 1.f, !WithinULP( nextafter( 1.f, 2.f ), 0 ) )
  3872. with expansion:
  3873. 1.0f not is within 0 ULPs of 1.00000012e+00f ([1.00000012e+00, 1.00000012e+
  3874. 00])
  3875. Matchers.tests.cpp:<line number>: PASSED:
  3876. REQUIRE_THAT( 1.f, WithinULP( 1.f, 0 ) )
  3877. with expansion:
  3878. 1.0f is within 0 ULPs of 1.00000000e+00f ([1.00000000e+00, 1.00000000e+00])
  3879. Matchers.tests.cpp:<line number>: PASSED:
  3880. REQUIRE_THAT( -0.f, WithinULP( 0.f, 0 ) )
  3881. with expansion:
  3882. -0.0f is within 0 ULPs of 0.00000000e+00f ([0.00000000e+00, 0.00000000e+00])
  3883. -------------------------------------------------------------------------------
  3884. Floating point matchers: float
  3885. Composed
  3886. -------------------------------------------------------------------------------
  3887. Matchers.tests.cpp:<line number>
  3888. ...............................................................................
  3889. Matchers.tests.cpp:<line number>: PASSED:
  3890. REQUIRE_THAT( 1.f, WithinAbs( 1.f, 0.5 ) || WithinULP( 1.f, 1 ) )
  3891. with expansion:
  3892. 1.0f ( is within 0.5 of 1.0 or is within 1 ULPs of 1.00000000e+00f ([9.
  3893. 99999940e-01, 1.00000012e+00]) )
  3894. Matchers.tests.cpp:<line number>: PASSED:
  3895. REQUIRE_THAT( 1.f, WithinAbs( 2.f, 0.5 ) || WithinULP( 1.f, 0 ) )
  3896. with expansion:
  3897. 1.0f ( is within 0.5 of 2.0 or is within 0 ULPs of 1.00000000e+00f ([1.
  3898. 00000000e+00, 1.00000000e+00]) )
  3899. Matchers.tests.cpp:<line number>: PASSED:
  3900. REQUIRE_THAT( 0.0001f, WithinAbs( 0.f, 0.001f ) || WithinRel( 0.f, 0.1f ) )
  3901. with expansion:
  3902. 0.0001f ( is within 0.001 of 0.0 or and 0 are within 10% of each other )
  3903. -------------------------------------------------------------------------------
  3904. Floating point matchers: float
  3905. Constructor validation
  3906. -------------------------------------------------------------------------------
  3907. Matchers.tests.cpp:<line number>
  3908. ...............................................................................
  3909. Matchers.tests.cpp:<line number>: PASSED:
  3910. REQUIRE_NOTHROW( WithinAbs( 1.f, 0.f ) )
  3911. Matchers.tests.cpp:<line number>: PASSED:
  3912. REQUIRE_THROWS_AS( WithinAbs( 1.f, -1.f ), std::domain_error )
  3913. Matchers.tests.cpp:<line number>: PASSED:
  3914. REQUIRE_NOTHROW( WithinULP( 1.f, 0 ) )
  3915. Matchers.tests.cpp:<line number>: PASSED:
  3916. REQUIRE_THROWS_AS( WithinULP( 1.f, static_cast<uint64_t>( -1 ) ), std::domain_error )
  3917. Matchers.tests.cpp:<line number>: PASSED:
  3918. REQUIRE_NOTHROW( WithinRel( 1.f, 0.f ) )
  3919. Matchers.tests.cpp:<line number>: PASSED:
  3920. REQUIRE_THROWS_AS( WithinRel( 1.f, -0.2f ), std::domain_error )
  3921. Matchers.tests.cpp:<line number>: PASSED:
  3922. REQUIRE_THROWS_AS( WithinRel( 1.f, 1.f ), std::domain_error )
  3923. -------------------------------------------------------------------------------
  3924. Generators -- adapters
  3925. Filtering by predicate
  3926. Basic usage
  3927. -------------------------------------------------------------------------------
  3928. Generators.tests.cpp:<line number>
  3929. ...............................................................................
  3930. Generators.tests.cpp:<line number>: PASSED:
  3931. REQUIRE( i % 2 == 0 )
  3932. with expansion:
  3933. 0 == 0
  3934. -------------------------------------------------------------------------------
  3935. Generators -- adapters
  3936. Filtering by predicate
  3937. Basic usage
  3938. -------------------------------------------------------------------------------
  3939. Generators.tests.cpp:<line number>
  3940. ...............................................................................
  3941. Generators.tests.cpp:<line number>: PASSED:
  3942. REQUIRE( i % 2 == 0 )
  3943. with expansion:
  3944. 0 == 0
  3945. -------------------------------------------------------------------------------
  3946. Generators -- adapters
  3947. Filtering by predicate
  3948. Basic usage
  3949. -------------------------------------------------------------------------------
  3950. Generators.tests.cpp:<line number>
  3951. ...............................................................................
  3952. Generators.tests.cpp:<line number>: PASSED:
  3953. REQUIRE( i % 2 == 0 )
  3954. with expansion:
  3955. 0 == 0
  3956. -------------------------------------------------------------------------------
  3957. Generators -- adapters
  3958. Filtering by predicate
  3959. Throws if there are no matching values
  3960. -------------------------------------------------------------------------------
  3961. Generators.tests.cpp:<line number>
  3962. ...............................................................................
  3963. Generators.tests.cpp:<line number>: PASSED:
  3964. REQUIRE_THROWS_AS( filter([] (int) {return false; }, value(1)), Catch::GeneratorException )
  3965. -------------------------------------------------------------------------------
  3966. Generators -- adapters
  3967. Shortening a range
  3968. -------------------------------------------------------------------------------
  3969. Generators.tests.cpp:<line number>
  3970. ...............................................................................
  3971. Generators.tests.cpp:<line number>: PASSED:
  3972. REQUIRE( i < 4 )
  3973. with expansion:
  3974. 1 < 4
  3975. -------------------------------------------------------------------------------
  3976. Generators -- adapters
  3977. Shortening a range
  3978. -------------------------------------------------------------------------------
  3979. Generators.tests.cpp:<line number>
  3980. ...............................................................................
  3981. Generators.tests.cpp:<line number>: PASSED:
  3982. REQUIRE( i < 4 )
  3983. with expansion:
  3984. 2 < 4
  3985. -------------------------------------------------------------------------------
  3986. Generators -- adapters
  3987. Shortening a range
  3988. -------------------------------------------------------------------------------
  3989. Generators.tests.cpp:<line number>
  3990. ...............................................................................
  3991. Generators.tests.cpp:<line number>: PASSED:
  3992. REQUIRE( i < 4 )
  3993. with expansion:
  3994. 3 < 4
  3995. -------------------------------------------------------------------------------
  3996. Generators -- adapters
  3997. Transforming elements
  3998. Same type
  3999. -------------------------------------------------------------------------------
  4000. Generators.tests.cpp:<line number>
  4001. ...............................................................................
  4002. Generators.tests.cpp:<line number>: PASSED:
  4003. REQUIRE( i % 2 == 0 )
  4004. with expansion:
  4005. 0 == 0
  4006. -------------------------------------------------------------------------------
  4007. Generators -- adapters
  4008. Transforming elements
  4009. Same type
  4010. -------------------------------------------------------------------------------
  4011. Generators.tests.cpp:<line number>
  4012. ...............................................................................
  4013. Generators.tests.cpp:<line number>: PASSED:
  4014. REQUIRE( i % 2 == 0 )
  4015. with expansion:
  4016. 0 == 0
  4017. -------------------------------------------------------------------------------
  4018. Generators -- adapters
  4019. Transforming elements
  4020. Same type
  4021. -------------------------------------------------------------------------------
  4022. Generators.tests.cpp:<line number>
  4023. ...............................................................................
  4024. Generators.tests.cpp:<line number>: PASSED:
  4025. REQUIRE( i % 2 == 0 )
  4026. with expansion:
  4027. 0 == 0
  4028. -------------------------------------------------------------------------------
  4029. Generators -- adapters
  4030. Transforming elements
  4031. Different type
  4032. -------------------------------------------------------------------------------
  4033. Generators.tests.cpp:<line number>
  4034. ...............................................................................
  4035. Generators.tests.cpp:<line number>: PASSED:
  4036. REQUIRE( i.size() == 1 )
  4037. with expansion:
  4038. 1 == 1
  4039. -------------------------------------------------------------------------------
  4040. Generators -- adapters
  4041. Transforming elements
  4042. Different type
  4043. -------------------------------------------------------------------------------
  4044. Generators.tests.cpp:<line number>
  4045. ...............................................................................
  4046. Generators.tests.cpp:<line number>: PASSED:
  4047. REQUIRE( i.size() == 1 )
  4048. with expansion:
  4049. 1 == 1
  4050. -------------------------------------------------------------------------------
  4051. Generators -- adapters
  4052. Transforming elements
  4053. Different type
  4054. -------------------------------------------------------------------------------
  4055. Generators.tests.cpp:<line number>
  4056. ...............................................................................
  4057. Generators.tests.cpp:<line number>: PASSED:
  4058. REQUIRE( i.size() == 1 )
  4059. with expansion:
  4060. 1 == 1
  4061. -------------------------------------------------------------------------------
  4062. Generators -- adapters
  4063. Transforming elements
  4064. Different deduced type
  4065. -------------------------------------------------------------------------------
  4066. Generators.tests.cpp:<line number>
  4067. ...............................................................................
  4068. Generators.tests.cpp:<line number>: PASSED:
  4069. REQUIRE( i.size() == 1 )
  4070. with expansion:
  4071. 1 == 1
  4072. -------------------------------------------------------------------------------
  4073. Generators -- adapters
  4074. Transforming elements
  4075. Different deduced type
  4076. -------------------------------------------------------------------------------
  4077. Generators.tests.cpp:<line number>
  4078. ...............................................................................
  4079. Generators.tests.cpp:<line number>: PASSED:
  4080. REQUIRE( i.size() == 1 )
  4081. with expansion:
  4082. 1 == 1
  4083. -------------------------------------------------------------------------------
  4084. Generators -- adapters
  4085. Transforming elements
  4086. Different deduced type
  4087. -------------------------------------------------------------------------------
  4088. Generators.tests.cpp:<line number>
  4089. ...............................................................................
  4090. Generators.tests.cpp:<line number>: PASSED:
  4091. REQUIRE( i.size() == 1 )
  4092. with expansion:
  4093. 1 == 1
  4094. -------------------------------------------------------------------------------
  4095. Generators -- adapters
  4096. Repeating a generator
  4097. -------------------------------------------------------------------------------
  4098. Generators.tests.cpp:<line number>
  4099. ...............................................................................
  4100. Generators.tests.cpp:<line number>: PASSED:
  4101. REQUIRE( j > 0 )
  4102. with expansion:
  4103. 1 > 0
  4104. -------------------------------------------------------------------------------
  4105. Generators -- adapters
  4106. Repeating a generator
  4107. -------------------------------------------------------------------------------
  4108. Generators.tests.cpp:<line number>
  4109. ...............................................................................
  4110. Generators.tests.cpp:<line number>: PASSED:
  4111. REQUIRE( j > 0 )
  4112. with expansion:
  4113. 2 > 0
  4114. -------------------------------------------------------------------------------
  4115. Generators -- adapters
  4116. Repeating a generator
  4117. -------------------------------------------------------------------------------
  4118. Generators.tests.cpp:<line number>
  4119. ...............................................................................
  4120. Generators.tests.cpp:<line number>: PASSED:
  4121. REQUIRE( j > 0 )
  4122. with expansion:
  4123. 3 > 0
  4124. -------------------------------------------------------------------------------
  4125. Generators -- adapters
  4126. Repeating a generator
  4127. -------------------------------------------------------------------------------
  4128. Generators.tests.cpp:<line number>
  4129. ...............................................................................
  4130. Generators.tests.cpp:<line number>: PASSED:
  4131. REQUIRE( j > 0 )
  4132. with expansion:
  4133. 1 > 0
  4134. -------------------------------------------------------------------------------
  4135. Generators -- adapters
  4136. Repeating a generator
  4137. -------------------------------------------------------------------------------
  4138. Generators.tests.cpp:<line number>
  4139. ...............................................................................
  4140. Generators.tests.cpp:<line number>: PASSED:
  4141. REQUIRE( j > 0 )
  4142. with expansion:
  4143. 2 > 0
  4144. -------------------------------------------------------------------------------
  4145. Generators -- adapters
  4146. Repeating a generator
  4147. -------------------------------------------------------------------------------
  4148. Generators.tests.cpp:<line number>
  4149. ...............................................................................
  4150. Generators.tests.cpp:<line number>: PASSED:
  4151. REQUIRE( j > 0 )
  4152. with expansion:
  4153. 3 > 0
  4154. -------------------------------------------------------------------------------
  4155. Generators -- adapters
  4156. Chunking a generator into sized pieces
  4157. Number of elements in source is divisible by chunk size
  4158. -------------------------------------------------------------------------------
  4159. Generators.tests.cpp:<line number>
  4160. ...............................................................................
  4161. Generators.tests.cpp:<line number>: PASSED:
  4162. REQUIRE( chunk2.size() == 2 )
  4163. with expansion:
  4164. 2 == 2
  4165. Generators.tests.cpp:<line number>: PASSED:
  4166. REQUIRE( chunk2.front() == chunk2.back() )
  4167. with expansion:
  4168. 1 == 1
  4169. -------------------------------------------------------------------------------
  4170. Generators -- adapters
  4171. Chunking a generator into sized pieces
  4172. Number of elements in source is divisible by chunk size
  4173. -------------------------------------------------------------------------------
  4174. Generators.tests.cpp:<line number>
  4175. ...............................................................................
  4176. Generators.tests.cpp:<line number>: PASSED:
  4177. REQUIRE( chunk2.size() == 2 )
  4178. with expansion:
  4179. 2 == 2
  4180. Generators.tests.cpp:<line number>: PASSED:
  4181. REQUIRE( chunk2.front() == chunk2.back() )
  4182. with expansion:
  4183. 2 == 2
  4184. -------------------------------------------------------------------------------
  4185. Generators -- adapters
  4186. Chunking a generator into sized pieces
  4187. Number of elements in source is divisible by chunk size
  4188. -------------------------------------------------------------------------------
  4189. Generators.tests.cpp:<line number>
  4190. ...............................................................................
  4191. Generators.tests.cpp:<line number>: PASSED:
  4192. REQUIRE( chunk2.size() == 2 )
  4193. with expansion:
  4194. 2 == 2
  4195. Generators.tests.cpp:<line number>: PASSED:
  4196. REQUIRE( chunk2.front() == chunk2.back() )
  4197. with expansion:
  4198. 3 == 3
  4199. -------------------------------------------------------------------------------
  4200. Generators -- adapters
  4201. Chunking a generator into sized pieces
  4202. Number of elements in source is not divisible by chunk size
  4203. -------------------------------------------------------------------------------
  4204. Generators.tests.cpp:<line number>
  4205. ...............................................................................
  4206. Generators.tests.cpp:<line number>: PASSED:
  4207. REQUIRE( chunk2.size() == 2 )
  4208. with expansion:
  4209. 2 == 2
  4210. Generators.tests.cpp:<line number>: PASSED:
  4211. REQUIRE( chunk2.front() == chunk2.back() )
  4212. with expansion:
  4213. 1 == 1
  4214. Generators.tests.cpp:<line number>: PASSED:
  4215. REQUIRE( chunk2.front() < 3 )
  4216. with expansion:
  4217. 1 < 3
  4218. -------------------------------------------------------------------------------
  4219. Generators -- adapters
  4220. Chunking a generator into sized pieces
  4221. Number of elements in source is not divisible by chunk size
  4222. -------------------------------------------------------------------------------
  4223. Generators.tests.cpp:<line number>
  4224. ...............................................................................
  4225. Generators.tests.cpp:<line number>: PASSED:
  4226. REQUIRE( chunk2.size() == 2 )
  4227. with expansion:
  4228. 2 == 2
  4229. Generators.tests.cpp:<line number>: PASSED:
  4230. REQUIRE( chunk2.front() == chunk2.back() )
  4231. with expansion:
  4232. 2 == 2
  4233. Generators.tests.cpp:<line number>: PASSED:
  4234. REQUIRE( chunk2.front() < 3 )
  4235. with expansion:
  4236. 2 < 3
  4237. -------------------------------------------------------------------------------
  4238. Generators -- adapters
  4239. Chunking a generator into sized pieces
  4240. Chunk size of zero
  4241. -------------------------------------------------------------------------------
  4242. Generators.tests.cpp:<line number>
  4243. ...............................................................................
  4244. Generators.tests.cpp:<line number>: PASSED:
  4245. REQUIRE( chunk2.size() == 0 )
  4246. with expansion:
  4247. 0 == 0
  4248. -------------------------------------------------------------------------------
  4249. Generators -- adapters
  4250. Chunking a generator into sized pieces
  4251. Chunk size of zero
  4252. -------------------------------------------------------------------------------
  4253. Generators.tests.cpp:<line number>
  4254. ...............................................................................
  4255. Generators.tests.cpp:<line number>: PASSED:
  4256. REQUIRE( chunk2.size() == 0 )
  4257. with expansion:
  4258. 0 == 0
  4259. -------------------------------------------------------------------------------
  4260. Generators -- adapters
  4261. Chunking a generator into sized pieces
  4262. Chunk size of zero
  4263. -------------------------------------------------------------------------------
  4264. Generators.tests.cpp:<line number>
  4265. ...............................................................................
  4266. Generators.tests.cpp:<line number>: PASSED:
  4267. REQUIRE( chunk2.size() == 0 )
  4268. with expansion:
  4269. 0 == 0
  4270. -------------------------------------------------------------------------------
  4271. Generators -- adapters
  4272. Chunking a generator into sized pieces
  4273. Throws on too small generators
  4274. -------------------------------------------------------------------------------
  4275. Generators.tests.cpp:<line number>
  4276. ...............................................................................
  4277. Generators.tests.cpp:<line number>: PASSED:
  4278. REQUIRE_THROWS_AS( chunk(2, value(1)), Catch::GeneratorException )
  4279. -------------------------------------------------------------------------------
  4280. Generators -- simple
  4281. one
  4282. -------------------------------------------------------------------------------
  4283. Generators.tests.cpp:<line number>
  4284. ...............................................................................
  4285. Generators.tests.cpp:<line number>: PASSED:
  4286. REQUIRE( j < i )
  4287. with expansion:
  4288. -3 < 1
  4289. -------------------------------------------------------------------------------
  4290. Generators -- simple
  4291. one
  4292. -------------------------------------------------------------------------------
  4293. Generators.tests.cpp:<line number>
  4294. ...............................................................................
  4295. Generators.tests.cpp:<line number>: PASSED:
  4296. REQUIRE( j < i )
  4297. with expansion:
  4298. -2 < 1
  4299. -------------------------------------------------------------------------------
  4300. Generators -- simple
  4301. one
  4302. -------------------------------------------------------------------------------
  4303. Generators.tests.cpp:<line number>
  4304. ...............................................................................
  4305. Generators.tests.cpp:<line number>: PASSED:
  4306. REQUIRE( j < i )
  4307. with expansion:
  4308. -1 < 1
  4309. -------------------------------------------------------------------------------
  4310. Generators -- simple
  4311. two
  4312. -------------------------------------------------------------------------------
  4313. Generators.tests.cpp:<line number>
  4314. ...............................................................................
  4315. Generators.tests.cpp:<line number>: PASSED:
  4316. REQUIRE( 4u * i > str.size() )
  4317. with expansion:
  4318. 4 > 1
  4319. -------------------------------------------------------------------------------
  4320. Generators -- simple
  4321. two
  4322. -------------------------------------------------------------------------------
  4323. Generators.tests.cpp:<line number>
  4324. ...............................................................................
  4325. Generators.tests.cpp:<line number>: PASSED:
  4326. REQUIRE( 4u * i > str.size() )
  4327. with expansion:
  4328. 4 > 2
  4329. -------------------------------------------------------------------------------
  4330. Generators -- simple
  4331. two
  4332. -------------------------------------------------------------------------------
  4333. Generators.tests.cpp:<line number>
  4334. ...............................................................................
  4335. Generators.tests.cpp:<line number>: PASSED:
  4336. REQUIRE( 4u * i > str.size() )
  4337. with expansion:
  4338. 4 > 3
  4339. -------------------------------------------------------------------------------
  4340. Generators -- simple
  4341. one
  4342. -------------------------------------------------------------------------------
  4343. Generators.tests.cpp:<line number>
  4344. ...............................................................................
  4345. Generators.tests.cpp:<line number>: PASSED:
  4346. REQUIRE( j < i )
  4347. with expansion:
  4348. -3 < 2
  4349. -------------------------------------------------------------------------------
  4350. Generators -- simple
  4351. one
  4352. -------------------------------------------------------------------------------
  4353. Generators.tests.cpp:<line number>
  4354. ...............................................................................
  4355. Generators.tests.cpp:<line number>: PASSED:
  4356. REQUIRE( j < i )
  4357. with expansion:
  4358. -2 < 2
  4359. -------------------------------------------------------------------------------
  4360. Generators -- simple
  4361. one
  4362. -------------------------------------------------------------------------------
  4363. Generators.tests.cpp:<line number>
  4364. ...............................................................................
  4365. Generators.tests.cpp:<line number>: PASSED:
  4366. REQUIRE( j < i )
  4367. with expansion:
  4368. -1 < 2
  4369. -------------------------------------------------------------------------------
  4370. Generators -- simple
  4371. two
  4372. -------------------------------------------------------------------------------
  4373. Generators.tests.cpp:<line number>
  4374. ...............................................................................
  4375. Generators.tests.cpp:<line number>: PASSED:
  4376. REQUIRE( 4u * i > str.size() )
  4377. with expansion:
  4378. 8 > 1
  4379. -------------------------------------------------------------------------------
  4380. Generators -- simple
  4381. two
  4382. -------------------------------------------------------------------------------
  4383. Generators.tests.cpp:<line number>
  4384. ...............................................................................
  4385. Generators.tests.cpp:<line number>: PASSED:
  4386. REQUIRE( 4u * i > str.size() )
  4387. with expansion:
  4388. 8 > 2
  4389. -------------------------------------------------------------------------------
  4390. Generators -- simple
  4391. two
  4392. -------------------------------------------------------------------------------
  4393. Generators.tests.cpp:<line number>
  4394. ...............................................................................
  4395. Generators.tests.cpp:<line number>: PASSED:
  4396. REQUIRE( 4u * i > str.size() )
  4397. with expansion:
  4398. 8 > 3
  4399. -------------------------------------------------------------------------------
  4400. Generators -- simple
  4401. one
  4402. -------------------------------------------------------------------------------
  4403. Generators.tests.cpp:<line number>
  4404. ...............................................................................
  4405. Generators.tests.cpp:<line number>: PASSED:
  4406. REQUIRE( j < i )
  4407. with expansion:
  4408. -3 < 3
  4409. -------------------------------------------------------------------------------
  4410. Generators -- simple
  4411. one
  4412. -------------------------------------------------------------------------------
  4413. Generators.tests.cpp:<line number>
  4414. ...............................................................................
  4415. Generators.tests.cpp:<line number>: PASSED:
  4416. REQUIRE( j < i )
  4417. with expansion:
  4418. -2 < 3
  4419. -------------------------------------------------------------------------------
  4420. Generators -- simple
  4421. one
  4422. -------------------------------------------------------------------------------
  4423. Generators.tests.cpp:<line number>
  4424. ...............................................................................
  4425. Generators.tests.cpp:<line number>: PASSED:
  4426. REQUIRE( j < i )
  4427. with expansion:
  4428. -1 < 3
  4429. -------------------------------------------------------------------------------
  4430. Generators -- simple
  4431. two
  4432. -------------------------------------------------------------------------------
  4433. Generators.tests.cpp:<line number>
  4434. ...............................................................................
  4435. Generators.tests.cpp:<line number>: PASSED:
  4436. REQUIRE( 4u * i > str.size() )
  4437. with expansion:
  4438. 12 > 1
  4439. -------------------------------------------------------------------------------
  4440. Generators -- simple
  4441. two
  4442. -------------------------------------------------------------------------------
  4443. Generators.tests.cpp:<line number>
  4444. ...............................................................................
  4445. Generators.tests.cpp:<line number>: PASSED:
  4446. REQUIRE( 4u * i > str.size() )
  4447. with expansion:
  4448. 12 > 2
  4449. -------------------------------------------------------------------------------
  4450. Generators -- simple
  4451. two
  4452. -------------------------------------------------------------------------------
  4453. Generators.tests.cpp:<line number>
  4454. ...............................................................................
  4455. Generators.tests.cpp:<line number>: PASSED:
  4456. REQUIRE( 4u * i > str.size() )
  4457. with expansion:
  4458. 12 > 3
  4459. -------------------------------------------------------------------------------
  4460. Generators internals
  4461. Single value
  4462. -------------------------------------------------------------------------------
  4463. GeneratorsImpl.tests.cpp:<line number>
  4464. ...............................................................................
  4465. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4466. REQUIRE( gen.get() == 123 )
  4467. with expansion:
  4468. 123 == 123
  4469. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4470. REQUIRE_FALSE( gen.next() )
  4471. with expansion:
  4472. !false
  4473. -------------------------------------------------------------------------------
  4474. Generators internals
  4475. Preset values
  4476. -------------------------------------------------------------------------------
  4477. GeneratorsImpl.tests.cpp:<line number>
  4478. ...............................................................................
  4479. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4480. REQUIRE( gen.get() == 1 )
  4481. with expansion:
  4482. 1 == 1
  4483. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4484. REQUIRE( gen.next() )
  4485. with expansion:
  4486. true
  4487. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4488. REQUIRE( gen.get() == 3 )
  4489. with expansion:
  4490. 3 == 3
  4491. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4492. REQUIRE( gen.next() )
  4493. with expansion:
  4494. true
  4495. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4496. REQUIRE( gen.get() == 5 )
  4497. with expansion:
  4498. 5 == 5
  4499. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4500. REQUIRE_FALSE( gen.next() )
  4501. with expansion:
  4502. !false
  4503. -------------------------------------------------------------------------------
  4504. Generators internals
  4505. Generator combinator
  4506. -------------------------------------------------------------------------------
  4507. GeneratorsImpl.tests.cpp:<line number>
  4508. ...............................................................................
  4509. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4510. REQUIRE( gen.get() == 1 )
  4511. with expansion:
  4512. 1 == 1
  4513. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4514. REQUIRE( gen.next() )
  4515. with expansion:
  4516. true
  4517. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4518. REQUIRE( gen.get() == 5 )
  4519. with expansion:
  4520. 5 == 5
  4521. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4522. REQUIRE( gen.next() )
  4523. with expansion:
  4524. true
  4525. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4526. REQUIRE( gen.get() == 2 )
  4527. with expansion:
  4528. 2 == 2
  4529. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4530. REQUIRE( gen.next() )
  4531. with expansion:
  4532. true
  4533. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4534. REQUIRE( gen.get() == 4 )
  4535. with expansion:
  4536. 4 == 4
  4537. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4538. REQUIRE( gen.next() )
  4539. with expansion:
  4540. true
  4541. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4542. REQUIRE( gen.get() == 0 )
  4543. with expansion:
  4544. 0 == 0
  4545. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4546. REQUIRE_FALSE( gen.next() )
  4547. with expansion:
  4548. !false
  4549. -------------------------------------------------------------------------------
  4550. Generators internals
  4551. Explicitly typed generator sequence
  4552. -------------------------------------------------------------------------------
  4553. GeneratorsImpl.tests.cpp:<line number>
  4554. ...............................................................................
  4555. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4556. REQUIRE( gen.get().size() == 2 )
  4557. with expansion:
  4558. 2 == 2
  4559. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4560. REQUIRE( gen.get() == "aa" )
  4561. with expansion:
  4562. "aa" == "aa"
  4563. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4564. REQUIRE( gen.next() )
  4565. with expansion:
  4566. true
  4567. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4568. REQUIRE( gen.get() == "bb" )
  4569. with expansion:
  4570. "bb" == "bb"
  4571. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4572. REQUIRE( gen.next() )
  4573. with expansion:
  4574. true
  4575. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4576. REQUIRE( gen.get() == "cc" )
  4577. with expansion:
  4578. "cc" == "cc"
  4579. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4580. REQUIRE_FALSE( gen.next() )
  4581. with expansion:
  4582. !false
  4583. -------------------------------------------------------------------------------
  4584. Generators internals
  4585. Filter generator
  4586. Simple filtering
  4587. -------------------------------------------------------------------------------
  4588. GeneratorsImpl.tests.cpp:<line number>
  4589. ...............................................................................
  4590. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4591. REQUIRE( gen.get() == 1 )
  4592. with expansion:
  4593. 1 == 1
  4594. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4595. REQUIRE( gen.next() )
  4596. with expansion:
  4597. true
  4598. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4599. REQUIRE( gen.get() == 3 )
  4600. with expansion:
  4601. 3 == 3
  4602. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4603. REQUIRE_FALSE( gen.next() )
  4604. with expansion:
  4605. !false
  4606. -------------------------------------------------------------------------------
  4607. Generators internals
  4608. Filter generator
  4609. Filter out multiple elements at the start and end
  4610. -------------------------------------------------------------------------------
  4611. GeneratorsImpl.tests.cpp:<line number>
  4612. ...............................................................................
  4613. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4614. REQUIRE( gen.get() == 1 )
  4615. with expansion:
  4616. 1 == 1
  4617. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4618. REQUIRE( gen.next() )
  4619. with expansion:
  4620. true
  4621. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4622. REQUIRE( gen.get() == 3 )
  4623. with expansion:
  4624. 3 == 3
  4625. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4626. REQUIRE_FALSE( gen.next() )
  4627. with expansion:
  4628. !false
  4629. -------------------------------------------------------------------------------
  4630. Generators internals
  4631. Filter generator
  4632. Throws on construction if it can't get initial element
  4633. -------------------------------------------------------------------------------
  4634. GeneratorsImpl.tests.cpp:<line number>
  4635. ...............................................................................
  4636. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4637. REQUIRE_THROWS_AS( filter([](int) { return false; }, value(1)), Catch::GeneratorException )
  4638. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4639. REQUIRE_THROWS_AS( filter([](int) { return false; }, values({ 1, 2, 3 })), Catch::GeneratorException )
  4640. -------------------------------------------------------------------------------
  4641. Generators internals
  4642. Take generator
  4643. Take less
  4644. -------------------------------------------------------------------------------
  4645. GeneratorsImpl.tests.cpp:<line number>
  4646. ...............................................................................
  4647. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4648. REQUIRE( gen.get() == 1 )
  4649. with expansion:
  4650. 1 == 1
  4651. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4652. REQUIRE( gen.next() )
  4653. with expansion:
  4654. true
  4655. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4656. REQUIRE( gen.get() == 2 )
  4657. with expansion:
  4658. 2 == 2
  4659. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4660. REQUIRE_FALSE( gen.next() )
  4661. with expansion:
  4662. !false
  4663. -------------------------------------------------------------------------------
  4664. Generators internals
  4665. Take generator
  4666. Take more
  4667. -------------------------------------------------------------------------------
  4668. GeneratorsImpl.tests.cpp:<line number>
  4669. ...............................................................................
  4670. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4671. REQUIRE( gen.get() == 1 )
  4672. with expansion:
  4673. 1 == 1
  4674. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4675. REQUIRE_FALSE( gen.next() )
  4676. with expansion:
  4677. !false
  4678. -------------------------------------------------------------------------------
  4679. Generators internals
  4680. Map with explicit return type
  4681. -------------------------------------------------------------------------------
  4682. GeneratorsImpl.tests.cpp:<line number>
  4683. ...............................................................................
  4684. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4685. REQUIRE( gen.get() == 2.0 )
  4686. with expansion:
  4687. 2.0 == 2.0
  4688. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4689. REQUIRE( gen.next() )
  4690. with expansion:
  4691. true
  4692. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4693. REQUIRE( gen.get() == 4.0 )
  4694. with expansion:
  4695. 4.0 == 4.0
  4696. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4697. REQUIRE( gen.next() )
  4698. with expansion:
  4699. true
  4700. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4701. REQUIRE( gen.get() == 6.0 )
  4702. with expansion:
  4703. 6.0 == 6.0
  4704. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4705. REQUIRE_FALSE( gen.next() )
  4706. with expansion:
  4707. !false
  4708. -------------------------------------------------------------------------------
  4709. Generators internals
  4710. Map with deduced return type
  4711. -------------------------------------------------------------------------------
  4712. GeneratorsImpl.tests.cpp:<line number>
  4713. ...............................................................................
  4714. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4715. REQUIRE( gen.get() == 2.0 )
  4716. with expansion:
  4717. 2.0 == 2.0
  4718. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4719. REQUIRE( gen.next() )
  4720. with expansion:
  4721. true
  4722. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4723. REQUIRE( gen.get() == 4.0 )
  4724. with expansion:
  4725. 4.0 == 4.0
  4726. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4727. REQUIRE( gen.next() )
  4728. with expansion:
  4729. true
  4730. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4731. REQUIRE( gen.get() == 6.0 )
  4732. with expansion:
  4733. 6.0 == 6.0
  4734. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4735. REQUIRE_FALSE( gen.next() )
  4736. with expansion:
  4737. !false
  4738. -------------------------------------------------------------------------------
  4739. Generators internals
  4740. Repeat
  4741. Singular repeat
  4742. -------------------------------------------------------------------------------
  4743. GeneratorsImpl.tests.cpp:<line number>
  4744. ...............................................................................
  4745. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4746. REQUIRE( gen.get() == 3 )
  4747. with expansion:
  4748. 3 == 3
  4749. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4750. REQUIRE_FALSE( gen.next() )
  4751. with expansion:
  4752. !false
  4753. -------------------------------------------------------------------------------
  4754. Generators internals
  4755. Repeat
  4756. Actual repeat
  4757. -------------------------------------------------------------------------------
  4758. GeneratorsImpl.tests.cpp:<line number>
  4759. ...............................................................................
  4760. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4761. REQUIRE( gen.get() == 1 )
  4762. with expansion:
  4763. 1 == 1
  4764. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4765. REQUIRE( gen.next() )
  4766. with expansion:
  4767. true
  4768. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4769. REQUIRE( gen.get() == 2 )
  4770. with expansion:
  4771. 2 == 2
  4772. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4773. REQUIRE( gen.next() )
  4774. with expansion:
  4775. true
  4776. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4777. REQUIRE( gen.get() == 3 )
  4778. with expansion:
  4779. 3 == 3
  4780. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4781. REQUIRE( gen.next() )
  4782. with expansion:
  4783. true
  4784. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4785. REQUIRE( gen.get() == 1 )
  4786. with expansion:
  4787. 1 == 1
  4788. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4789. REQUIRE( gen.next() )
  4790. with expansion:
  4791. true
  4792. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4793. REQUIRE( gen.get() == 2 )
  4794. with expansion:
  4795. 2 == 2
  4796. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4797. REQUIRE( gen.next() )
  4798. with expansion:
  4799. true
  4800. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4801. REQUIRE( gen.get() == 3 )
  4802. with expansion:
  4803. 3 == 3
  4804. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4805. REQUIRE_FALSE( gen.next() )
  4806. with expansion:
  4807. !false
  4808. -------------------------------------------------------------------------------
  4809. Generators internals
  4810. Range
  4811. Positive auto step
  4812. Integer
  4813. -------------------------------------------------------------------------------
  4814. GeneratorsImpl.tests.cpp:<line number>
  4815. ...............................................................................
  4816. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4817. REQUIRE( gen.get() == -2 )
  4818. with expansion:
  4819. -2 == -2
  4820. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4821. REQUIRE( gen.next() )
  4822. with expansion:
  4823. true
  4824. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4825. REQUIRE( gen.get() == -1 )
  4826. with expansion:
  4827. -1 == -1
  4828. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4829. REQUIRE( gen.next() )
  4830. with expansion:
  4831. true
  4832. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4833. REQUIRE( gen.get() == 0 )
  4834. with expansion:
  4835. 0 == 0
  4836. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4837. REQUIRE( gen.next() )
  4838. with expansion:
  4839. true
  4840. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4841. REQUIRE( gen.get() == 1 )
  4842. with expansion:
  4843. 1 == 1
  4844. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4845. REQUIRE_FALSE( gen.next() )
  4846. with expansion:
  4847. !false
  4848. -------------------------------------------------------------------------------
  4849. Generators internals
  4850. Range
  4851. Negative auto step
  4852. Integer
  4853. -------------------------------------------------------------------------------
  4854. GeneratorsImpl.tests.cpp:<line number>
  4855. ...............................................................................
  4856. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4857. REQUIRE( gen.get() == 2 )
  4858. with expansion:
  4859. 2 == 2
  4860. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4861. REQUIRE( gen.next() )
  4862. with expansion:
  4863. true
  4864. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4865. REQUIRE( gen.get() == 1 )
  4866. with expansion:
  4867. 1 == 1
  4868. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4869. REQUIRE( gen.next() )
  4870. with expansion:
  4871. true
  4872. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4873. REQUIRE( gen.get() == 0 )
  4874. with expansion:
  4875. 0 == 0
  4876. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4877. REQUIRE( gen.next() )
  4878. with expansion:
  4879. true
  4880. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4881. REQUIRE( gen.get() == -1 )
  4882. with expansion:
  4883. -1 == -1
  4884. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4885. REQUIRE_FALSE( gen.next() )
  4886. with expansion:
  4887. !false
  4888. -------------------------------------------------------------------------------
  4889. Generators internals
  4890. Range
  4891. Positive manual step
  4892. Integer
  4893. Exact
  4894. -------------------------------------------------------------------------------
  4895. GeneratorsImpl.tests.cpp:<line number>
  4896. ...............................................................................
  4897. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4898. REQUIRE( gen.get() == -7 )
  4899. with expansion:
  4900. -7 == -7
  4901. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4902. REQUIRE( gen.next() )
  4903. with expansion:
  4904. true
  4905. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4906. REQUIRE( gen.get() == -4 )
  4907. with expansion:
  4908. -4 == -4
  4909. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4910. REQUIRE( gen.next() )
  4911. with expansion:
  4912. true
  4913. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4914. REQUIRE( gen.get() == -1 )
  4915. with expansion:
  4916. -1 == -1
  4917. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4918. REQUIRE( gen.next() )
  4919. with expansion:
  4920. true
  4921. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4922. REQUIRE( gen.get() == 2 )
  4923. with expansion:
  4924. 2 == 2
  4925. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4926. REQUIRE_FALSE( gen.next() )
  4927. with expansion:
  4928. !false
  4929. -------------------------------------------------------------------------------
  4930. Generators internals
  4931. Range
  4932. Positive manual step
  4933. Integer
  4934. Slightly over end
  4935. -------------------------------------------------------------------------------
  4936. GeneratorsImpl.tests.cpp:<line number>
  4937. ...............................................................................
  4938. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4939. REQUIRE( gen.get() == -7 )
  4940. with expansion:
  4941. -7 == -7
  4942. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4943. REQUIRE( gen.next() )
  4944. with expansion:
  4945. true
  4946. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4947. REQUIRE( gen.get() == -4 )
  4948. with expansion:
  4949. -4 == -4
  4950. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4951. REQUIRE( gen.next() )
  4952. with expansion:
  4953. true
  4954. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4955. REQUIRE( gen.get() == -1 )
  4956. with expansion:
  4957. -1 == -1
  4958. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4959. REQUIRE( gen.next() )
  4960. with expansion:
  4961. true
  4962. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4963. REQUIRE( gen.get() == 2 )
  4964. with expansion:
  4965. 2 == 2
  4966. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4967. REQUIRE_FALSE( gen.next() )
  4968. with expansion:
  4969. !false
  4970. -------------------------------------------------------------------------------
  4971. Generators internals
  4972. Range
  4973. Positive manual step
  4974. Integer
  4975. Slightly under end
  4976. -------------------------------------------------------------------------------
  4977. GeneratorsImpl.tests.cpp:<line number>
  4978. ...............................................................................
  4979. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4980. REQUIRE( gen.get() == -7 )
  4981. with expansion:
  4982. -7 == -7
  4983. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4984. REQUIRE( gen.next() )
  4985. with expansion:
  4986. true
  4987. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4988. REQUIRE( gen.get() == -4 )
  4989. with expansion:
  4990. -4 == -4
  4991. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4992. REQUIRE( gen.next() )
  4993. with expansion:
  4994. true
  4995. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  4996. REQUIRE( gen.get() == -1 )
  4997. with expansion:
  4998. -1 == -1
  4999. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5000. REQUIRE( gen.next() )
  5001. with expansion:
  5002. true
  5003. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5004. REQUIRE( gen.get() == 2 )
  5005. with expansion:
  5006. 2 == 2
  5007. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5008. REQUIRE( gen.next() )
  5009. with expansion:
  5010. true
  5011. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5012. REQUIRE( gen.get() == 5 )
  5013. with expansion:
  5014. 5 == 5
  5015. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5016. REQUIRE_FALSE( gen.next() )
  5017. with expansion:
  5018. !false
  5019. -------------------------------------------------------------------------------
  5020. Generators internals
  5021. Range
  5022. Positive manual step
  5023. Floating Point
  5024. Exact
  5025. -------------------------------------------------------------------------------
  5026. GeneratorsImpl.tests.cpp:<line number>
  5027. ...............................................................................
  5028. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5029. REQUIRE( gen.get() == Approx(expected) )
  5030. with expansion:
  5031. -1.0 == Approx( -1.0 )
  5032. with message:
  5033. Current expected value is -1
  5034. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5035. REQUIRE( gen.next() )
  5036. with expansion:
  5037. true
  5038. with message:
  5039. Current expected value is -1
  5040. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5041. REQUIRE( gen.get() == Approx(expected) )
  5042. with expansion:
  5043. -0.9 == Approx( -0.9 )
  5044. with message:
  5045. Current expected value is -0.9
  5046. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5047. REQUIRE( gen.next() )
  5048. with expansion:
  5049. true
  5050. with message:
  5051. Current expected value is -0.9
  5052. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5053. REQUIRE( gen.get() == Approx(expected) )
  5054. with expansion:
  5055. -0.8 == Approx( -0.8 )
  5056. with message:
  5057. Current expected value is -0.8
  5058. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5059. REQUIRE( gen.next() )
  5060. with expansion:
  5061. true
  5062. with message:
  5063. Current expected value is -0.8
  5064. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5065. REQUIRE( gen.get() == Approx(expected) )
  5066. with expansion:
  5067. -0.7 == Approx( -0.7 )
  5068. with message:
  5069. Current expected value is -0.7
  5070. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5071. REQUIRE( gen.next() )
  5072. with expansion:
  5073. true
  5074. with message:
  5075. Current expected value is -0.7
  5076. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5077. REQUIRE( gen.get() == Approx(expected) )
  5078. with expansion:
  5079. -0.6 == Approx( -0.6 )
  5080. with message:
  5081. Current expected value is -0.6
  5082. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5083. REQUIRE( gen.next() )
  5084. with expansion:
  5085. true
  5086. with message:
  5087. Current expected value is -0.6
  5088. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5089. REQUIRE( gen.get() == Approx(expected) )
  5090. with expansion:
  5091. -0.5 == Approx( -0.5 )
  5092. with message:
  5093. Current expected value is -0.5
  5094. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5095. REQUIRE( gen.next() )
  5096. with expansion:
  5097. true
  5098. with message:
  5099. Current expected value is -0.5
  5100. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5101. REQUIRE( gen.get() == Approx(expected) )
  5102. with expansion:
  5103. -0.4 == Approx( -0.4 )
  5104. with message:
  5105. Current expected value is -0.4
  5106. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5107. REQUIRE( gen.next() )
  5108. with expansion:
  5109. true
  5110. with message:
  5111. Current expected value is -0.4
  5112. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5113. REQUIRE( gen.get() == Approx(expected) )
  5114. with expansion:
  5115. -0.3 == Approx( -0.3 )
  5116. with message:
  5117. Current expected value is -0.3
  5118. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5119. REQUIRE( gen.next() )
  5120. with expansion:
  5121. true
  5122. with message:
  5123. Current expected value is -0.3
  5124. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5125. REQUIRE( gen.get() == Approx(expected) )
  5126. with expansion:
  5127. -0.2 == Approx( -0.2 )
  5128. with message:
  5129. Current expected value is -0.2
  5130. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5131. REQUIRE( gen.next() )
  5132. with expansion:
  5133. true
  5134. with message:
  5135. Current expected value is -0.2
  5136. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5137. REQUIRE( gen.get() == Approx(expected) )
  5138. with expansion:
  5139. -0.1 == Approx( -0.1 )
  5140. with message:
  5141. Current expected value is -0.1
  5142. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5143. REQUIRE( gen.next() )
  5144. with expansion:
  5145. true
  5146. with message:
  5147. Current expected value is -0.1
  5148. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5149. REQUIRE( gen.get() == Approx(expected) )
  5150. with expansion:
  5151. -0.0 == Approx( -0.0 )
  5152. with message:
  5153. Current expected value is -1.38778e-16
  5154. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5155. REQUIRE( gen.next() )
  5156. with expansion:
  5157. true
  5158. with message:
  5159. Current expected value is -1.38778e-16
  5160. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5161. REQUIRE( gen.get() == Approx(expected) )
  5162. with expansion:
  5163. 0.1 == Approx( 0.1 )
  5164. with message:
  5165. Current expected value is 0.1
  5166. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5167. REQUIRE( gen.next() )
  5168. with expansion:
  5169. true
  5170. with message:
  5171. Current expected value is 0.1
  5172. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5173. REQUIRE( gen.get() == Approx(expected) )
  5174. with expansion:
  5175. 0.2 == Approx( 0.2 )
  5176. with message:
  5177. Current expected value is 0.2
  5178. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5179. REQUIRE( gen.next() )
  5180. with expansion:
  5181. true
  5182. with message:
  5183. Current expected value is 0.2
  5184. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5185. REQUIRE( gen.get() == Approx(expected) )
  5186. with expansion:
  5187. 0.3 == Approx( 0.3 )
  5188. with message:
  5189. Current expected value is 0.3
  5190. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5191. REQUIRE( gen.next() )
  5192. with expansion:
  5193. true
  5194. with message:
  5195. Current expected value is 0.3
  5196. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5197. REQUIRE( gen.get() == Approx(expected) )
  5198. with expansion:
  5199. 0.4 == Approx( 0.4 )
  5200. with message:
  5201. Current expected value is 0.4
  5202. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5203. REQUIRE( gen.next() )
  5204. with expansion:
  5205. true
  5206. with message:
  5207. Current expected value is 0.4
  5208. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5209. REQUIRE( gen.get() == Approx(expected) )
  5210. with expansion:
  5211. 0.5 == Approx( 0.5 )
  5212. with message:
  5213. Current expected value is 0.5
  5214. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5215. REQUIRE( gen.next() )
  5216. with expansion:
  5217. true
  5218. with message:
  5219. Current expected value is 0.5
  5220. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5221. REQUIRE( gen.get() == Approx(expected) )
  5222. with expansion:
  5223. 0.6 == Approx( 0.6 )
  5224. with message:
  5225. Current expected value is 0.6
  5226. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5227. REQUIRE( gen.next() )
  5228. with expansion:
  5229. true
  5230. with message:
  5231. Current expected value is 0.6
  5232. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5233. REQUIRE( gen.get() == Approx(expected) )
  5234. with expansion:
  5235. 0.7 == Approx( 0.7 )
  5236. with message:
  5237. Current expected value is 0.7
  5238. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5239. REQUIRE( gen.next() )
  5240. with expansion:
  5241. true
  5242. with message:
  5243. Current expected value is 0.7
  5244. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5245. REQUIRE( gen.get() == Approx(expected) )
  5246. with expansion:
  5247. 0.8 == Approx( 0.8 )
  5248. with message:
  5249. Current expected value is 0.8
  5250. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5251. REQUIRE( gen.next() )
  5252. with expansion:
  5253. true
  5254. with message:
  5255. Current expected value is 0.8
  5256. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5257. REQUIRE( gen.get() == Approx(expected) )
  5258. with expansion:
  5259. 0.9 == Approx( 0.9 )
  5260. with message:
  5261. Current expected value is 0.9
  5262. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5263. REQUIRE( gen.next() )
  5264. with expansion:
  5265. true
  5266. with message:
  5267. Current expected value is 0.9
  5268. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5269. REQUIRE( gen.get() == Approx( rangeEnd ) )
  5270. with expansion:
  5271. 1.0 == Approx( 1.0 )
  5272. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5273. REQUIRE_FALSE( gen.next() )
  5274. with expansion:
  5275. !false
  5276. -------------------------------------------------------------------------------
  5277. Generators internals
  5278. Range
  5279. Positive manual step
  5280. Floating Point
  5281. Slightly over end
  5282. -------------------------------------------------------------------------------
  5283. GeneratorsImpl.tests.cpp:<line number>
  5284. ...............................................................................
  5285. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5286. REQUIRE( gen.get() == Approx(expected) )
  5287. with expansion:
  5288. -1.0 == Approx( -1.0 )
  5289. with message:
  5290. Current expected value is -1
  5291. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5292. REQUIRE( gen.next() )
  5293. with expansion:
  5294. true
  5295. with message:
  5296. Current expected value is -1
  5297. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5298. REQUIRE( gen.get() == Approx(expected) )
  5299. with expansion:
  5300. -0.7 == Approx( -0.7 )
  5301. with message:
  5302. Current expected value is -0.7
  5303. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5304. REQUIRE( gen.next() )
  5305. with expansion:
  5306. true
  5307. with message:
  5308. Current expected value is -0.7
  5309. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5310. REQUIRE( gen.get() == Approx(expected) )
  5311. with expansion:
  5312. -0.4 == Approx( -0.4 )
  5313. with message:
  5314. Current expected value is -0.4
  5315. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5316. REQUIRE( gen.next() )
  5317. with expansion:
  5318. true
  5319. with message:
  5320. Current expected value is -0.4
  5321. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5322. REQUIRE( gen.get() == Approx(expected) )
  5323. with expansion:
  5324. -0.1 == Approx( -0.1 )
  5325. with message:
  5326. Current expected value is -0.1
  5327. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5328. REQUIRE( gen.next() )
  5329. with expansion:
  5330. true
  5331. with message:
  5332. Current expected value is -0.1
  5333. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5334. REQUIRE( gen.get() == Approx(expected) )
  5335. with expansion:
  5336. 0.2 == Approx( 0.2 )
  5337. with message:
  5338. Current expected value is 0.2
  5339. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5340. REQUIRE( gen.next() )
  5341. with expansion:
  5342. true
  5343. with message:
  5344. Current expected value is 0.2
  5345. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5346. REQUIRE( gen.get() == Approx(expected) )
  5347. with expansion:
  5348. 0.5 == Approx( 0.5 )
  5349. with message:
  5350. Current expected value is 0.5
  5351. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5352. REQUIRE( gen.next() )
  5353. with expansion:
  5354. true
  5355. with message:
  5356. Current expected value is 0.5
  5357. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5358. REQUIRE_FALSE( gen.next() )
  5359. with expansion:
  5360. !false
  5361. -------------------------------------------------------------------------------
  5362. Generators internals
  5363. Range
  5364. Positive manual step
  5365. Floating Point
  5366. Slightly under end
  5367. -------------------------------------------------------------------------------
  5368. GeneratorsImpl.tests.cpp:<line number>
  5369. ...............................................................................
  5370. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5371. REQUIRE( gen.get() == Approx(expected) )
  5372. with expansion:
  5373. -1.0 == Approx( -1.0 )
  5374. with message:
  5375. Current expected value is -1
  5376. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5377. REQUIRE( gen.next() )
  5378. with expansion:
  5379. true
  5380. with message:
  5381. Current expected value is -1
  5382. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5383. REQUIRE( gen.get() == Approx(expected) )
  5384. with expansion:
  5385. -0.7 == Approx( -0.7 )
  5386. with message:
  5387. Current expected value is -0.7
  5388. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5389. REQUIRE( gen.next() )
  5390. with expansion:
  5391. true
  5392. with message:
  5393. Current expected value is -0.7
  5394. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5395. REQUIRE( gen.get() == Approx(expected) )
  5396. with expansion:
  5397. -0.4 == Approx( -0.4 )
  5398. with message:
  5399. Current expected value is -0.4
  5400. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5401. REQUIRE( gen.next() )
  5402. with expansion:
  5403. true
  5404. with message:
  5405. Current expected value is -0.4
  5406. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5407. REQUIRE( gen.get() == Approx(expected) )
  5408. with expansion:
  5409. -0.1 == Approx( -0.1 )
  5410. with message:
  5411. Current expected value is -0.1
  5412. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5413. REQUIRE( gen.next() )
  5414. with expansion:
  5415. true
  5416. with message:
  5417. Current expected value is -0.1
  5418. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5419. REQUIRE( gen.get() == Approx(expected) )
  5420. with expansion:
  5421. 0.2 == Approx( 0.2 )
  5422. with message:
  5423. Current expected value is 0.2
  5424. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5425. REQUIRE( gen.next() )
  5426. with expansion:
  5427. true
  5428. with message:
  5429. Current expected value is 0.2
  5430. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5431. REQUIRE( gen.get() == Approx(expected) )
  5432. with expansion:
  5433. 0.5 == Approx( 0.5 )
  5434. with message:
  5435. Current expected value is 0.5
  5436. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5437. REQUIRE( gen.next() )
  5438. with expansion:
  5439. true
  5440. with message:
  5441. Current expected value is 0.5
  5442. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5443. REQUIRE_FALSE( gen.next() )
  5444. with expansion:
  5445. !false
  5446. -------------------------------------------------------------------------------
  5447. Generators internals
  5448. Range
  5449. Negative manual step
  5450. Integer
  5451. Exact
  5452. -------------------------------------------------------------------------------
  5453. GeneratorsImpl.tests.cpp:<line number>
  5454. ...............................................................................
  5455. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5456. REQUIRE( gen.get() == 5 )
  5457. with expansion:
  5458. 5 == 5
  5459. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5460. REQUIRE( gen.next() )
  5461. with expansion:
  5462. true
  5463. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5464. REQUIRE( gen.get() == 2 )
  5465. with expansion:
  5466. 2 == 2
  5467. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5468. REQUIRE( gen.next() )
  5469. with expansion:
  5470. true
  5471. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5472. REQUIRE( gen.get() == -1 )
  5473. with expansion:
  5474. -1 == -1
  5475. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5476. REQUIRE( gen.next() )
  5477. with expansion:
  5478. true
  5479. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5480. REQUIRE( gen.get() == -4 )
  5481. with expansion:
  5482. -4 == -4
  5483. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5484. REQUIRE_FALSE( gen.next() )
  5485. with expansion:
  5486. !false
  5487. -------------------------------------------------------------------------------
  5488. Generators internals
  5489. Range
  5490. Negative manual step
  5491. Integer
  5492. Slightly over end
  5493. -------------------------------------------------------------------------------
  5494. GeneratorsImpl.tests.cpp:<line number>
  5495. ...............................................................................
  5496. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5497. REQUIRE( gen.get() == 5 )
  5498. with expansion:
  5499. 5 == 5
  5500. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5501. REQUIRE( gen.next() )
  5502. with expansion:
  5503. true
  5504. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5505. REQUIRE( gen.get() == 2 )
  5506. with expansion:
  5507. 2 == 2
  5508. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5509. REQUIRE( gen.next() )
  5510. with expansion:
  5511. true
  5512. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5513. REQUIRE( gen.get() == -1 )
  5514. with expansion:
  5515. -1 == -1
  5516. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5517. REQUIRE( gen.next() )
  5518. with expansion:
  5519. true
  5520. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5521. REQUIRE( gen.get() == -4 )
  5522. with expansion:
  5523. -4 == -4
  5524. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5525. REQUIRE_FALSE( gen.next() )
  5526. with expansion:
  5527. !false
  5528. -------------------------------------------------------------------------------
  5529. Generators internals
  5530. Range
  5531. Negative manual step
  5532. Integer
  5533. Slightly under end
  5534. -------------------------------------------------------------------------------
  5535. GeneratorsImpl.tests.cpp:<line number>
  5536. ...............................................................................
  5537. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5538. REQUIRE( gen.get() == 5 )
  5539. with expansion:
  5540. 5 == 5
  5541. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5542. REQUIRE( gen.next() )
  5543. with expansion:
  5544. true
  5545. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5546. REQUIRE( gen.get() == 2 )
  5547. with expansion:
  5548. 2 == 2
  5549. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5550. REQUIRE( gen.next() )
  5551. with expansion:
  5552. true
  5553. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5554. REQUIRE( gen.get() == -1 )
  5555. with expansion:
  5556. -1 == -1
  5557. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5558. REQUIRE( gen.next() )
  5559. with expansion:
  5560. true
  5561. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5562. REQUIRE( gen.get() == -4 )
  5563. with expansion:
  5564. -4 == -4
  5565. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5566. REQUIRE( gen.next() )
  5567. with expansion:
  5568. true
  5569. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5570. REQUIRE( gen.get() == -7 )
  5571. with expansion:
  5572. -7 == -7
  5573. GeneratorsImpl.tests.cpp:<line number>: PASSED:
  5574. REQUIRE_FALSE( gen.next() )
  5575. with expansion:
  5576. !false
  5577. -------------------------------------------------------------------------------
  5578. Greater-than inequalities with different epsilons
  5579. -------------------------------------------------------------------------------
  5580. Approx.tests.cpp:<line number>
  5581. ...............................................................................
  5582. Approx.tests.cpp:<line number>: PASSED:
  5583. REQUIRE( d >= Approx( 1.22 ) )
  5584. with expansion:
  5585. 1.23 >= Approx( 1.22 )
  5586. Approx.tests.cpp:<line number>: PASSED:
  5587. REQUIRE( d >= Approx( 1.23 ) )
  5588. with expansion:
  5589. 1.23 >= Approx( 1.23 )
  5590. Approx.tests.cpp:<line number>: PASSED:
  5591. REQUIRE_FALSE( d >= Approx( 1.24 ) )
  5592. with expansion:
  5593. !(1.23 >= Approx( 1.24 ))
  5594. Approx.tests.cpp:<line number>: PASSED:
  5595. REQUIRE( d >= Approx( 1.24 ).epsilon(0.1) )
  5596. with expansion:
  5597. 1.23 >= Approx( 1.24 )
  5598. -------------------------------------------------------------------------------
  5599. Hashers with different seed produce different hash with same test case
  5600. -------------------------------------------------------------------------------
  5601. TestCaseInfoHasher.tests.cpp:<line number>
  5602. ...............................................................................
  5603. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5604. REQUIRE( h1( dummy ) != h2( dummy ) )
  5605. with expansion:
  5606. 3422778688 (0x<hex digits>)
  5607. !=
  5608. 130711275 (0x<hex digits>)
  5609. -------------------------------------------------------------------------------
  5610. Hashers with same seed produce same hash
  5611. -------------------------------------------------------------------------------
  5612. TestCaseInfoHasher.tests.cpp:<line number>
  5613. ...............................................................................
  5614. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5615. REQUIRE( h1( dummy ) == h2( dummy ) )
  5616. with expansion:
  5617. 3422778688 (0x<hex digits>)
  5618. ==
  5619. 3422778688 (0x<hex digits>)
  5620. -------------------------------------------------------------------------------
  5621. Hashing different test cases produces different result
  5622. Different test name
  5623. -------------------------------------------------------------------------------
  5624. TestCaseInfoHasher.tests.cpp:<line number>
  5625. ...............................................................................
  5626. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5627. REQUIRE( h( dummy1 ) != h( dummy2 ) )
  5628. with expansion:
  5629. 2903002874 (0x<hex digits>)
  5630. !=
  5631. 2668622104 (0x<hex digits>)
  5632. -------------------------------------------------------------------------------
  5633. Hashing different test cases produces different result
  5634. Different classname
  5635. -------------------------------------------------------------------------------
  5636. TestCaseInfoHasher.tests.cpp:<line number>
  5637. ...............................................................................
  5638. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5639. REQUIRE( h( dummy1 ) != h( dummy2 ) )
  5640. with expansion:
  5641. 2673152918 (0x<hex digits>)
  5642. !=
  5643. 3916075712 (0x<hex digits>)
  5644. -------------------------------------------------------------------------------
  5645. Hashing different test cases produces different result
  5646. Different tags
  5647. -------------------------------------------------------------------------------
  5648. TestCaseInfoHasher.tests.cpp:<line number>
  5649. ...............................................................................
  5650. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5651. REQUIRE( h( dummy1 ) != h( dummy2 ) )
  5652. with expansion:
  5653. 2074929312 (0x<hex digits>)
  5654. !=
  5655. 3429949824 (0x<hex digits>)
  5656. -------------------------------------------------------------------------------
  5657. Hashing test case produces same hash across multiple calls
  5658. -------------------------------------------------------------------------------
  5659. TestCaseInfoHasher.tests.cpp:<line number>
  5660. ...............................................................................
  5661. TestCaseInfoHasher.tests.cpp:<line number>: PASSED:
  5662. REQUIRE( h( dummy ) == h( dummy ) )
  5663. with expansion:
  5664. 3422778688 (0x<hex digits>)
  5665. ==
  5666. 3422778688 (0x<hex digits>)
  5667. -------------------------------------------------------------------------------
  5668. INFO and WARN do not abort tests
  5669. -------------------------------------------------------------------------------
  5670. Message.tests.cpp:<line number>
  5671. ...............................................................................
  5672. Message.tests.cpp:<line number>: warning:
  5673. this is a message
  5674. this is a warning
  5675. No assertions in test case 'INFO and WARN do not abort tests'
  5676. -------------------------------------------------------------------------------
  5677. INFO gets logged on failure
  5678. -------------------------------------------------------------------------------
  5679. Message.tests.cpp:<line number>
  5680. ...............................................................................
  5681. Message.tests.cpp:<line number>: FAILED:
  5682. REQUIRE( a == 1 )
  5683. with expansion:
  5684. 2 == 1
  5685. with messages:
  5686. this message should be logged
  5687. so should this
  5688. -------------------------------------------------------------------------------
  5689. INFO gets logged on failure, even if captured before successful assertions
  5690. -------------------------------------------------------------------------------
  5691. Message.tests.cpp:<line number>
  5692. ...............................................................................
  5693. Message.tests.cpp:<line number>: PASSED:
  5694. CHECK( a == 2 )
  5695. with expansion:
  5696. 2 == 2
  5697. with message:
  5698. this message may be logged later
  5699. Message.tests.cpp:<line number>: FAILED:
  5700. CHECK( a == 1 )
  5701. with expansion:
  5702. 2 == 1
  5703. with messages:
  5704. this message may be logged later
  5705. this message should be logged
  5706. Message.tests.cpp:<line number>: FAILED:
  5707. CHECK( a == 0 )
  5708. with expansion:
  5709. 2 == 0
  5710. with messages:
  5711. this message may be logged later
  5712. this message should be logged
  5713. and this, but later
  5714. Message.tests.cpp:<line number>: PASSED:
  5715. CHECK( a == 2 )
  5716. with expansion:
  5717. 2 == 2
  5718. with messages:
  5719. this message may be logged later
  5720. this message should be logged
  5721. and this, but later
  5722. but not this
  5723. -------------------------------------------------------------------------------
  5724. INFO is reset for each loop
  5725. -------------------------------------------------------------------------------
  5726. Message.tests.cpp:<line number>
  5727. ...............................................................................
  5728. Message.tests.cpp:<line number>: PASSED:
  5729. REQUIRE( i < 10 )
  5730. with expansion:
  5731. 0 < 10
  5732. with messages:
  5733. current counter 0
  5734. i := 0
  5735. Message.tests.cpp:<line number>: PASSED:
  5736. REQUIRE( i < 10 )
  5737. with expansion:
  5738. 1 < 10
  5739. with messages:
  5740. current counter 1
  5741. i := 1
  5742. Message.tests.cpp:<line number>: PASSED:
  5743. REQUIRE( i < 10 )
  5744. with expansion:
  5745. 2 < 10
  5746. with messages:
  5747. current counter 2
  5748. i := 2
  5749. Message.tests.cpp:<line number>: PASSED:
  5750. REQUIRE( i < 10 )
  5751. with expansion:
  5752. 3 < 10
  5753. with messages:
  5754. current counter 3
  5755. i := 3
  5756. Message.tests.cpp:<line number>: PASSED:
  5757. REQUIRE( i < 10 )
  5758. with expansion:
  5759. 4 < 10
  5760. with messages:
  5761. current counter 4
  5762. i := 4
  5763. Message.tests.cpp:<line number>: PASSED:
  5764. REQUIRE( i < 10 )
  5765. with expansion:
  5766. 5 < 10
  5767. with messages:
  5768. current counter 5
  5769. i := 5
  5770. Message.tests.cpp:<line number>: PASSED:
  5771. REQUIRE( i < 10 )
  5772. with expansion:
  5773. 6 < 10
  5774. with messages:
  5775. current counter 6
  5776. i := 6
  5777. Message.tests.cpp:<line number>: PASSED:
  5778. REQUIRE( i < 10 )
  5779. with expansion:
  5780. 7 < 10
  5781. with messages:
  5782. current counter 7
  5783. i := 7
  5784. Message.tests.cpp:<line number>: PASSED:
  5785. REQUIRE( i < 10 )
  5786. with expansion:
  5787. 8 < 10
  5788. with messages:
  5789. current counter 8
  5790. i := 8
  5791. Message.tests.cpp:<line number>: PASSED:
  5792. REQUIRE( i < 10 )
  5793. with expansion:
  5794. 9 < 10
  5795. with messages:
  5796. current counter 9
  5797. i := 9
  5798. Message.tests.cpp:<line number>: FAILED:
  5799. REQUIRE( i < 10 )
  5800. with expansion:
  5801. 10 < 10
  5802. with messages:
  5803. current counter 10
  5804. i := 10
  5805. -------------------------------------------------------------------------------
  5806. Inequality checks that should fail
  5807. -------------------------------------------------------------------------------
  5808. Condition.tests.cpp:<line number>
  5809. ...............................................................................
  5810. Condition.tests.cpp:<line number>: FAILED:
  5811. CHECK( data.int_seven != 7 )
  5812. with expansion:
  5813. 7 != 7
  5814. Condition.tests.cpp:<line number>: FAILED:
  5815. CHECK( data.float_nine_point_one != Approx( 9.1f ) )
  5816. with expansion:
  5817. 9.1f != Approx( 9.1000003815 )
  5818. Condition.tests.cpp:<line number>: FAILED:
  5819. CHECK( data.double_pi != Approx( 3.1415926535 ) )
  5820. with expansion:
  5821. 3.1415926535 != Approx( 3.1415926535 )
  5822. Condition.tests.cpp:<line number>: FAILED:
  5823. CHECK( data.str_hello != "hello" )
  5824. with expansion:
  5825. "hello" != "hello"
  5826. Condition.tests.cpp:<line number>: FAILED:
  5827. CHECK( data.str_hello.size() != 5 )
  5828. with expansion:
  5829. 5 != 5
  5830. -------------------------------------------------------------------------------
  5831. Inequality checks that should succeed
  5832. -------------------------------------------------------------------------------
  5833. Condition.tests.cpp:<line number>
  5834. ...............................................................................
  5835. Condition.tests.cpp:<line number>: PASSED:
  5836. REQUIRE( data.int_seven != 6 )
  5837. with expansion:
  5838. 7 != 6
  5839. Condition.tests.cpp:<line number>: PASSED:
  5840. REQUIRE( data.int_seven != 8 )
  5841. with expansion:
  5842. 7 != 8
  5843. Condition.tests.cpp:<line number>: PASSED:
  5844. REQUIRE( data.float_nine_point_one != Approx( 9.11f ) )
  5845. with expansion:
  5846. 9.1f != Approx( 9.1099996567 )
  5847. Condition.tests.cpp:<line number>: PASSED:
  5848. REQUIRE( data.float_nine_point_one != Approx( 9.0f ) )
  5849. with expansion:
  5850. 9.1f != Approx( 9.0 )
  5851. Condition.tests.cpp:<line number>: PASSED:
  5852. REQUIRE( data.float_nine_point_one != Approx( 1 ) )
  5853. with expansion:
  5854. 9.1f != Approx( 1.0 )
  5855. Condition.tests.cpp:<line number>: PASSED:
  5856. REQUIRE( data.float_nine_point_one != Approx( 0 ) )
  5857. with expansion:
  5858. 9.1f != Approx( 0.0 )
  5859. Condition.tests.cpp:<line number>: PASSED:
  5860. REQUIRE( data.double_pi != Approx( 3.1415 ) )
  5861. with expansion:
  5862. 3.1415926535 != Approx( 3.1415 )
  5863. Condition.tests.cpp:<line number>: PASSED:
  5864. REQUIRE( data.str_hello != "goodbye" )
  5865. with expansion:
  5866. "hello" != "goodbye"
  5867. Condition.tests.cpp:<line number>: PASSED:
  5868. REQUIRE( data.str_hello != "hell" )
  5869. with expansion:
  5870. "hello" != "hell"
  5871. Condition.tests.cpp:<line number>: PASSED:
  5872. REQUIRE( data.str_hello != "hello1" )
  5873. with expansion:
  5874. "hello" != "hello1"
  5875. Condition.tests.cpp:<line number>: PASSED:
  5876. REQUIRE( data.str_hello.size() != 6 )
  5877. with expansion:
  5878. 5 != 6
  5879. -------------------------------------------------------------------------------
  5880. Lambdas in assertions
  5881. -------------------------------------------------------------------------------
  5882. Compilation.tests.cpp:<line number>
  5883. ...............................................................................
  5884. Compilation.tests.cpp:<line number>: PASSED:
  5885. REQUIRE( []() { return true; }() )
  5886. with expansion:
  5887. true
  5888. -------------------------------------------------------------------------------
  5889. Less-than inequalities with different epsilons
  5890. -------------------------------------------------------------------------------
  5891. Approx.tests.cpp:<line number>
  5892. ...............................................................................
  5893. Approx.tests.cpp:<line number>: PASSED:
  5894. REQUIRE( d <= Approx( 1.24 ) )
  5895. with expansion:
  5896. 1.23 <= Approx( 1.24 )
  5897. Approx.tests.cpp:<line number>: PASSED:
  5898. REQUIRE( d <= Approx( 1.23 ) )
  5899. with expansion:
  5900. 1.23 <= Approx( 1.23 )
  5901. Approx.tests.cpp:<line number>: PASSED:
  5902. REQUIRE_FALSE( d <= Approx( 1.22 ) )
  5903. with expansion:
  5904. !(1.23 <= Approx( 1.22 ))
  5905. Approx.tests.cpp:<line number>: PASSED:
  5906. REQUIRE( d <= Approx( 1.22 ).epsilon(0.1) )
  5907. with expansion:
  5908. 1.23 <= Approx( 1.22 )
  5909. -------------------------------------------------------------------------------
  5910. ManuallyRegistered
  5911. -------------------------------------------------------------------------------
  5912. Misc.tests.cpp:<line number>
  5913. ...............................................................................
  5914. Misc.tests.cpp:<line number>: PASSED:
  5915. with message:
  5916. was called
  5917. -------------------------------------------------------------------------------
  5918. Matchers can be (AllOf) composed with the && operator
  5919. -------------------------------------------------------------------------------
  5920. Matchers.tests.cpp:<line number>
  5921. ...............................................................................
  5922. Matchers.tests.cpp:<line number>: PASSED:
  5923. CHECK_THAT( testStringForMatching(), ContainsSubstring( "string" ) && ContainsSubstring( "abc" ) && ContainsSubstring( "substring" ) && ContainsSubstring( "contains" ) )
  5924. with expansion:
  5925. "this string contains 'abc' as a substring" ( contains: "string" and
  5926. contains: "abc" and contains: "substring" and contains: "contains" )
  5927. -------------------------------------------------------------------------------
  5928. Matchers can be (AnyOf) composed with the || operator
  5929. -------------------------------------------------------------------------------
  5930. Matchers.tests.cpp:<line number>
  5931. ...............................................................................
  5932. Matchers.tests.cpp:<line number>: PASSED:
  5933. CHECK_THAT( testStringForMatching(), ContainsSubstring( "string" ) || ContainsSubstring( "different" ) || ContainsSubstring( "random" ) )
  5934. with expansion:
  5935. "this string contains 'abc' as a substring" ( contains: "string" or contains:
  5936. "different" or contains: "random" )
  5937. Matchers.tests.cpp:<line number>: PASSED:
  5938. CHECK_THAT( testStringForMatching2(), ContainsSubstring( "string" ) || ContainsSubstring( "different" ) || ContainsSubstring( "random" ) )
  5939. with expansion:
  5940. "some completely different text that contains one common word" ( contains:
  5941. "string" or contains: "different" or contains: "random" )
  5942. -------------------------------------------------------------------------------
  5943. Matchers can be composed with both && and ||
  5944. -------------------------------------------------------------------------------
  5945. Matchers.tests.cpp:<line number>
  5946. ...............................................................................
  5947. Matchers.tests.cpp:<line number>: PASSED:
  5948. CHECK_THAT( testStringForMatching(), ( ContainsSubstring( "string" ) || ContainsSubstring( "different" ) ) && ContainsSubstring( "substring" ) )
  5949. with expansion:
  5950. "this string contains 'abc' as a substring" ( ( contains: "string" or
  5951. contains: "different" ) and contains: "substring" )
  5952. -------------------------------------------------------------------------------
  5953. Matchers can be composed with both && and || - failing
  5954. -------------------------------------------------------------------------------
  5955. Matchers.tests.cpp:<line number>
  5956. ...............................................................................
  5957. Matchers.tests.cpp:<line number>: FAILED:
  5958. CHECK_THAT( testStringForMatching(), ( ContainsSubstring( "string" ) || ContainsSubstring( "different" ) ) && ContainsSubstring( "random" ) )
  5959. with expansion:
  5960. "this string contains 'abc' as a substring" ( ( contains: "string" or
  5961. contains: "different" ) and contains: "random" )
  5962. -------------------------------------------------------------------------------
  5963. Matchers can be negated (Not) with the ! operator
  5964. -------------------------------------------------------------------------------
  5965. Matchers.tests.cpp:<line number>
  5966. ...............................................................................
  5967. Matchers.tests.cpp:<line number>: PASSED:
  5968. CHECK_THAT( testStringForMatching(), !ContainsSubstring( "different" ) )
  5969. with expansion:
  5970. "this string contains 'abc' as a substring" not contains: "different"
  5971. -------------------------------------------------------------------------------
  5972. Matchers can be negated (Not) with the ! operator - failing
  5973. -------------------------------------------------------------------------------
  5974. Matchers.tests.cpp:<line number>
  5975. ...............................................................................
  5976. Matchers.tests.cpp:<line number>: FAILED:
  5977. CHECK_THAT( testStringForMatching(), !ContainsSubstring( "substring" ) )
  5978. with expansion:
  5979. "this string contains 'abc' as a substring" not contains: "substring"
  5980. -------------------------------------------------------------------------------
  5981. Mayfail test case with nested sections
  5982. A
  5983. 1
  5984. -------------------------------------------------------------------------------
  5985. Condition.tests.cpp:<line number>
  5986. ...............................................................................
  5987. Condition.tests.cpp:<line number>: FAILED:
  5988. -------------------------------------------------------------------------------
  5989. Mayfail test case with nested sections
  5990. A
  5991. 2
  5992. -------------------------------------------------------------------------------
  5993. Condition.tests.cpp:<line number>
  5994. ...............................................................................
  5995. Condition.tests.cpp:<line number>: FAILED:
  5996. -------------------------------------------------------------------------------
  5997. Mayfail test case with nested sections
  5998. B
  5999. 1
  6000. -------------------------------------------------------------------------------
  6001. Condition.tests.cpp:<line number>
  6002. ...............................................................................
  6003. Condition.tests.cpp:<line number>: FAILED:
  6004. -------------------------------------------------------------------------------
  6005. Mayfail test case with nested sections
  6006. B
  6007. 2
  6008. -------------------------------------------------------------------------------
  6009. Condition.tests.cpp:<line number>
  6010. ...............................................................................
  6011. Condition.tests.cpp:<line number>: FAILED:
  6012. -------------------------------------------------------------------------------
  6013. Mismatching exception messages failing the test
  6014. -------------------------------------------------------------------------------
  6015. Exception.tests.cpp:<line number>
  6016. ...............................................................................
  6017. Exception.tests.cpp:<line number>: PASSED:
  6018. REQUIRE_THROWS_WITH( thisThrows(), "expected exception" )
  6019. with expansion:
  6020. "expected exception" equals: "expected exception"
  6021. Exception.tests.cpp:<line number>: FAILED:
  6022. REQUIRE_THROWS_WITH( thisThrows(), "should fail" )
  6023. with expansion:
  6024. "expected exception" equals: "should fail"
  6025. -------------------------------------------------------------------------------
  6026. Multireporter calls reporters and listeners in correct order
  6027. -------------------------------------------------------------------------------
  6028. Reporters.tests.cpp:<line number>
  6029. ...............................................................................
  6030. Reporters.tests.cpp:<line number>: PASSED:
  6031. REQUIRE( records == expected )
  6032. with expansion:
  6033. { "Hello", "world", "Goodbye", "world" }
  6034. ==
  6035. { "Hello", "world", "Goodbye", "world" }
  6036. -------------------------------------------------------------------------------
  6037. Multireporter updates ReporterPreferences properly
  6038. -------------------------------------------------------------------------------
  6039. Reporters.tests.cpp:<line number>
  6040. ...............................................................................
  6041. Reporters.tests.cpp:<line number>: PASSED:
  6042. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == false )
  6043. with expansion:
  6044. false == false
  6045. Reporters.tests.cpp:<line number>: PASSED:
  6046. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == false )
  6047. with expansion:
  6048. false == false
  6049. -------------------------------------------------------------------------------
  6050. Multireporter updates ReporterPreferences properly
  6051. Adding listeners
  6052. -------------------------------------------------------------------------------
  6053. Reporters.tests.cpp:<line number>
  6054. ...............................................................................
  6055. Reporters.tests.cpp:<line number>: PASSED:
  6056. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6057. with expansion:
  6058. true == true
  6059. Reporters.tests.cpp:<line number>: PASSED:
  6060. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == false )
  6061. with expansion:
  6062. false == false
  6063. Reporters.tests.cpp:<line number>: PASSED:
  6064. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6065. with expansion:
  6066. true == true
  6067. Reporters.tests.cpp:<line number>: PASSED:
  6068. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == true )
  6069. with expansion:
  6070. true == true
  6071. Reporters.tests.cpp:<line number>: PASSED:
  6072. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6073. with expansion:
  6074. true == true
  6075. Reporters.tests.cpp:<line number>: PASSED:
  6076. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == true )
  6077. with expansion:
  6078. true == true
  6079. -------------------------------------------------------------------------------
  6080. Multireporter updates ReporterPreferences properly
  6081. -------------------------------------------------------------------------------
  6082. Reporters.tests.cpp:<line number>
  6083. ...............................................................................
  6084. Reporters.tests.cpp:<line number>: PASSED:
  6085. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == false )
  6086. with expansion:
  6087. false == false
  6088. Reporters.tests.cpp:<line number>: PASSED:
  6089. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == false )
  6090. with expansion:
  6091. false == false
  6092. -------------------------------------------------------------------------------
  6093. Multireporter updates ReporterPreferences properly
  6094. Adding reporters
  6095. -------------------------------------------------------------------------------
  6096. Reporters.tests.cpp:<line number>
  6097. ...............................................................................
  6098. Reporters.tests.cpp:<line number>: PASSED:
  6099. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6100. with expansion:
  6101. true == true
  6102. Reporters.tests.cpp:<line number>: PASSED:
  6103. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == false )
  6104. with expansion:
  6105. false == false
  6106. Reporters.tests.cpp:<line number>: PASSED:
  6107. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6108. with expansion:
  6109. true == true
  6110. Reporters.tests.cpp:<line number>: PASSED:
  6111. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == true )
  6112. with expansion:
  6113. true == true
  6114. Reporters.tests.cpp:<line number>: PASSED:
  6115. REQUIRE( multiReporter.getPreferences().shouldRedirectStdOut == true )
  6116. with expansion:
  6117. true == true
  6118. Reporters.tests.cpp:<line number>: PASSED:
  6119. REQUIRE( multiReporter.getPreferences().shouldReportAllAssertions == true )
  6120. with expansion:
  6121. true == true
  6122. -------------------------------------------------------------------------------
  6123. Nested generators and captured variables
  6124. -------------------------------------------------------------------------------
  6125. Generators.tests.cpp:<line number>
  6126. ...............................................................................
  6127. Generators.tests.cpp:<line number>: PASSED:
  6128. REQUIRE( values > -6 )
  6129. with expansion:
  6130. 3 > -6
  6131. -------------------------------------------------------------------------------
  6132. Nested generators and captured variables
  6133. -------------------------------------------------------------------------------
  6134. Generators.tests.cpp:<line number>
  6135. ...............................................................................
  6136. Generators.tests.cpp:<line number>: PASSED:
  6137. REQUIRE( values > -6 )
  6138. with expansion:
  6139. 4 > -6
  6140. -------------------------------------------------------------------------------
  6141. Nested generators and captured variables
  6142. -------------------------------------------------------------------------------
  6143. Generators.tests.cpp:<line number>
  6144. ...............................................................................
  6145. Generators.tests.cpp:<line number>: PASSED:
  6146. REQUIRE( values > -6 )
  6147. with expansion:
  6148. 5 > -6
  6149. -------------------------------------------------------------------------------
  6150. Nested generators and captured variables
  6151. -------------------------------------------------------------------------------
  6152. Generators.tests.cpp:<line number>
  6153. ...............................................................................
  6154. Generators.tests.cpp:<line number>: PASSED:
  6155. REQUIRE( values > -6 )
  6156. with expansion:
  6157. 6 > -6
  6158. -------------------------------------------------------------------------------
  6159. Nested generators and captured variables
  6160. -------------------------------------------------------------------------------
  6161. Generators.tests.cpp:<line number>
  6162. ...............................................................................
  6163. Generators.tests.cpp:<line number>: PASSED:
  6164. REQUIRE( values > -6 )
  6165. with expansion:
  6166. -5 > -6
  6167. -------------------------------------------------------------------------------
  6168. Nested generators and captured variables
  6169. -------------------------------------------------------------------------------
  6170. Generators.tests.cpp:<line number>
  6171. ...............................................................................
  6172. Generators.tests.cpp:<line number>: PASSED:
  6173. REQUIRE( values > -6 )
  6174. with expansion:
  6175. -4 > -6
  6176. -------------------------------------------------------------------------------
  6177. Nested generators and captured variables
  6178. -------------------------------------------------------------------------------
  6179. Generators.tests.cpp:<line number>
  6180. ...............................................................................
  6181. Generators.tests.cpp:<line number>: PASSED:
  6182. REQUIRE( values > -6 )
  6183. with expansion:
  6184. 90 > -6
  6185. -------------------------------------------------------------------------------
  6186. Nested generators and captured variables
  6187. -------------------------------------------------------------------------------
  6188. Generators.tests.cpp:<line number>
  6189. ...............................................................................
  6190. Generators.tests.cpp:<line number>: PASSED:
  6191. REQUIRE( values > -6 )
  6192. with expansion:
  6193. 91 > -6
  6194. -------------------------------------------------------------------------------
  6195. Nested generators and captured variables
  6196. -------------------------------------------------------------------------------
  6197. Generators.tests.cpp:<line number>
  6198. ...............................................................................
  6199. Generators.tests.cpp:<line number>: PASSED:
  6200. REQUIRE( values > -6 )
  6201. with expansion:
  6202. 92 > -6
  6203. -------------------------------------------------------------------------------
  6204. Nested generators and captured variables
  6205. -------------------------------------------------------------------------------
  6206. Generators.tests.cpp:<line number>
  6207. ...............................................................................
  6208. Generators.tests.cpp:<line number>: PASSED:
  6209. REQUIRE( values > -6 )
  6210. with expansion:
  6211. 93 > -6
  6212. -------------------------------------------------------------------------------
  6213. Nested generators and captured variables
  6214. -------------------------------------------------------------------------------
  6215. Generators.tests.cpp:<line number>
  6216. ...............................................................................
  6217. Generators.tests.cpp:<line number>: PASSED:
  6218. REQUIRE( values > -6 )
  6219. with expansion:
  6220. 94 > -6
  6221. -------------------------------------------------------------------------------
  6222. Nested generators and captured variables
  6223. -------------------------------------------------------------------------------
  6224. Generators.tests.cpp:<line number>
  6225. ...............................................................................
  6226. Generators.tests.cpp:<line number>: PASSED:
  6227. REQUIRE( values > -6 )
  6228. with expansion:
  6229. 95 > -6
  6230. -------------------------------------------------------------------------------
  6231. Nested generators and captured variables
  6232. -------------------------------------------------------------------------------
  6233. Generators.tests.cpp:<line number>
  6234. ...............................................................................
  6235. Generators.tests.cpp:<line number>: PASSED:
  6236. REQUIRE( values > -6 )
  6237. with expansion:
  6238. 96 > -6
  6239. -------------------------------------------------------------------------------
  6240. Nested generators and captured variables
  6241. -------------------------------------------------------------------------------
  6242. Generators.tests.cpp:<line number>
  6243. ...............................................................................
  6244. Generators.tests.cpp:<line number>: PASSED:
  6245. REQUIRE( values > -6 )
  6246. with expansion:
  6247. 97 > -6
  6248. -------------------------------------------------------------------------------
  6249. Nested generators and captured variables
  6250. -------------------------------------------------------------------------------
  6251. Generators.tests.cpp:<line number>
  6252. ...............................................................................
  6253. Generators.tests.cpp:<line number>: PASSED:
  6254. REQUIRE( values > -6 )
  6255. with expansion:
  6256. 98 > -6
  6257. -------------------------------------------------------------------------------
  6258. Nested generators and captured variables
  6259. -------------------------------------------------------------------------------
  6260. Generators.tests.cpp:<line number>
  6261. ...............................................................................
  6262. Generators.tests.cpp:<line number>: PASSED:
  6263. REQUIRE( values > -6 )
  6264. with expansion:
  6265. 99 > -6
  6266. -------------------------------------------------------------------------------
  6267. Nice descriptive name
  6268. -------------------------------------------------------------------------------
  6269. Misc.tests.cpp:<line number>
  6270. ...............................................................................
  6271. Misc.tests.cpp:<line number>: warning:
  6272. This one ran
  6273. No assertions in test case 'Nice descriptive name'
  6274. -------------------------------------------------------------------------------
  6275. Non-std exceptions can be translated
  6276. -------------------------------------------------------------------------------
  6277. Exception.tests.cpp:<line number>
  6278. ...............................................................................
  6279. Exception.tests.cpp:<line number>: FAILED:
  6280. due to unexpected exception with message:
  6281. custom exception
  6282. -------------------------------------------------------------------------------
  6283. Objects that evaluated in boolean contexts can be checked
  6284. -------------------------------------------------------------------------------
  6285. Tricky.tests.cpp:<line number>
  6286. ...............................................................................
  6287. Tricky.tests.cpp:<line number>: PASSED:
  6288. CHECK( True )
  6289. with expansion:
  6290. {?}
  6291. Tricky.tests.cpp:<line number>: PASSED:
  6292. CHECK( !False )
  6293. with expansion:
  6294. true
  6295. Tricky.tests.cpp:<line number>: PASSED:
  6296. CHECK_FALSE( False )
  6297. with expansion:
  6298. !{?}
  6299. -------------------------------------------------------------------------------
  6300. Optionally static assertions
  6301. -------------------------------------------------------------------------------
  6302. Compilation.tests.cpp:<line number>
  6303. ...............................................................................
  6304. Compilation.tests.cpp:<line number>: PASSED:
  6305. with message:
  6306. std::is_void<void>::value
  6307. Compilation.tests.cpp:<line number>: PASSED:
  6308. with message:
  6309. !(std::is_void<int>::value)
  6310. Compilation.tests.cpp:<line number>: PASSED:
  6311. with message:
  6312. std::is_void<void>::value
  6313. Compilation.tests.cpp:<line number>: PASSED:
  6314. with message:
  6315. !(std::is_void<int>::value)
  6316. -------------------------------------------------------------------------------
  6317. Ordering comparison checks that should fail
  6318. -------------------------------------------------------------------------------
  6319. Condition.tests.cpp:<line number>
  6320. ...............................................................................
  6321. Condition.tests.cpp:<line number>: FAILED:
  6322. CHECK( data.int_seven > 7 )
  6323. with expansion:
  6324. 7 > 7
  6325. Condition.tests.cpp:<line number>: FAILED:
  6326. CHECK( data.int_seven < 7 )
  6327. with expansion:
  6328. 7 < 7
  6329. Condition.tests.cpp:<line number>: FAILED:
  6330. CHECK( data.int_seven > 8 )
  6331. with expansion:
  6332. 7 > 8
  6333. Condition.tests.cpp:<line number>: FAILED:
  6334. CHECK( data.int_seven < 6 )
  6335. with expansion:
  6336. 7 < 6
  6337. Condition.tests.cpp:<line number>: FAILED:
  6338. CHECK( data.int_seven < 0 )
  6339. with expansion:
  6340. 7 < 0
  6341. Condition.tests.cpp:<line number>: FAILED:
  6342. CHECK( data.int_seven < -1 )
  6343. with expansion:
  6344. 7 < -1
  6345. Condition.tests.cpp:<line number>: FAILED:
  6346. CHECK( data.int_seven >= 8 )
  6347. with expansion:
  6348. 7 >= 8
  6349. Condition.tests.cpp:<line number>: FAILED:
  6350. CHECK( data.int_seven <= 6 )
  6351. with expansion:
  6352. 7 <= 6
  6353. Condition.tests.cpp:<line number>: FAILED:
  6354. CHECK( data.float_nine_point_one < 9 )
  6355. with expansion:
  6356. 9.1f < 9
  6357. Condition.tests.cpp:<line number>: FAILED:
  6358. CHECK( data.float_nine_point_one > 10 )
  6359. with expansion:
  6360. 9.1f > 10
  6361. Condition.tests.cpp:<line number>: FAILED:
  6362. CHECK( data.float_nine_point_one > 9.2 )
  6363. with expansion:
  6364. 9.1f > 9.2
  6365. Condition.tests.cpp:<line number>: FAILED:
  6366. CHECK( data.str_hello > "hello" )
  6367. with expansion:
  6368. "hello" > "hello"
  6369. Condition.tests.cpp:<line number>: FAILED:
  6370. CHECK( data.str_hello < "hello" )
  6371. with expansion:
  6372. "hello" < "hello"
  6373. Condition.tests.cpp:<line number>: FAILED:
  6374. CHECK( data.str_hello > "hellp" )
  6375. with expansion:
  6376. "hello" > "hellp"
  6377. Condition.tests.cpp:<line number>: FAILED:
  6378. CHECK( data.str_hello > "z" )
  6379. with expansion:
  6380. "hello" > "z"
  6381. Condition.tests.cpp:<line number>: FAILED:
  6382. CHECK( data.str_hello < "hellm" )
  6383. with expansion:
  6384. "hello" < "hellm"
  6385. Condition.tests.cpp:<line number>: FAILED:
  6386. CHECK( data.str_hello < "a" )
  6387. with expansion:
  6388. "hello" < "a"
  6389. Condition.tests.cpp:<line number>: FAILED:
  6390. CHECK( data.str_hello >= "z" )
  6391. with expansion:
  6392. "hello" >= "z"
  6393. Condition.tests.cpp:<line number>: FAILED:
  6394. CHECK( data.str_hello <= "a" )
  6395. with expansion:
  6396. "hello" <= "a"
  6397. -------------------------------------------------------------------------------
  6398. Ordering comparison checks that should succeed
  6399. -------------------------------------------------------------------------------
  6400. Condition.tests.cpp:<line number>
  6401. ...............................................................................
  6402. Condition.tests.cpp:<line number>: PASSED:
  6403. REQUIRE( data.int_seven < 8 )
  6404. with expansion:
  6405. 7 < 8
  6406. Condition.tests.cpp:<line number>: PASSED:
  6407. REQUIRE( data.int_seven > 6 )
  6408. with expansion:
  6409. 7 > 6
  6410. Condition.tests.cpp:<line number>: PASSED:
  6411. REQUIRE( data.int_seven > 0 )
  6412. with expansion:
  6413. 7 > 0
  6414. Condition.tests.cpp:<line number>: PASSED:
  6415. REQUIRE( data.int_seven > -1 )
  6416. with expansion:
  6417. 7 > -1
  6418. Condition.tests.cpp:<line number>: PASSED:
  6419. REQUIRE( data.int_seven >= 7 )
  6420. with expansion:
  6421. 7 >= 7
  6422. Condition.tests.cpp:<line number>: PASSED:
  6423. REQUIRE( data.int_seven >= 6 )
  6424. with expansion:
  6425. 7 >= 6
  6426. Condition.tests.cpp:<line number>: PASSED:
  6427. REQUIRE( data.int_seven <= 7 )
  6428. with expansion:
  6429. 7 <= 7
  6430. Condition.tests.cpp:<line number>: PASSED:
  6431. REQUIRE( data.int_seven <= 8 )
  6432. with expansion:
  6433. 7 <= 8
  6434. Condition.tests.cpp:<line number>: PASSED:
  6435. REQUIRE( data.float_nine_point_one > 9 )
  6436. with expansion:
  6437. 9.1f > 9
  6438. Condition.tests.cpp:<line number>: PASSED:
  6439. REQUIRE( data.float_nine_point_one < 10 )
  6440. with expansion:
  6441. 9.1f < 10
  6442. Condition.tests.cpp:<line number>: PASSED:
  6443. REQUIRE( data.float_nine_point_one < 9.2 )
  6444. with expansion:
  6445. 9.1f < 9.2
  6446. Condition.tests.cpp:<line number>: PASSED:
  6447. REQUIRE( data.str_hello <= "hello" )
  6448. with expansion:
  6449. "hello" <= "hello"
  6450. Condition.tests.cpp:<line number>: PASSED:
  6451. REQUIRE( data.str_hello >= "hello" )
  6452. with expansion:
  6453. "hello" >= "hello"
  6454. Condition.tests.cpp:<line number>: PASSED:
  6455. REQUIRE( data.str_hello < "hellp" )
  6456. with expansion:
  6457. "hello" < "hellp"
  6458. Condition.tests.cpp:<line number>: PASSED:
  6459. REQUIRE( data.str_hello < "zebra" )
  6460. with expansion:
  6461. "hello" < "zebra"
  6462. Condition.tests.cpp:<line number>: PASSED:
  6463. REQUIRE( data.str_hello > "hellm" )
  6464. with expansion:
  6465. "hello" > "hellm"
  6466. Condition.tests.cpp:<line number>: PASSED:
  6467. REQUIRE( data.str_hello > "a" )
  6468. with expansion:
  6469. "hello" > "a"
  6470. -------------------------------------------------------------------------------
  6471. Our PCG implementation provides expected results for known seeds
  6472. Default seeded
  6473. -------------------------------------------------------------------------------
  6474. RandomNumberGeneration.tests.cpp:<line number>
  6475. ...............................................................................
  6476. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6477. REQUIRE( rng() == 0x<hex digits> )
  6478. with expansion:
  6479. 4242248763 (0x<hex digits>)
  6480. ==
  6481. 4242248763 (0x<hex digits>)
  6482. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6483. REQUIRE( rng() == 0x<hex digits> )
  6484. with expansion:
  6485. 1867888929 (0x<hex digits>)
  6486. ==
  6487. 1867888929 (0x<hex digits>)
  6488. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6489. REQUIRE( rng() == 0x<hex digits> )
  6490. with expansion:
  6491. 1276619030 (0x<hex digits>)
  6492. ==
  6493. 1276619030 (0x<hex digits>)
  6494. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6495. REQUIRE( rng() == 0x<hex digits> )
  6496. with expansion:
  6497. 1911218783 (0x<hex digits>)
  6498. ==
  6499. 1911218783 (0x<hex digits>)
  6500. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6501. REQUIRE( rng() == 0x<hex digits> )
  6502. with expansion:
  6503. 1827115164 (0x<hex digits>)
  6504. ==
  6505. 1827115164 (0x<hex digits>)
  6506. -------------------------------------------------------------------------------
  6507. Our PCG implementation provides expected results for known seeds
  6508. Specific seed
  6509. -------------------------------------------------------------------------------
  6510. RandomNumberGeneration.tests.cpp:<line number>
  6511. ...............................................................................
  6512. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6513. REQUIRE( rng() == 0x<hex digits> )
  6514. with expansion:
  6515. 1472234645 (0x<hex digits>)
  6516. ==
  6517. 1472234645 (0x<hex digits>)
  6518. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6519. REQUIRE( rng() == 0x<hex digits> )
  6520. with expansion:
  6521. 868832940 (0x<hex digits>)
  6522. ==
  6523. 868832940 (0x<hex digits>)
  6524. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6525. REQUIRE( rng() == 0x<hex digits> )
  6526. with expansion:
  6527. 570883446 (0x<hex digits>)
  6528. ==
  6529. 570883446 (0x<hex digits>)
  6530. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6531. REQUIRE( rng() == 0x<hex digits> )
  6532. with expansion:
  6533. 889299803 (0x<hex digits>)
  6534. ==
  6535. 889299803 (0x<hex digits>)
  6536. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6537. REQUIRE( rng() == 0x<hex digits> )
  6538. with expansion:
  6539. 4261393167 (0x<hex digits>)
  6540. ==
  6541. 4261393167 (0x<hex digits>)
  6542. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6543. REQUIRE( rng() == 0x<hex digits> )
  6544. with expansion:
  6545. 1472234645 (0x<hex digits>)
  6546. ==
  6547. 1472234645 (0x<hex digits>)
  6548. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6549. REQUIRE( rng() == 0x<hex digits> )
  6550. with expansion:
  6551. 868832940 (0x<hex digits>)
  6552. ==
  6553. 868832940 (0x<hex digits>)
  6554. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6555. REQUIRE( rng() == 0x<hex digits> )
  6556. with expansion:
  6557. 570883446 (0x<hex digits>)
  6558. ==
  6559. 570883446 (0x<hex digits>)
  6560. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6561. REQUIRE( rng() == 0x<hex digits> )
  6562. with expansion:
  6563. 889299803 (0x<hex digits>)
  6564. ==
  6565. 889299803 (0x<hex digits>)
  6566. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  6567. REQUIRE( rng() == 0x<hex digits> )
  6568. with expansion:
  6569. 4261393167 (0x<hex digits>)
  6570. ==
  6571. 4261393167 (0x<hex digits>)
  6572. -------------------------------------------------------------------------------
  6573. Output from all sections is reported
  6574. one
  6575. -------------------------------------------------------------------------------
  6576. Message.tests.cpp:<line number>
  6577. ...............................................................................
  6578. Message.tests.cpp:<line number>: FAILED:
  6579. explicitly with message:
  6580. Message from section one
  6581. -------------------------------------------------------------------------------
  6582. Output from all sections is reported
  6583. two
  6584. -------------------------------------------------------------------------------
  6585. Message.tests.cpp:<line number>
  6586. ...............................................................................
  6587. Message.tests.cpp:<line number>: FAILED:
  6588. explicitly with message:
  6589. Message from section two
  6590. -------------------------------------------------------------------------------
  6591. Overloaded comma or address-of operators are not used
  6592. -------------------------------------------------------------------------------
  6593. Matchers.tests.cpp:<line number>
  6594. ...............................................................................
  6595. Matchers.tests.cpp:<line number>: PASSED:
  6596. REQUIRE_THROWS_AS( ( EvilMatcher(), EvilMatcher() ), EvilCommaOperatorUsed )
  6597. Matchers.tests.cpp:<line number>: PASSED:
  6598. REQUIRE_THROWS_AS( &EvilMatcher(), EvilAddressOfOperatorUsed )
  6599. Matchers.tests.cpp:<line number>: PASSED:
  6600. REQUIRE_NOTHROW( EvilMatcher() || ( EvilMatcher() && !EvilMatcher() ) )
  6601. Matchers.tests.cpp:<line number>: PASSED:
  6602. REQUIRE_NOTHROW( ( EvilMatcher() && EvilMatcher() ) || !EvilMatcher() )
  6603. -------------------------------------------------------------------------------
  6604. Parse test names and tags
  6605. Empty test spec should have no filters
  6606. -------------------------------------------------------------------------------
  6607. CmdLine.tests.cpp:<line number>
  6608. ...............................................................................
  6609. CmdLine.tests.cpp:<line number>: PASSED:
  6610. CHECK( spec.hasFilters() == false )
  6611. with expansion:
  6612. false == false
  6613. CmdLine.tests.cpp:<line number>: PASSED:
  6614. CHECK( spec.matches( *tcA ) == false )
  6615. with expansion:
  6616. false == false
  6617. CmdLine.tests.cpp:<line number>: PASSED:
  6618. CHECK( spec.matches( *tcB ) == false )
  6619. with expansion:
  6620. false == false
  6621. -------------------------------------------------------------------------------
  6622. Parse test names and tags
  6623. Test spec from empty string should have no filters
  6624. -------------------------------------------------------------------------------
  6625. CmdLine.tests.cpp:<line number>
  6626. ...............................................................................
  6627. CmdLine.tests.cpp:<line number>: PASSED:
  6628. CHECK( spec.hasFilters() == false )
  6629. with expansion:
  6630. false == false
  6631. CmdLine.tests.cpp:<line number>: PASSED:
  6632. CHECK( spec.matches( *tcA ) == false )
  6633. with expansion:
  6634. false == false
  6635. CmdLine.tests.cpp:<line number>: PASSED:
  6636. CHECK( spec.matches( *tcB ) == false )
  6637. with expansion:
  6638. false == false
  6639. -------------------------------------------------------------------------------
  6640. Parse test names and tags
  6641. Test spec from just a comma should have no filters
  6642. -------------------------------------------------------------------------------
  6643. CmdLine.tests.cpp:<line number>
  6644. ...............................................................................
  6645. CmdLine.tests.cpp:<line number>: PASSED:
  6646. CHECK( spec.hasFilters() == false )
  6647. with expansion:
  6648. false == false
  6649. CmdLine.tests.cpp:<line number>: PASSED:
  6650. CHECK( spec.matches( *tcA ) == false )
  6651. with expansion:
  6652. false == false
  6653. CmdLine.tests.cpp:<line number>: PASSED:
  6654. CHECK( spec.matches( *tcB ) == false )
  6655. with expansion:
  6656. false == false
  6657. -------------------------------------------------------------------------------
  6658. Parse test names and tags
  6659. Test spec from name should have one filter
  6660. -------------------------------------------------------------------------------
  6661. CmdLine.tests.cpp:<line number>
  6662. ...............................................................................
  6663. CmdLine.tests.cpp:<line number>: PASSED:
  6664. CHECK( spec.hasFilters() == true )
  6665. with expansion:
  6666. true == true
  6667. CmdLine.tests.cpp:<line number>: PASSED:
  6668. CHECK( spec.matches( *tcA ) == false )
  6669. with expansion:
  6670. false == false
  6671. CmdLine.tests.cpp:<line number>: PASSED:
  6672. CHECK( spec.matches( *tcB ) == true )
  6673. with expansion:
  6674. true == true
  6675. -------------------------------------------------------------------------------
  6676. Parse test names and tags
  6677. Test spec from quoted name should have one filter
  6678. -------------------------------------------------------------------------------
  6679. CmdLine.tests.cpp:<line number>
  6680. ...............................................................................
  6681. CmdLine.tests.cpp:<line number>: PASSED:
  6682. CHECK( spec.hasFilters() == true )
  6683. with expansion:
  6684. true == true
  6685. CmdLine.tests.cpp:<line number>: PASSED:
  6686. CHECK( spec.matches( *tcA ) == false )
  6687. with expansion:
  6688. false == false
  6689. CmdLine.tests.cpp:<line number>: PASSED:
  6690. CHECK( spec.matches( *tcB ) == true )
  6691. with expansion:
  6692. true == true
  6693. -------------------------------------------------------------------------------
  6694. Parse test names and tags
  6695. Test spec from name should have one filter
  6696. -------------------------------------------------------------------------------
  6697. CmdLine.tests.cpp:<line number>
  6698. ...............................................................................
  6699. CmdLine.tests.cpp:<line number>: PASSED:
  6700. CHECK( spec.hasFilters() == true )
  6701. with expansion:
  6702. true == true
  6703. CmdLine.tests.cpp:<line number>: PASSED:
  6704. CHECK( spec.matches( *tcA ) == false )
  6705. with expansion:
  6706. false == false
  6707. CmdLine.tests.cpp:<line number>: PASSED:
  6708. CHECK( spec.matches( *tcB ) == true )
  6709. with expansion:
  6710. true == true
  6711. CmdLine.tests.cpp:<line number>: PASSED:
  6712. CHECK( spec.matches( *tcC ) == false )
  6713. with expansion:
  6714. false == false
  6715. -------------------------------------------------------------------------------
  6716. Parse test names and tags
  6717. Wildcard at the start
  6718. -------------------------------------------------------------------------------
  6719. CmdLine.tests.cpp:<line number>
  6720. ...............................................................................
  6721. CmdLine.tests.cpp:<line number>: PASSED:
  6722. CHECK( spec.hasFilters() == true )
  6723. with expansion:
  6724. true == true
  6725. CmdLine.tests.cpp:<line number>: PASSED:
  6726. CHECK( spec.matches( *tcA ) == false )
  6727. with expansion:
  6728. false == false
  6729. CmdLine.tests.cpp:<line number>: PASSED:
  6730. CHECK( spec.matches( *tcB ) == false )
  6731. with expansion:
  6732. false == false
  6733. CmdLine.tests.cpp:<line number>: PASSED:
  6734. CHECK( spec.matches( *tcC ) == true )
  6735. with expansion:
  6736. true == true
  6737. CmdLine.tests.cpp:<line number>: PASSED:
  6738. CHECK( spec.matches( *tcD ) == false )
  6739. with expansion:
  6740. false == false
  6741. CmdLine.tests.cpp:<line number>: PASSED:
  6742. CHECK( parseTestSpec( "*a" ).matches( *tcA ) == true )
  6743. with expansion:
  6744. true == true
  6745. -------------------------------------------------------------------------------
  6746. Parse test names and tags
  6747. Wildcard at the end
  6748. -------------------------------------------------------------------------------
  6749. CmdLine.tests.cpp:<line number>
  6750. ...............................................................................
  6751. CmdLine.tests.cpp:<line number>: PASSED:
  6752. CHECK( spec.hasFilters() == true )
  6753. with expansion:
  6754. true == true
  6755. CmdLine.tests.cpp:<line number>: PASSED:
  6756. CHECK( spec.matches( *tcA ) == false )
  6757. with expansion:
  6758. false == false
  6759. CmdLine.tests.cpp:<line number>: PASSED:
  6760. CHECK( spec.matches( *tcB ) == false )
  6761. with expansion:
  6762. false == false
  6763. CmdLine.tests.cpp:<line number>: PASSED:
  6764. CHECK( spec.matches( *tcC ) == true )
  6765. with expansion:
  6766. true == true
  6767. CmdLine.tests.cpp:<line number>: PASSED:
  6768. CHECK( spec.matches( *tcD ) == false )
  6769. with expansion:
  6770. false == false
  6771. CmdLine.tests.cpp:<line number>: PASSED:
  6772. CHECK( parseTestSpec( "a*" ).matches( *tcA ) == true )
  6773. with expansion:
  6774. true == true
  6775. -------------------------------------------------------------------------------
  6776. Parse test names and tags
  6777. Wildcard at both ends
  6778. -------------------------------------------------------------------------------
  6779. CmdLine.tests.cpp:<line number>
  6780. ...............................................................................
  6781. CmdLine.tests.cpp:<line number>: PASSED:
  6782. CHECK( spec.hasFilters() == true )
  6783. with expansion:
  6784. true == true
  6785. CmdLine.tests.cpp:<line number>: PASSED:
  6786. CHECK( spec.matches( *tcA ) == false )
  6787. with expansion:
  6788. false == false
  6789. CmdLine.tests.cpp:<line number>: PASSED:
  6790. CHECK( spec.matches( *tcB ) == false )
  6791. with expansion:
  6792. false == false
  6793. CmdLine.tests.cpp:<line number>: PASSED:
  6794. CHECK( spec.matches( *tcC ) == true )
  6795. with expansion:
  6796. true == true
  6797. CmdLine.tests.cpp:<line number>: PASSED:
  6798. CHECK( spec.matches( *tcD ) == true )
  6799. with expansion:
  6800. true == true
  6801. CmdLine.tests.cpp:<line number>: PASSED:
  6802. CHECK( parseTestSpec( "*a*" ).matches( *tcA ) == true )
  6803. with expansion:
  6804. true == true
  6805. -------------------------------------------------------------------------------
  6806. Parse test names and tags
  6807. Redundant wildcard at the start
  6808. -------------------------------------------------------------------------------
  6809. CmdLine.tests.cpp:<line number>
  6810. ...............................................................................
  6811. CmdLine.tests.cpp:<line number>: PASSED:
  6812. CHECK( spec.hasFilters() == true )
  6813. with expansion:
  6814. true == true
  6815. CmdLine.tests.cpp:<line number>: PASSED:
  6816. CHECK( spec.matches( *tcA ) == true )
  6817. with expansion:
  6818. true == true
  6819. CmdLine.tests.cpp:<line number>: PASSED:
  6820. CHECK( spec.matches( *tcB ) == false )
  6821. with expansion:
  6822. false == false
  6823. -------------------------------------------------------------------------------
  6824. Parse test names and tags
  6825. Redundant wildcard at the end
  6826. -------------------------------------------------------------------------------
  6827. CmdLine.tests.cpp:<line number>
  6828. ...............................................................................
  6829. CmdLine.tests.cpp:<line number>: PASSED:
  6830. CHECK( spec.hasFilters() == true )
  6831. with expansion:
  6832. true == true
  6833. CmdLine.tests.cpp:<line number>: PASSED:
  6834. CHECK( spec.matches( *tcA ) == true )
  6835. with expansion:
  6836. true == true
  6837. CmdLine.tests.cpp:<line number>: PASSED:
  6838. CHECK( spec.matches( *tcB ) == false )
  6839. with expansion:
  6840. false == false
  6841. -------------------------------------------------------------------------------
  6842. Parse test names and tags
  6843. Redundant wildcard at both ends
  6844. -------------------------------------------------------------------------------
  6845. CmdLine.tests.cpp:<line number>
  6846. ...............................................................................
  6847. CmdLine.tests.cpp:<line number>: PASSED:
  6848. CHECK( spec.hasFilters() == true )
  6849. with expansion:
  6850. true == true
  6851. CmdLine.tests.cpp:<line number>: PASSED:
  6852. CHECK( spec.matches( *tcA ) == true )
  6853. with expansion:
  6854. true == true
  6855. CmdLine.tests.cpp:<line number>: PASSED:
  6856. CHECK( spec.matches( *tcB ) == false )
  6857. with expansion:
  6858. false == false
  6859. -------------------------------------------------------------------------------
  6860. Parse test names and tags
  6861. Wildcard at both ends, redundant at start
  6862. -------------------------------------------------------------------------------
  6863. CmdLine.tests.cpp:<line number>
  6864. ...............................................................................
  6865. CmdLine.tests.cpp:<line number>: PASSED:
  6866. CHECK( spec.hasFilters() == true )
  6867. with expansion:
  6868. true == true
  6869. CmdLine.tests.cpp:<line number>: PASSED:
  6870. CHECK( spec.matches( *tcA ) == false )
  6871. with expansion:
  6872. false == false
  6873. CmdLine.tests.cpp:<line number>: PASSED:
  6874. CHECK( spec.matches( *tcB ) == false )
  6875. with expansion:
  6876. false == false
  6877. CmdLine.tests.cpp:<line number>: PASSED:
  6878. CHECK( spec.matches( *tcC ) == true )
  6879. with expansion:
  6880. true == true
  6881. CmdLine.tests.cpp:<line number>: PASSED:
  6882. CHECK( spec.matches( *tcD ) == true )
  6883. with expansion:
  6884. true == true
  6885. -------------------------------------------------------------------------------
  6886. Parse test names and tags
  6887. Just wildcard
  6888. -------------------------------------------------------------------------------
  6889. CmdLine.tests.cpp:<line number>
  6890. ...............................................................................
  6891. CmdLine.tests.cpp:<line number>: PASSED:
  6892. CHECK( spec.hasFilters() == true )
  6893. with expansion:
  6894. true == true
  6895. CmdLine.tests.cpp:<line number>: PASSED:
  6896. CHECK( spec.matches( *tcA ) == true )
  6897. with expansion:
  6898. true == true
  6899. CmdLine.tests.cpp:<line number>: PASSED:
  6900. CHECK( spec.matches( *tcB ) == true )
  6901. with expansion:
  6902. true == true
  6903. CmdLine.tests.cpp:<line number>: PASSED:
  6904. CHECK( spec.matches( *tcC ) == true )
  6905. with expansion:
  6906. true == true
  6907. CmdLine.tests.cpp:<line number>: PASSED:
  6908. CHECK( spec.matches( *tcD ) == true )
  6909. with expansion:
  6910. true == true
  6911. -------------------------------------------------------------------------------
  6912. Parse test names and tags
  6913. Single tag
  6914. -------------------------------------------------------------------------------
  6915. CmdLine.tests.cpp:<line number>
  6916. ...............................................................................
  6917. CmdLine.tests.cpp:<line number>: PASSED:
  6918. CHECK( spec.hasFilters() == true )
  6919. with expansion:
  6920. true == true
  6921. CmdLine.tests.cpp:<line number>: PASSED:
  6922. CHECK( spec.matches( *tcA ) == false )
  6923. with expansion:
  6924. false == false
  6925. CmdLine.tests.cpp:<line number>: PASSED:
  6926. CHECK( spec.matches( *tcB ) == true )
  6927. with expansion:
  6928. true == true
  6929. CmdLine.tests.cpp:<line number>: PASSED:
  6930. CHECK( spec.matches( *tcC ) == false )
  6931. with expansion:
  6932. false == false
  6933. -------------------------------------------------------------------------------
  6934. Parse test names and tags
  6935. Single tag, two matches
  6936. -------------------------------------------------------------------------------
  6937. CmdLine.tests.cpp:<line number>
  6938. ...............................................................................
  6939. CmdLine.tests.cpp:<line number>: PASSED:
  6940. CHECK( spec.hasFilters() == true )
  6941. with expansion:
  6942. true == true
  6943. CmdLine.tests.cpp:<line number>: PASSED:
  6944. CHECK( spec.matches( *tcA ) == false )
  6945. with expansion:
  6946. false == false
  6947. CmdLine.tests.cpp:<line number>: PASSED:
  6948. CHECK( spec.matches( *tcB ) == true )
  6949. with expansion:
  6950. true == true
  6951. CmdLine.tests.cpp:<line number>: PASSED:
  6952. CHECK( spec.matches( *tcC ) == true )
  6953. with expansion:
  6954. true == true
  6955. -------------------------------------------------------------------------------
  6956. Parse test names and tags
  6957. Two tags
  6958. -------------------------------------------------------------------------------
  6959. CmdLine.tests.cpp:<line number>
  6960. ...............................................................................
  6961. CmdLine.tests.cpp:<line number>: PASSED:
  6962. CHECK( spec.hasFilters() == true )
  6963. with expansion:
  6964. true == true
  6965. CmdLine.tests.cpp:<line number>: PASSED:
  6966. CHECK( spec.matches( *tcA ) == false )
  6967. with expansion:
  6968. false == false
  6969. CmdLine.tests.cpp:<line number>: PASSED:
  6970. CHECK( spec.matches( *tcB ) == false )
  6971. with expansion:
  6972. false == false
  6973. CmdLine.tests.cpp:<line number>: PASSED:
  6974. CHECK( spec.matches( *tcC ) == true )
  6975. with expansion:
  6976. true == true
  6977. -------------------------------------------------------------------------------
  6978. Parse test names and tags
  6979. Two tags, spare separated
  6980. -------------------------------------------------------------------------------
  6981. CmdLine.tests.cpp:<line number>
  6982. ...............................................................................
  6983. CmdLine.tests.cpp:<line number>: PASSED:
  6984. CHECK( spec.hasFilters() == true )
  6985. with expansion:
  6986. true == true
  6987. CmdLine.tests.cpp:<line number>: PASSED:
  6988. CHECK( spec.matches( *tcA ) == false )
  6989. with expansion:
  6990. false == false
  6991. CmdLine.tests.cpp:<line number>: PASSED:
  6992. CHECK( spec.matches( *tcB ) == false )
  6993. with expansion:
  6994. false == false
  6995. CmdLine.tests.cpp:<line number>: PASSED:
  6996. CHECK( spec.matches( *tcC ) == true )
  6997. with expansion:
  6998. true == true
  6999. -------------------------------------------------------------------------------
  7000. Parse test names and tags
  7001. Wildcarded name and tag
  7002. -------------------------------------------------------------------------------
  7003. CmdLine.tests.cpp:<line number>
  7004. ...............................................................................
  7005. CmdLine.tests.cpp:<line number>: PASSED:
  7006. CHECK( spec.hasFilters() == true )
  7007. with expansion:
  7008. true == true
  7009. CmdLine.tests.cpp:<line number>: PASSED:
  7010. CHECK( spec.matches( *tcA ) == false )
  7011. with expansion:
  7012. false == false
  7013. CmdLine.tests.cpp:<line number>: PASSED:
  7014. CHECK( spec.matches( *tcB ) == false )
  7015. with expansion:
  7016. false == false
  7017. CmdLine.tests.cpp:<line number>: PASSED:
  7018. CHECK( spec.matches( *tcC ) == true )
  7019. with expansion:
  7020. true == true
  7021. CmdLine.tests.cpp:<line number>: PASSED:
  7022. CHECK( spec.matches( *tcD ) == false )
  7023. with expansion:
  7024. false == false
  7025. -------------------------------------------------------------------------------
  7026. Parse test names and tags
  7027. Single tag exclusion
  7028. -------------------------------------------------------------------------------
  7029. CmdLine.tests.cpp:<line number>
  7030. ...............................................................................
  7031. CmdLine.tests.cpp:<line number>: PASSED:
  7032. CHECK( spec.hasFilters() == true )
  7033. with expansion:
  7034. true == true
  7035. CmdLine.tests.cpp:<line number>: PASSED:
  7036. CHECK( spec.matches( *tcA ) == true )
  7037. with expansion:
  7038. true == true
  7039. CmdLine.tests.cpp:<line number>: PASSED:
  7040. CHECK( spec.matches( *tcB ) == false )
  7041. with expansion:
  7042. false == false
  7043. CmdLine.tests.cpp:<line number>: PASSED:
  7044. CHECK( spec.matches( *tcC ) == false )
  7045. with expansion:
  7046. false == false
  7047. -------------------------------------------------------------------------------
  7048. Parse test names and tags
  7049. One tag exclusion and one tag inclusion
  7050. -------------------------------------------------------------------------------
  7051. CmdLine.tests.cpp:<line number>
  7052. ...............................................................................
  7053. CmdLine.tests.cpp:<line number>: PASSED:
  7054. CHECK( spec.hasFilters() == true )
  7055. with expansion:
  7056. true == true
  7057. CmdLine.tests.cpp:<line number>: PASSED:
  7058. CHECK( spec.matches( *tcA ) == false )
  7059. with expansion:
  7060. false == false
  7061. CmdLine.tests.cpp:<line number>: PASSED:
  7062. CHECK( spec.matches( *tcB ) == true )
  7063. with expansion:
  7064. true == true
  7065. CmdLine.tests.cpp:<line number>: PASSED:
  7066. CHECK( spec.matches( *tcC ) == false )
  7067. with expansion:
  7068. false == false
  7069. -------------------------------------------------------------------------------
  7070. Parse test names and tags
  7071. One tag exclusion and one wldcarded name inclusion
  7072. -------------------------------------------------------------------------------
  7073. CmdLine.tests.cpp:<line number>
  7074. ...............................................................................
  7075. CmdLine.tests.cpp:<line number>: PASSED:
  7076. CHECK( spec.hasFilters() == true )
  7077. with expansion:
  7078. true == true
  7079. CmdLine.tests.cpp:<line number>: PASSED:
  7080. CHECK( spec.matches( *tcA ) == false )
  7081. with expansion:
  7082. false == false
  7083. CmdLine.tests.cpp:<line number>: PASSED:
  7084. CHECK( spec.matches( *tcB ) == false )
  7085. with expansion:
  7086. false == false
  7087. CmdLine.tests.cpp:<line number>: PASSED:
  7088. CHECK( spec.matches( *tcC ) == false )
  7089. with expansion:
  7090. false == false
  7091. CmdLine.tests.cpp:<line number>: PASSED:
  7092. CHECK( spec.matches( *tcD ) == true )
  7093. with expansion:
  7094. true == true
  7095. -------------------------------------------------------------------------------
  7096. Parse test names and tags
  7097. One tag exclusion, using exclude:, and one wldcarded name inclusion
  7098. -------------------------------------------------------------------------------
  7099. CmdLine.tests.cpp:<line number>
  7100. ...............................................................................
  7101. CmdLine.tests.cpp:<line number>: PASSED:
  7102. CHECK( spec.hasFilters() == true )
  7103. with expansion:
  7104. true == true
  7105. CmdLine.tests.cpp:<line number>: PASSED:
  7106. CHECK( spec.matches( *tcA ) == false )
  7107. with expansion:
  7108. false == false
  7109. CmdLine.tests.cpp:<line number>: PASSED:
  7110. CHECK( spec.matches( *tcB ) == false )
  7111. with expansion:
  7112. false == false
  7113. CmdLine.tests.cpp:<line number>: PASSED:
  7114. CHECK( spec.matches( *tcC ) == false )
  7115. with expansion:
  7116. false == false
  7117. CmdLine.tests.cpp:<line number>: PASSED:
  7118. CHECK( spec.matches( *tcD ) == true )
  7119. with expansion:
  7120. true == true
  7121. -------------------------------------------------------------------------------
  7122. Parse test names and tags
  7123. name exclusion
  7124. -------------------------------------------------------------------------------
  7125. CmdLine.tests.cpp:<line number>
  7126. ...............................................................................
  7127. CmdLine.tests.cpp:<line number>: PASSED:
  7128. CHECK( spec.hasFilters() == true )
  7129. with expansion:
  7130. true == true
  7131. CmdLine.tests.cpp:<line number>: PASSED:
  7132. CHECK( spec.matches( *tcA ) == true )
  7133. with expansion:
  7134. true == true
  7135. CmdLine.tests.cpp:<line number>: PASSED:
  7136. CHECK( spec.matches( *tcB ) == false )
  7137. with expansion:
  7138. false == false
  7139. CmdLine.tests.cpp:<line number>: PASSED:
  7140. CHECK( spec.matches( *tcC ) == false )
  7141. with expansion:
  7142. false == false
  7143. CmdLine.tests.cpp:<line number>: PASSED:
  7144. CHECK( spec.matches( *tcD ) == true )
  7145. with expansion:
  7146. true == true
  7147. -------------------------------------------------------------------------------
  7148. Parse test names and tags
  7149. wildcarded name exclusion
  7150. -------------------------------------------------------------------------------
  7151. CmdLine.tests.cpp:<line number>
  7152. ...............................................................................
  7153. CmdLine.tests.cpp:<line number>: PASSED:
  7154. CHECK( spec.hasFilters() == true )
  7155. with expansion:
  7156. true == true
  7157. CmdLine.tests.cpp:<line number>: PASSED:
  7158. CHECK( spec.matches( *tcA ) == true )
  7159. with expansion:
  7160. true == true
  7161. CmdLine.tests.cpp:<line number>: PASSED:
  7162. CHECK( spec.matches( *tcB ) == true )
  7163. with expansion:
  7164. true == true
  7165. CmdLine.tests.cpp:<line number>: PASSED:
  7166. CHECK( spec.matches( *tcC ) == false )
  7167. with expansion:
  7168. false == false
  7169. CmdLine.tests.cpp:<line number>: PASSED:
  7170. CHECK( spec.matches( *tcD ) == false )
  7171. with expansion:
  7172. false == false
  7173. -------------------------------------------------------------------------------
  7174. Parse test names and tags
  7175. wildcarded name exclusion with tag inclusion
  7176. -------------------------------------------------------------------------------
  7177. CmdLine.tests.cpp:<line number>
  7178. ...............................................................................
  7179. CmdLine.tests.cpp:<line number>: PASSED:
  7180. CHECK( spec.hasFilters() == true )
  7181. with expansion:
  7182. true == true
  7183. CmdLine.tests.cpp:<line number>: PASSED:
  7184. CHECK( spec.matches( *tcA ) == true )
  7185. with expansion:
  7186. true == true
  7187. CmdLine.tests.cpp:<line number>: PASSED:
  7188. CHECK( spec.matches( *tcB ) == true )
  7189. with expansion:
  7190. true == true
  7191. CmdLine.tests.cpp:<line number>: PASSED:
  7192. CHECK( spec.matches( *tcC ) == true )
  7193. with expansion:
  7194. true == true
  7195. CmdLine.tests.cpp:<line number>: PASSED:
  7196. CHECK( spec.matches( *tcD ) == false )
  7197. with expansion:
  7198. false == false
  7199. -------------------------------------------------------------------------------
  7200. Parse test names and tags
  7201. wildcarded name exclusion, using exclude:, with tag inclusion
  7202. -------------------------------------------------------------------------------
  7203. CmdLine.tests.cpp:<line number>
  7204. ...............................................................................
  7205. CmdLine.tests.cpp:<line number>: PASSED:
  7206. CHECK( spec.hasFilters() == true )
  7207. with expansion:
  7208. true == true
  7209. CmdLine.tests.cpp:<line number>: PASSED:
  7210. CHECK( spec.matches( *tcA ) == true )
  7211. with expansion:
  7212. true == true
  7213. CmdLine.tests.cpp:<line number>: PASSED:
  7214. CHECK( spec.matches( *tcB ) == true )
  7215. with expansion:
  7216. true == true
  7217. CmdLine.tests.cpp:<line number>: PASSED:
  7218. CHECK( spec.matches( *tcC ) == true )
  7219. with expansion:
  7220. true == true
  7221. CmdLine.tests.cpp:<line number>: PASSED:
  7222. CHECK( spec.matches( *tcD ) == false )
  7223. with expansion:
  7224. false == false
  7225. -------------------------------------------------------------------------------
  7226. Parse test names and tags
  7227. two wildcarded names
  7228. -------------------------------------------------------------------------------
  7229. CmdLine.tests.cpp:<line number>
  7230. ...............................................................................
  7231. CmdLine.tests.cpp:<line number>: PASSED:
  7232. CHECK( spec.hasFilters() == true )
  7233. with expansion:
  7234. true == true
  7235. CmdLine.tests.cpp:<line number>: PASSED:
  7236. CHECK( spec.matches( *tcA ) == false )
  7237. with expansion:
  7238. false == false
  7239. CmdLine.tests.cpp:<line number>: PASSED:
  7240. CHECK( spec.matches( *tcB ) == false )
  7241. with expansion:
  7242. false == false
  7243. CmdLine.tests.cpp:<line number>: PASSED:
  7244. CHECK( spec.matches( *tcC ) == true )
  7245. with expansion:
  7246. true == true
  7247. CmdLine.tests.cpp:<line number>: PASSED:
  7248. CHECK( spec.matches( *tcD ) == false )
  7249. with expansion:
  7250. false == false
  7251. -------------------------------------------------------------------------------
  7252. Parse test names and tags
  7253. empty tag
  7254. -------------------------------------------------------------------------------
  7255. CmdLine.tests.cpp:<line number>
  7256. ...............................................................................
  7257. CmdLine.tests.cpp:<line number>: PASSED:
  7258. CHECK( spec.hasFilters() == false )
  7259. with expansion:
  7260. false == false
  7261. CmdLine.tests.cpp:<line number>: PASSED:
  7262. CHECK( spec.matches( *tcA ) == false )
  7263. with expansion:
  7264. false == false
  7265. CmdLine.tests.cpp:<line number>: PASSED:
  7266. CHECK( spec.matches( *tcB ) == false )
  7267. with expansion:
  7268. false == false
  7269. CmdLine.tests.cpp:<line number>: PASSED:
  7270. CHECK( spec.matches( *tcC ) == false )
  7271. with expansion:
  7272. false == false
  7273. CmdLine.tests.cpp:<line number>: PASSED:
  7274. CHECK( spec.matches( *tcD ) == false )
  7275. with expansion:
  7276. false == false
  7277. -------------------------------------------------------------------------------
  7278. Parse test names and tags
  7279. empty quoted name
  7280. -------------------------------------------------------------------------------
  7281. CmdLine.tests.cpp:<line number>
  7282. ...............................................................................
  7283. CmdLine.tests.cpp:<line number>: PASSED:
  7284. CHECK( spec.hasFilters() == false )
  7285. with expansion:
  7286. false == false
  7287. CmdLine.tests.cpp:<line number>: PASSED:
  7288. CHECK( spec.matches( *tcA ) == false )
  7289. with expansion:
  7290. false == false
  7291. CmdLine.tests.cpp:<line number>: PASSED:
  7292. CHECK( spec.matches( *tcB ) == false )
  7293. with expansion:
  7294. false == false
  7295. CmdLine.tests.cpp:<line number>: PASSED:
  7296. CHECK( spec.matches( *tcC ) == false )
  7297. with expansion:
  7298. false == false
  7299. CmdLine.tests.cpp:<line number>: PASSED:
  7300. CHECK( spec.matches( *tcD ) == false )
  7301. with expansion:
  7302. false == false
  7303. -------------------------------------------------------------------------------
  7304. Parse test names and tags
  7305. quoted string followed by tag exclusion
  7306. -------------------------------------------------------------------------------
  7307. CmdLine.tests.cpp:<line number>
  7308. ...............................................................................
  7309. CmdLine.tests.cpp:<line number>: PASSED:
  7310. CHECK( spec.hasFilters() == true )
  7311. with expansion:
  7312. true == true
  7313. CmdLine.tests.cpp:<line number>: PASSED:
  7314. CHECK( spec.matches( *tcA ) == false )
  7315. with expansion:
  7316. false == false
  7317. CmdLine.tests.cpp:<line number>: PASSED:
  7318. CHECK( spec.matches( *tcB ) == false )
  7319. with expansion:
  7320. false == false
  7321. CmdLine.tests.cpp:<line number>: PASSED:
  7322. CHECK( spec.matches( *tcC ) == false )
  7323. with expansion:
  7324. false == false
  7325. CmdLine.tests.cpp:<line number>: PASSED:
  7326. CHECK( spec.matches( *tcD ) == true )
  7327. with expansion:
  7328. true == true
  7329. -------------------------------------------------------------------------------
  7330. Parse test names and tags
  7331. Leading and trailing spaces in test spec
  7332. -------------------------------------------------------------------------------
  7333. CmdLine.tests.cpp:<line number>
  7334. ...............................................................................
  7335. CmdLine.tests.cpp:<line number>: PASSED:
  7336. CHECK( spec.matches( *fakeTestCase( " aardvark " ) ) )
  7337. with expansion:
  7338. true
  7339. CmdLine.tests.cpp:<line number>: PASSED:
  7340. CHECK( spec.matches( *fakeTestCase( " aardvark" ) ) )
  7341. with expansion:
  7342. true
  7343. CmdLine.tests.cpp:<line number>: PASSED:
  7344. CHECK( spec.matches( *fakeTestCase( " aardvark " ) ) )
  7345. with expansion:
  7346. true
  7347. CmdLine.tests.cpp:<line number>: PASSED:
  7348. CHECK( spec.matches( *fakeTestCase( "aardvark " ) ) )
  7349. with expansion:
  7350. true
  7351. CmdLine.tests.cpp:<line number>: PASSED:
  7352. CHECK( spec.matches( *fakeTestCase( "aardvark" ) ) )
  7353. with expansion:
  7354. true
  7355. -------------------------------------------------------------------------------
  7356. Parse test names and tags
  7357. Leading and trailing spaces in test name
  7358. -------------------------------------------------------------------------------
  7359. CmdLine.tests.cpp:<line number>
  7360. ...............................................................................
  7361. CmdLine.tests.cpp:<line number>: PASSED:
  7362. CHECK( spec.matches( *fakeTestCase( " aardvark " ) ) )
  7363. with expansion:
  7364. true
  7365. CmdLine.tests.cpp:<line number>: PASSED:
  7366. CHECK( spec.matches( *fakeTestCase( " aardvark" ) ) )
  7367. with expansion:
  7368. true
  7369. CmdLine.tests.cpp:<line number>: PASSED:
  7370. CHECK( spec.matches( *fakeTestCase( " aardvark " ) ) )
  7371. with expansion:
  7372. true
  7373. CmdLine.tests.cpp:<line number>: PASSED:
  7374. CHECK( spec.matches( *fakeTestCase( "aardvark " ) ) )
  7375. with expansion:
  7376. true
  7377. CmdLine.tests.cpp:<line number>: PASSED:
  7378. CHECK( spec.matches( *fakeTestCase( "aardvark" ) ) )
  7379. with expansion:
  7380. true
  7381. -------------------------------------------------------------------------------
  7382. Parse test names and tags
  7383. Shortened hide tags are split apart when parsing
  7384. -------------------------------------------------------------------------------
  7385. CmdLine.tests.cpp:<line number>
  7386. ...............................................................................
  7387. CmdLine.tests.cpp:<line number>: PASSED:
  7388. CHECK( spec.matches(*fakeTestCase("hidden and foo", "[.][foo]")) )
  7389. with expansion:
  7390. true
  7391. CmdLine.tests.cpp:<line number>: PASSED:
  7392. CHECK_FALSE( spec.matches(*fakeTestCase("only foo", "[foo]")) )
  7393. with expansion:
  7394. !false
  7395. -------------------------------------------------------------------------------
  7396. Parse test names and tags
  7397. Shortened hide tags also properly handle exclusion
  7398. -------------------------------------------------------------------------------
  7399. CmdLine.tests.cpp:<line number>
  7400. ...............................................................................
  7401. CmdLine.tests.cpp:<line number>: PASSED:
  7402. CHECK_FALSE( spec.matches(*fakeTestCase("hidden and foo", "[.][foo]")) )
  7403. with expansion:
  7404. !false
  7405. CmdLine.tests.cpp:<line number>: PASSED:
  7406. CHECK_FALSE( spec.matches(*fakeTestCase("only foo", "[foo]")) )
  7407. with expansion:
  7408. !false
  7409. CmdLine.tests.cpp:<line number>: PASSED:
  7410. CHECK_FALSE( spec.matches(*fakeTestCase("only hidden", "[.]")) )
  7411. with expansion:
  7412. !false
  7413. CmdLine.tests.cpp:<line number>: PASSED:
  7414. CHECK( spec.matches(*fakeTestCase("neither foo nor hidden", "[bar]")) )
  7415. with expansion:
  7416. true
  7417. -------------------------------------------------------------------------------
  7418. Parsed tags are matched case insensitive
  7419. -------------------------------------------------------------------------------
  7420. TestSpecParser.tests.cpp:<line number>
  7421. ...............................................................................
  7422. TestSpecParser.tests.cpp:<line number>: PASSED:
  7423. REQUIRE( spec.hasFilters() )
  7424. with expansion:
  7425. true
  7426. TestSpecParser.tests.cpp:<line number>: PASSED:
  7427. REQUIRE( spec.getInvalidSpecs().empty() )
  7428. with expansion:
  7429. true
  7430. TestSpecParser.tests.cpp:<line number>: PASSED:
  7431. REQUIRE( spec.matches( testCase ) )
  7432. with expansion:
  7433. true
  7434. -------------------------------------------------------------------------------
  7435. Parsing sharding-related cli flags
  7436. shard-count
  7437. -------------------------------------------------------------------------------
  7438. CmdLine.tests.cpp:<line number>
  7439. ...............................................................................
  7440. CmdLine.tests.cpp:<line number>: PASSED:
  7441. CHECK( cli.parse({ "test", "--shard-count=8" }) )
  7442. with expansion:
  7443. {?}
  7444. CmdLine.tests.cpp:<line number>: PASSED:
  7445. REQUIRE( config.shardCount == 8 )
  7446. with expansion:
  7447. 8 == 8
  7448. -------------------------------------------------------------------------------
  7449. Parsing sharding-related cli flags
  7450. Negative shard count reports error
  7451. -------------------------------------------------------------------------------
  7452. CmdLine.tests.cpp:<line number>
  7453. ...............................................................................
  7454. CmdLine.tests.cpp:<line number>: PASSED:
  7455. CHECK_FALSE( result )
  7456. with expansion:
  7457. !{?}
  7458. CmdLine.tests.cpp:<line number>: PASSED:
  7459. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("Shard count must be a positive number") )
  7460. with expansion:
  7461. "Shard count must be a positive number" contains: "Shard count must be a
  7462. positive number"
  7463. -------------------------------------------------------------------------------
  7464. Parsing sharding-related cli flags
  7465. Zero shard count reports error
  7466. -------------------------------------------------------------------------------
  7467. CmdLine.tests.cpp:<line number>
  7468. ...............................................................................
  7469. CmdLine.tests.cpp:<line number>: PASSED:
  7470. CHECK_FALSE( result )
  7471. with expansion:
  7472. !{?}
  7473. CmdLine.tests.cpp:<line number>: PASSED:
  7474. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("Shard count must be a positive number") )
  7475. with expansion:
  7476. "Shard count must be a positive number" contains: "Shard count must be a
  7477. positive number"
  7478. -------------------------------------------------------------------------------
  7479. Parsing sharding-related cli flags
  7480. shard-index
  7481. -------------------------------------------------------------------------------
  7482. CmdLine.tests.cpp:<line number>
  7483. ...............................................................................
  7484. CmdLine.tests.cpp:<line number>: PASSED:
  7485. CHECK( cli.parse({ "test", "--shard-index=2" }) )
  7486. with expansion:
  7487. {?}
  7488. CmdLine.tests.cpp:<line number>: PASSED:
  7489. REQUIRE( config.shardIndex == 2 )
  7490. with expansion:
  7491. 2 == 2
  7492. -------------------------------------------------------------------------------
  7493. Parsing sharding-related cli flags
  7494. Negative shard index reports error
  7495. -------------------------------------------------------------------------------
  7496. CmdLine.tests.cpp:<line number>
  7497. ...............................................................................
  7498. CmdLine.tests.cpp:<line number>: PASSED:
  7499. CHECK_FALSE( result )
  7500. with expansion:
  7501. !{?}
  7502. CmdLine.tests.cpp:<line number>: PASSED:
  7503. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("Shard index must be a non-negative number") )
  7504. with expansion:
  7505. "Shard index must be a non-negative number" contains: "Shard index must be a
  7506. non-negative number"
  7507. -------------------------------------------------------------------------------
  7508. Parsing sharding-related cli flags
  7509. Shard index 0 is accepted
  7510. -------------------------------------------------------------------------------
  7511. CmdLine.tests.cpp:<line number>
  7512. ...............................................................................
  7513. CmdLine.tests.cpp:<line number>: PASSED:
  7514. CHECK( cli.parse({ "test", "--shard-index=0" }) )
  7515. with expansion:
  7516. {?}
  7517. CmdLine.tests.cpp:<line number>: PASSED:
  7518. REQUIRE( config.shardIndex == 0 )
  7519. with expansion:
  7520. 0 == 0
  7521. -------------------------------------------------------------------------------
  7522. Parsing tags with non-alphabetical characters is pass-through
  7523. -------------------------------------------------------------------------------
  7524. TestSpecParser.tests.cpp:<line number>
  7525. ...............................................................................
  7526. TestSpecParser.tests.cpp:<line number>: PASSED:
  7527. REQUIRE( spec.hasFilters() )
  7528. with expansion:
  7529. true
  7530. with message:
  7531. tagString := "[tag with spaces]"
  7532. TestSpecParser.tests.cpp:<line number>: PASSED:
  7533. REQUIRE( spec.getInvalidSpecs().empty() )
  7534. with expansion:
  7535. true
  7536. with message:
  7537. tagString := "[tag with spaces]"
  7538. TestSpecParser.tests.cpp:<line number>: PASSED:
  7539. REQUIRE( spec.matches( testCase ) )
  7540. with expansion:
  7541. true
  7542. with message:
  7543. tagString := "[tag with spaces]"
  7544. -------------------------------------------------------------------------------
  7545. Parsing tags with non-alphabetical characters is pass-through
  7546. -------------------------------------------------------------------------------
  7547. TestSpecParser.tests.cpp:<line number>
  7548. ...............................................................................
  7549. TestSpecParser.tests.cpp:<line number>: PASSED:
  7550. REQUIRE( spec.hasFilters() )
  7551. with expansion:
  7552. true
  7553. with message:
  7554. tagString := "[I said "good day" sir!]"
  7555. TestSpecParser.tests.cpp:<line number>: PASSED:
  7556. REQUIRE( spec.getInvalidSpecs().empty() )
  7557. with expansion:
  7558. true
  7559. with message:
  7560. tagString := "[I said "good day" sir!]"
  7561. TestSpecParser.tests.cpp:<line number>: PASSED:
  7562. REQUIRE( spec.matches( testCase ) )
  7563. with expansion:
  7564. true
  7565. with message:
  7566. tagString := "[I said "good day" sir!]"
  7567. -------------------------------------------------------------------------------
  7568. Parsing warnings
  7569. NoAssertions
  7570. -------------------------------------------------------------------------------
  7571. CmdLine.tests.cpp:<line number>
  7572. ...............................................................................
  7573. CmdLine.tests.cpp:<line number>: PASSED:
  7574. REQUIRE( cli.parse( { "test", "-w", "NoAssertions" } ) )
  7575. with expansion:
  7576. {?}
  7577. CmdLine.tests.cpp:<line number>: PASSED:
  7578. REQUIRE( config.warnings == WarnAbout::NoAssertions )
  7579. with expansion:
  7580. 1 == 1
  7581. -------------------------------------------------------------------------------
  7582. Parsing warnings
  7583. NoTests is no longer supported
  7584. -------------------------------------------------------------------------------
  7585. CmdLine.tests.cpp:<line number>
  7586. ...............................................................................
  7587. CmdLine.tests.cpp:<line number>: PASSED:
  7588. REQUIRE_FALSE( cli.parse( { "test", "-w", "NoTests" } ) )
  7589. with expansion:
  7590. !{?}
  7591. -------------------------------------------------------------------------------
  7592. Parsing warnings
  7593. Combining multiple warnings
  7594. -------------------------------------------------------------------------------
  7595. CmdLine.tests.cpp:<line number>
  7596. ...............................................................................
  7597. CmdLine.tests.cpp:<line number>: PASSED:
  7598. REQUIRE( cli.parse( { "test", "--warn", "NoAssertions", "--warn", "UnmatchedTestSpec" } ) )
  7599. with expansion:
  7600. {?}
  7601. CmdLine.tests.cpp:<line number>: PASSED:
  7602. REQUIRE( config.warnings == ( WarnAbout::NoAssertions | WarnAbout::UnmatchedTestSpec ) )
  7603. with expansion:
  7604. 3 == 3
  7605. -------------------------------------------------------------------------------
  7606. Pointers can be compared to null
  7607. -------------------------------------------------------------------------------
  7608. Condition.tests.cpp:<line number>
  7609. ...............................................................................
  7610. Condition.tests.cpp:<line number>: PASSED:
  7611. REQUIRE( p == 0 )
  7612. with expansion:
  7613. 0 == 0
  7614. Condition.tests.cpp:<line number>: PASSED:
  7615. REQUIRE( p == pNULL )
  7616. with expansion:
  7617. 0 == 0
  7618. Condition.tests.cpp:<line number>: PASSED:
  7619. REQUIRE( p != 0 )
  7620. with expansion:
  7621. 0x<hex digits> != 0
  7622. Condition.tests.cpp:<line number>: PASSED:
  7623. REQUIRE( cp != 0 )
  7624. with expansion:
  7625. 0x<hex digits> != 0
  7626. Condition.tests.cpp:<line number>: PASSED:
  7627. REQUIRE( cpc != 0 )
  7628. with expansion:
  7629. 0x<hex digits> != 0
  7630. Condition.tests.cpp:<line number>: PASSED:
  7631. REQUIRE( returnsNull() == 0 )
  7632. with expansion:
  7633. {null string} == 0
  7634. Condition.tests.cpp:<line number>: PASSED:
  7635. REQUIRE( returnsConstNull() == 0 )
  7636. with expansion:
  7637. {null string} == 0
  7638. Condition.tests.cpp:<line number>: PASSED:
  7639. REQUIRE( 0 != p )
  7640. with expansion:
  7641. 0 != 0x<hex digits>
  7642. -------------------------------------------------------------------------------
  7643. Precision of floating point stringification can be set
  7644. Floats
  7645. -------------------------------------------------------------------------------
  7646. ToStringGeneral.tests.cpp:<line number>
  7647. ...............................................................................
  7648. ToStringGeneral.tests.cpp:<line number>: PASSED:
  7649. CHECK( str1.size() == 3 + 5 )
  7650. with expansion:
  7651. 8 == 8
  7652. ToStringGeneral.tests.cpp:<line number>: PASSED:
  7653. REQUIRE( str2.size() == 3 + 10 )
  7654. with expansion:
  7655. 13 == 13
  7656. -------------------------------------------------------------------------------
  7657. Precision of floating point stringification can be set
  7658. Double
  7659. -------------------------------------------------------------------------------
  7660. ToStringGeneral.tests.cpp:<line number>
  7661. ...............................................................................
  7662. ToStringGeneral.tests.cpp:<line number>: PASSED:
  7663. CHECK( str1.size() == 2 + 5 )
  7664. with expansion:
  7665. 7 == 7
  7666. ToStringGeneral.tests.cpp:<line number>: PASSED:
  7667. REQUIRE( str2.size() == 2 + 15 )
  7668. with expansion:
  7669. 17 == 17
  7670. -------------------------------------------------------------------------------
  7671. Predicate matcher can accept const char*
  7672. -------------------------------------------------------------------------------
  7673. Matchers.tests.cpp:<line number>
  7674. ...............................................................................
  7675. Matchers.tests.cpp:<line number>: PASSED:
  7676. REQUIRE_THAT( "foo", Predicate<const char*>( []( const char* const& ) { return true; } ) )
  7677. with expansion:
  7678. "foo" matches undescribed predicate
  7679. -------------------------------------------------------------------------------
  7680. Process can be configured on command line
  7681. empty args don't cause a crash
  7682. -------------------------------------------------------------------------------
  7683. CmdLine.tests.cpp:<line number>
  7684. ...............................................................................
  7685. CmdLine.tests.cpp:<line number>: PASSED:
  7686. CHECK( result )
  7687. with expansion:
  7688. {?}
  7689. CmdLine.tests.cpp:<line number>: PASSED:
  7690. CHECK( config.processName == "" )
  7691. with expansion:
  7692. "" == ""
  7693. -------------------------------------------------------------------------------
  7694. Process can be configured on command line
  7695. default - no arguments
  7696. -------------------------------------------------------------------------------
  7697. CmdLine.tests.cpp:<line number>
  7698. ...............................................................................
  7699. CmdLine.tests.cpp:<line number>: PASSED:
  7700. CHECK( result )
  7701. with expansion:
  7702. {?}
  7703. CmdLine.tests.cpp:<line number>: PASSED:
  7704. CHECK( config.processName == "test" )
  7705. with expansion:
  7706. "test" == "test"
  7707. CmdLine.tests.cpp:<line number>: PASSED:
  7708. CHECK( config.shouldDebugBreak == false )
  7709. with expansion:
  7710. false == false
  7711. CmdLine.tests.cpp:<line number>: PASSED:
  7712. CHECK( config.abortAfter == -1 )
  7713. with expansion:
  7714. -1 == -1
  7715. CmdLine.tests.cpp:<line number>: PASSED:
  7716. CHECK( config.noThrow == false )
  7717. with expansion:
  7718. false == false
  7719. CmdLine.tests.cpp:<line number>: PASSED:
  7720. CHECK( config.reporterSpecifications.empty() )
  7721. with expansion:
  7722. true
  7723. CmdLine.tests.cpp:<line number>: PASSED:
  7724. CHECK_FALSE( cfg.hasTestFilters() )
  7725. with expansion:
  7726. !false
  7727. CmdLine.tests.cpp:<line number>: PASSED:
  7728. CHECK( cfg.getReporterSpecs().size() == 1 )
  7729. with expansion:
  7730. 1 == 1
  7731. CmdLine.tests.cpp:<line number>: PASSED:
  7732. CHECK( cfg.getReporterSpecs()[0] == Catch::ReporterSpec{ expectedReporter, {}, {}, {} } )
  7733. with expansion:
  7734. {?} == {?}
  7735. CmdLine.tests.cpp:<line number>: PASSED:
  7736. CHECK( cfg.getProcessedReporterSpecs().size() == 1 )
  7737. with expansion:
  7738. 1 == 1
  7739. CmdLine.tests.cpp:<line number>: PASSED:
  7740. CHECK( cfg.getProcessedReporterSpecs()[0] == Catch::ProcessedReporterSpec{ expectedReporter, std::string{}, Catch::ColourMode::PlatformDefault, {} } )
  7741. with expansion:
  7742. {?} == {?}
  7743. -------------------------------------------------------------------------------
  7744. Process can be configured on command line
  7745. test lists
  7746. Specify one test case using
  7747. -------------------------------------------------------------------------------
  7748. CmdLine.tests.cpp:<line number>
  7749. ...............................................................................
  7750. CmdLine.tests.cpp:<line number>: PASSED:
  7751. CHECK( result )
  7752. with expansion:
  7753. {?}
  7754. CmdLine.tests.cpp:<line number>: PASSED:
  7755. REQUIRE( cfg.hasTestFilters() )
  7756. with expansion:
  7757. true
  7758. CmdLine.tests.cpp:<line number>: PASSED:
  7759. REQUIRE( cfg.testSpec().matches(*fakeTestCase("notIncluded")) == false )
  7760. with expansion:
  7761. false == false
  7762. CmdLine.tests.cpp:<line number>: PASSED:
  7763. REQUIRE( cfg.testSpec().matches(*fakeTestCase("test1")) )
  7764. with expansion:
  7765. true
  7766. -------------------------------------------------------------------------------
  7767. Process can be configured on command line
  7768. test lists
  7769. Specify one test case exclusion using exclude:
  7770. -------------------------------------------------------------------------------
  7771. CmdLine.tests.cpp:<line number>
  7772. ...............................................................................
  7773. CmdLine.tests.cpp:<line number>: PASSED:
  7774. CHECK( result )
  7775. with expansion:
  7776. {?}
  7777. CmdLine.tests.cpp:<line number>: PASSED:
  7778. REQUIRE( cfg.hasTestFilters() )
  7779. with expansion:
  7780. true
  7781. CmdLine.tests.cpp:<line number>: PASSED:
  7782. REQUIRE( cfg.testSpec().matches(*fakeTestCase("test1")) == false )
  7783. with expansion:
  7784. false == false
  7785. CmdLine.tests.cpp:<line number>: PASSED:
  7786. REQUIRE( cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) )
  7787. with expansion:
  7788. true
  7789. -------------------------------------------------------------------------------
  7790. Process can be configured on command line
  7791. test lists
  7792. Specify one test case exclusion using ~
  7793. -------------------------------------------------------------------------------
  7794. CmdLine.tests.cpp:<line number>
  7795. ...............................................................................
  7796. CmdLine.tests.cpp:<line number>: PASSED:
  7797. CHECK( result )
  7798. with expansion:
  7799. {?}
  7800. CmdLine.tests.cpp:<line number>: PASSED:
  7801. REQUIRE( cfg.hasTestFilters() )
  7802. with expansion:
  7803. true
  7804. CmdLine.tests.cpp:<line number>: PASSED:
  7805. REQUIRE( cfg.testSpec().matches(*fakeTestCase("test1")) == false )
  7806. with expansion:
  7807. false == false
  7808. CmdLine.tests.cpp:<line number>: PASSED:
  7809. REQUIRE( cfg.testSpec().matches(*fakeTestCase("alwaysIncluded")) )
  7810. with expansion:
  7811. true
  7812. -------------------------------------------------------------------------------
  7813. Process can be configured on command line
  7814. reporter
  7815. -r/console
  7816. -------------------------------------------------------------------------------
  7817. CmdLine.tests.cpp:<line number>
  7818. ...............................................................................
  7819. CmdLine.tests.cpp:<line number>: PASSED:
  7820. CHECK( result )
  7821. with expansion:
  7822. {?}
  7823. with message:
  7824. result.errorMessage() := ""
  7825. CmdLine.tests.cpp:<line number>: PASSED:
  7826. REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", {}, {}, {} } } )
  7827. with expansion:
  7828. { {?} } == { {?} }
  7829. with message:
  7830. result.errorMessage() := ""
  7831. -------------------------------------------------------------------------------
  7832. Process can be configured on command line
  7833. reporter
  7834. -r/xml
  7835. -------------------------------------------------------------------------------
  7836. CmdLine.tests.cpp:<line number>
  7837. ...............................................................................
  7838. CmdLine.tests.cpp:<line number>: PASSED:
  7839. CHECK( result )
  7840. with expansion:
  7841. {?}
  7842. with message:
  7843. result.errorMessage() := ""
  7844. CmdLine.tests.cpp:<line number>: PASSED:
  7845. REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", {}, {}, {} } } )
  7846. with expansion:
  7847. { {?} } == { {?} }
  7848. with message:
  7849. result.errorMessage() := ""
  7850. -------------------------------------------------------------------------------
  7851. Process can be configured on command line
  7852. reporter
  7853. --reporter/junit
  7854. -------------------------------------------------------------------------------
  7855. CmdLine.tests.cpp:<line number>
  7856. ...............................................................................
  7857. CmdLine.tests.cpp:<line number>: PASSED:
  7858. CHECK( result )
  7859. with expansion:
  7860. {?}
  7861. with message:
  7862. result.errorMessage() := ""
  7863. CmdLine.tests.cpp:<line number>: PASSED:
  7864. REQUIRE( config.reporterSpecifications == vec_Specs{ { "junit", {}, {}, {} } } )
  7865. with expansion:
  7866. { {?} } == { {?} }
  7867. with message:
  7868. result.errorMessage() := ""
  7869. -------------------------------------------------------------------------------
  7870. Process can be configured on command line
  7871. reporter
  7872. must match one of the available ones
  7873. -------------------------------------------------------------------------------
  7874. CmdLine.tests.cpp:<line number>
  7875. ...............................................................................
  7876. CmdLine.tests.cpp:<line number>: PASSED:
  7877. CHECK( !result )
  7878. with expansion:
  7879. true
  7880. CmdLine.tests.cpp:<line number>: PASSED:
  7881. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("Unrecognized reporter") )
  7882. with expansion:
  7883. "Unrecognized reporter, 'unsupported'. Check available with --list-reporters"
  7884. contains: "Unrecognized reporter"
  7885. -------------------------------------------------------------------------------
  7886. Process can be configured on command line
  7887. reporter
  7888. With output file
  7889. -------------------------------------------------------------------------------
  7890. CmdLine.tests.cpp:<line number>
  7891. ...............................................................................
  7892. CmdLine.tests.cpp:<line number>: PASSED:
  7893. CHECK( result )
  7894. with expansion:
  7895. {?}
  7896. with message:
  7897. result.errorMessage() := ""
  7898. CmdLine.tests.cpp:<line number>: PASSED:
  7899. REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "out.txt"s, {}, {} } } )
  7900. with expansion:
  7901. { {?} } == { {?} }
  7902. with message:
  7903. result.errorMessage() := ""
  7904. -------------------------------------------------------------------------------
  7905. Process can be configured on command line
  7906. reporter
  7907. With Windows-like absolute path as output file
  7908. -------------------------------------------------------------------------------
  7909. CmdLine.tests.cpp:<line number>
  7910. ...............................................................................
  7911. CmdLine.tests.cpp:<line number>: PASSED:
  7912. CHECK( result )
  7913. with expansion:
  7914. {?}
  7915. with message:
  7916. result.errorMessage() := ""
  7917. CmdLine.tests.cpp:<line number>: PASSED:
  7918. REQUIRE( config.reporterSpecifications == vec_Specs{ { "console", "C:\\Temp\\out.txt"s, {}, {} } } )
  7919. with expansion:
  7920. { {?} } == { {?} }
  7921. with message:
  7922. result.errorMessage() := ""
  7923. -------------------------------------------------------------------------------
  7924. Process can be configured on command line
  7925. reporter
  7926. Multiple reporters
  7927. All with output files
  7928. -------------------------------------------------------------------------------
  7929. CmdLine.tests.cpp:<line number>
  7930. ...............................................................................
  7931. CmdLine.tests.cpp:<line number>: PASSED:
  7932. CHECK( cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "junit::out=output-junit.xml" }) )
  7933. with expansion:
  7934. {?}
  7935. CmdLine.tests.cpp:<line number>: PASSED:
  7936. REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "junit", "output-junit.xml"s, {}, {} } } )
  7937. with expansion:
  7938. { {?}, {?} } == { {?}, {?} }
  7939. -------------------------------------------------------------------------------
  7940. Process can be configured on command line
  7941. reporter
  7942. Multiple reporters
  7943. Mixed output files and default output
  7944. -------------------------------------------------------------------------------
  7945. CmdLine.tests.cpp:<line number>
  7946. ...............................................................................
  7947. CmdLine.tests.cpp:<line number>: PASSED:
  7948. CHECK( cli.parse({ "test", "-r", "xml::out=output.xml", "-r", "console" }) )
  7949. with expansion:
  7950. {?}
  7951. CmdLine.tests.cpp:<line number>: PASSED:
  7952. REQUIRE( config.reporterSpecifications == vec_Specs{ { "xml", "output.xml"s, {}, {} }, { "console", {}, {}, {} } } )
  7953. with expansion:
  7954. { {?}, {?} } == { {?}, {?} }
  7955. -------------------------------------------------------------------------------
  7956. Process can be configured on command line
  7957. reporter
  7958. Multiple reporters
  7959. cannot have multiple reporters with default output
  7960. -------------------------------------------------------------------------------
  7961. CmdLine.tests.cpp:<line number>
  7962. ...............................................................................
  7963. CmdLine.tests.cpp:<line number>: PASSED:
  7964. CHECK( !result )
  7965. with expansion:
  7966. true
  7967. CmdLine.tests.cpp:<line number>: PASSED:
  7968. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("Only one reporter may have unspecified output file.") )
  7969. with expansion:
  7970. "Only one reporter may have unspecified output file." contains: "Only one
  7971. reporter may have unspecified output file."
  7972. -------------------------------------------------------------------------------
  7973. Process can be configured on command line
  7974. debugger
  7975. -b
  7976. -------------------------------------------------------------------------------
  7977. CmdLine.tests.cpp:<line number>
  7978. ...............................................................................
  7979. CmdLine.tests.cpp:<line number>: PASSED:
  7980. CHECK( cli.parse({"test", "-b"}) )
  7981. with expansion:
  7982. {?}
  7983. CmdLine.tests.cpp:<line number>: PASSED:
  7984. REQUIRE( config.shouldDebugBreak == true )
  7985. with expansion:
  7986. true == true
  7987. -------------------------------------------------------------------------------
  7988. Process can be configured on command line
  7989. debugger
  7990. --break
  7991. -------------------------------------------------------------------------------
  7992. CmdLine.tests.cpp:<line number>
  7993. ...............................................................................
  7994. CmdLine.tests.cpp:<line number>: PASSED:
  7995. CHECK( cli.parse({"test", "--break"}) )
  7996. with expansion:
  7997. {?}
  7998. CmdLine.tests.cpp:<line number>: PASSED:
  7999. REQUIRE( config.shouldDebugBreak )
  8000. with expansion:
  8001. true
  8002. -------------------------------------------------------------------------------
  8003. Process can be configured on command line
  8004. abort
  8005. -a aborts after first failure
  8006. -------------------------------------------------------------------------------
  8007. CmdLine.tests.cpp:<line number>
  8008. ...............................................................................
  8009. CmdLine.tests.cpp:<line number>: PASSED:
  8010. CHECK( cli.parse({"test", "-a"}) )
  8011. with expansion:
  8012. {?}
  8013. CmdLine.tests.cpp:<line number>: PASSED:
  8014. REQUIRE( config.abortAfter == 1 )
  8015. with expansion:
  8016. 1 == 1
  8017. -------------------------------------------------------------------------------
  8018. Process can be configured on command line
  8019. abort
  8020. -x 2 aborts after two failures
  8021. -------------------------------------------------------------------------------
  8022. CmdLine.tests.cpp:<line number>
  8023. ...............................................................................
  8024. CmdLine.tests.cpp:<line number>: PASSED:
  8025. CHECK( cli.parse({"test", "-x", "2"}) )
  8026. with expansion:
  8027. {?}
  8028. CmdLine.tests.cpp:<line number>: PASSED:
  8029. REQUIRE( config.abortAfter == 2 )
  8030. with expansion:
  8031. 2 == 2
  8032. -------------------------------------------------------------------------------
  8033. Process can be configured on command line
  8034. abort
  8035. -x must be numeric
  8036. -------------------------------------------------------------------------------
  8037. CmdLine.tests.cpp:<line number>
  8038. ...............................................................................
  8039. CmdLine.tests.cpp:<line number>: PASSED:
  8040. CHECK( !result )
  8041. with expansion:
  8042. true
  8043. CmdLine.tests.cpp:<line number>: PASSED:
  8044. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("convert") && ContainsSubstring("oops") )
  8045. with expansion:
  8046. "Unable to convert 'oops' to destination type" ( contains: "convert" and
  8047. contains: "oops" )
  8048. -------------------------------------------------------------------------------
  8049. Process can be configured on command line
  8050. abort
  8051. wait-for-keypress
  8052. Accepted options
  8053. -------------------------------------------------------------------------------
  8054. CmdLine.tests.cpp:<line number>
  8055. ...............................................................................
  8056. CmdLine.tests.cpp:<line number>: PASSED:
  8057. CHECK( cli.parse({"test", "--wait-for-keypress", std::get<0>(input)}) )
  8058. with expansion:
  8059. {?}
  8060. CmdLine.tests.cpp:<line number>: PASSED:
  8061. REQUIRE( config.waitForKeypress == std::get<1>(input) )
  8062. with expansion:
  8063. 0 == 0
  8064. -------------------------------------------------------------------------------
  8065. Process can be configured on command line
  8066. abort
  8067. wait-for-keypress
  8068. Accepted options
  8069. -------------------------------------------------------------------------------
  8070. CmdLine.tests.cpp:<line number>
  8071. ...............................................................................
  8072. CmdLine.tests.cpp:<line number>: PASSED:
  8073. CHECK( cli.parse({"test", "--wait-for-keypress", std::get<0>(input)}) )
  8074. with expansion:
  8075. {?}
  8076. CmdLine.tests.cpp:<line number>: PASSED:
  8077. REQUIRE( config.waitForKeypress == std::get<1>(input) )
  8078. with expansion:
  8079. 1 == 1
  8080. -------------------------------------------------------------------------------
  8081. Process can be configured on command line
  8082. abort
  8083. wait-for-keypress
  8084. Accepted options
  8085. -------------------------------------------------------------------------------
  8086. CmdLine.tests.cpp:<line number>
  8087. ...............................................................................
  8088. CmdLine.tests.cpp:<line number>: PASSED:
  8089. CHECK( cli.parse({"test", "--wait-for-keypress", std::get<0>(input)}) )
  8090. with expansion:
  8091. {?}
  8092. CmdLine.tests.cpp:<line number>: PASSED:
  8093. REQUIRE( config.waitForKeypress == std::get<1>(input) )
  8094. with expansion:
  8095. 2 == 2
  8096. -------------------------------------------------------------------------------
  8097. Process can be configured on command line
  8098. abort
  8099. wait-for-keypress
  8100. Accepted options
  8101. -------------------------------------------------------------------------------
  8102. CmdLine.tests.cpp:<line number>
  8103. ...............................................................................
  8104. CmdLine.tests.cpp:<line number>: PASSED:
  8105. CHECK( cli.parse({"test", "--wait-for-keypress", std::get<0>(input)}) )
  8106. with expansion:
  8107. {?}
  8108. CmdLine.tests.cpp:<line number>: PASSED:
  8109. REQUIRE( config.waitForKeypress == std::get<1>(input) )
  8110. with expansion:
  8111. 3 == 3
  8112. -------------------------------------------------------------------------------
  8113. Process can be configured on command line
  8114. abort
  8115. wait-for-keypress
  8116. invalid options are reported
  8117. -------------------------------------------------------------------------------
  8118. CmdLine.tests.cpp:<line number>
  8119. ...............................................................................
  8120. CmdLine.tests.cpp:<line number>: PASSED:
  8121. CHECK( !result )
  8122. with expansion:
  8123. true
  8124. CmdLine.tests.cpp:<line number>: PASSED:
  8125. REQUIRE_THAT( result.errorMessage(), ContainsSubstring("never") && ContainsSubstring("both") )
  8126. with expansion:
  8127. "keypress argument must be one of: never, start, exit or both. 'sometimes'
  8128. not recognised" ( contains: "never" and contains: "both" )
  8129. -------------------------------------------------------------------------------
  8130. Process can be configured on command line
  8131. nothrow
  8132. -e
  8133. -------------------------------------------------------------------------------
  8134. CmdLine.tests.cpp:<line number>
  8135. ...............................................................................
  8136. CmdLine.tests.cpp:<line number>: PASSED:
  8137. CHECK( cli.parse({"test", "-e"}) )
  8138. with expansion:
  8139. {?}
  8140. CmdLine.tests.cpp:<line number>: PASSED:
  8141. REQUIRE( config.noThrow )
  8142. with expansion:
  8143. true
  8144. -------------------------------------------------------------------------------
  8145. Process can be configured on command line
  8146. nothrow
  8147. --nothrow
  8148. -------------------------------------------------------------------------------
  8149. CmdLine.tests.cpp:<line number>
  8150. ...............................................................................
  8151. CmdLine.tests.cpp:<line number>: PASSED:
  8152. CHECK( cli.parse({"test", "--nothrow"}) )
  8153. with expansion:
  8154. {?}
  8155. CmdLine.tests.cpp:<line number>: PASSED:
  8156. REQUIRE( config.noThrow )
  8157. with expansion:
  8158. true
  8159. -------------------------------------------------------------------------------
  8160. Process can be configured on command line
  8161. output filename
  8162. -o filename
  8163. -------------------------------------------------------------------------------
  8164. CmdLine.tests.cpp:<line number>
  8165. ...............................................................................
  8166. CmdLine.tests.cpp:<line number>: PASSED:
  8167. CHECK( cli.parse({"test", "-o", "filename.ext"}) )
  8168. with expansion:
  8169. {?}
  8170. CmdLine.tests.cpp:<line number>: PASSED:
  8171. REQUIRE( config.defaultOutputFilename == "filename.ext" )
  8172. with expansion:
  8173. "filename.ext" == "filename.ext"
  8174. -------------------------------------------------------------------------------
  8175. Process can be configured on command line
  8176. output filename
  8177. --out
  8178. -------------------------------------------------------------------------------
  8179. CmdLine.tests.cpp:<line number>
  8180. ...............................................................................
  8181. CmdLine.tests.cpp:<line number>: PASSED:
  8182. CHECK( cli.parse({"test", "--out", "filename.ext"}) )
  8183. with expansion:
  8184. {?}
  8185. CmdLine.tests.cpp:<line number>: PASSED:
  8186. REQUIRE( config.defaultOutputFilename == "filename.ext" )
  8187. with expansion:
  8188. "filename.ext" == "filename.ext"
  8189. -------------------------------------------------------------------------------
  8190. Process can be configured on command line
  8191. combinations
  8192. Single character flags can be combined
  8193. -------------------------------------------------------------------------------
  8194. CmdLine.tests.cpp:<line number>
  8195. ...............................................................................
  8196. CmdLine.tests.cpp:<line number>: PASSED:
  8197. CHECK( cli.parse({"test", "-abe"}) )
  8198. with expansion:
  8199. {?}
  8200. CmdLine.tests.cpp:<line number>: PASSED:
  8201. CHECK( config.abortAfter == 1 )
  8202. with expansion:
  8203. 1 == 1
  8204. CmdLine.tests.cpp:<line number>: PASSED:
  8205. CHECK( config.shouldDebugBreak )
  8206. with expansion:
  8207. true
  8208. CmdLine.tests.cpp:<line number>: PASSED:
  8209. CHECK( config.noThrow == true )
  8210. with expansion:
  8211. true == true
  8212. -------------------------------------------------------------------------------
  8213. Process can be configured on command line
  8214. use-colour
  8215. without option
  8216. -------------------------------------------------------------------------------
  8217. CmdLine.tests.cpp:<line number>
  8218. ...............................................................................
  8219. CmdLine.tests.cpp:<line number>: PASSED:
  8220. CHECK( cli.parse({"test"}) )
  8221. with expansion:
  8222. {?}
  8223. CmdLine.tests.cpp:<line number>: PASSED:
  8224. REQUIRE( config.defaultColourMode == ColourMode::PlatformDefault )
  8225. with expansion:
  8226. 0 == 0
  8227. -------------------------------------------------------------------------------
  8228. Process can be configured on command line
  8229. use-colour
  8230. auto
  8231. -------------------------------------------------------------------------------
  8232. CmdLine.tests.cpp:<line number>
  8233. ...............................................................................
  8234. CmdLine.tests.cpp:<line number>: PASSED:
  8235. CHECK( cli.parse( { "test", "--colour-mode", "default" } ) )
  8236. with expansion:
  8237. {?}
  8238. CmdLine.tests.cpp:<line number>: PASSED:
  8239. REQUIRE( config.defaultColourMode == ColourMode::PlatformDefault )
  8240. with expansion:
  8241. 0 == 0
  8242. -------------------------------------------------------------------------------
  8243. Process can be configured on command line
  8244. use-colour
  8245. yes
  8246. -------------------------------------------------------------------------------
  8247. CmdLine.tests.cpp:<line number>
  8248. ...............................................................................
  8249. CmdLine.tests.cpp:<line number>: PASSED:
  8250. CHECK( cli.parse({"test", "--colour-mode", "ansi"}) )
  8251. with expansion:
  8252. {?}
  8253. CmdLine.tests.cpp:<line number>: PASSED:
  8254. REQUIRE( config.defaultColourMode == ColourMode::ANSI )
  8255. with expansion:
  8256. 1 == 1
  8257. -------------------------------------------------------------------------------
  8258. Process can be configured on command line
  8259. use-colour
  8260. no
  8261. -------------------------------------------------------------------------------
  8262. CmdLine.tests.cpp:<line number>
  8263. ...............................................................................
  8264. CmdLine.tests.cpp:<line number>: PASSED:
  8265. CHECK( cli.parse({"test", "--colour-mode", "none"}) )
  8266. with expansion:
  8267. {?}
  8268. CmdLine.tests.cpp:<line number>: PASSED:
  8269. REQUIRE( config.defaultColourMode == ColourMode::None )
  8270. with expansion:
  8271. 3 == 3
  8272. -------------------------------------------------------------------------------
  8273. Process can be configured on command line
  8274. use-colour
  8275. error
  8276. -------------------------------------------------------------------------------
  8277. CmdLine.tests.cpp:<line number>
  8278. ...............................................................................
  8279. CmdLine.tests.cpp:<line number>: PASSED:
  8280. CHECK( !result )
  8281. with expansion:
  8282. true
  8283. CmdLine.tests.cpp:<line number>: PASSED:
  8284. CHECK_THAT( result.errorMessage(), ContainsSubstring( "colour mode must be one of" ) )
  8285. with expansion:
  8286. "colour mode must be one of: default, ansi, win32, or none. 'wrong' is not
  8287. recognised" contains: "colour mode must be one of"
  8288. -------------------------------------------------------------------------------
  8289. Process can be configured on command line
  8290. Benchmark options
  8291. samples
  8292. -------------------------------------------------------------------------------
  8293. CmdLine.tests.cpp:<line number>
  8294. ...............................................................................
  8295. CmdLine.tests.cpp:<line number>: PASSED:
  8296. CHECK( cli.parse({ "test", "--benchmark-samples=200" }) )
  8297. with expansion:
  8298. {?}
  8299. CmdLine.tests.cpp:<line number>: PASSED:
  8300. REQUIRE( config.benchmarkSamples == 200 )
  8301. with expansion:
  8302. 200 == 200
  8303. -------------------------------------------------------------------------------
  8304. Process can be configured on command line
  8305. Benchmark options
  8306. resamples
  8307. -------------------------------------------------------------------------------
  8308. CmdLine.tests.cpp:<line number>
  8309. ...............................................................................
  8310. CmdLine.tests.cpp:<line number>: PASSED:
  8311. CHECK( cli.parse({ "test", "--benchmark-resamples=20000" }) )
  8312. with expansion:
  8313. {?}
  8314. CmdLine.tests.cpp:<line number>: PASSED:
  8315. REQUIRE( config.benchmarkResamples == 20000 )
  8316. with expansion:
  8317. 20000 (0x<hex digits>) == 20000 (0x<hex digits>)
  8318. -------------------------------------------------------------------------------
  8319. Process can be configured on command line
  8320. Benchmark options
  8321. confidence-interval
  8322. -------------------------------------------------------------------------------
  8323. CmdLine.tests.cpp:<line number>
  8324. ...............................................................................
  8325. CmdLine.tests.cpp:<line number>: PASSED:
  8326. CHECK( cli.parse({ "test", "--benchmark-confidence-interval=0.99" }) )
  8327. with expansion:
  8328. {?}
  8329. CmdLine.tests.cpp:<line number>: PASSED:
  8330. REQUIRE( config.benchmarkConfidenceInterval == Catch::Approx(0.99) )
  8331. with expansion:
  8332. 0.99 == Approx( 0.99 )
  8333. -------------------------------------------------------------------------------
  8334. Process can be configured on command line
  8335. Benchmark options
  8336. no-analysis
  8337. -------------------------------------------------------------------------------
  8338. CmdLine.tests.cpp:<line number>
  8339. ...............................................................................
  8340. CmdLine.tests.cpp:<line number>: PASSED:
  8341. CHECK( cli.parse({ "test", "--benchmark-no-analysis" }) )
  8342. with expansion:
  8343. {?}
  8344. CmdLine.tests.cpp:<line number>: PASSED:
  8345. REQUIRE( config.benchmarkNoAnalysis )
  8346. with expansion:
  8347. true
  8348. -------------------------------------------------------------------------------
  8349. Process can be configured on command line
  8350. Benchmark options
  8351. warmup-time
  8352. -------------------------------------------------------------------------------
  8353. CmdLine.tests.cpp:<line number>
  8354. ...............................................................................
  8355. CmdLine.tests.cpp:<line number>: PASSED:
  8356. CHECK( cli.parse({ "test", "--benchmark-warmup-time=10" }) )
  8357. with expansion:
  8358. {?}
  8359. CmdLine.tests.cpp:<line number>: PASSED:
  8360. REQUIRE( config.benchmarkWarmupTime == 10 )
  8361. with expansion:
  8362. 10 == 10
  8363. -------------------------------------------------------------------------------
  8364. Product with differing arities - std::tuple<int, double, float>
  8365. -------------------------------------------------------------------------------
  8366. Misc.tests.cpp:<line number>
  8367. ...............................................................................
  8368. Misc.tests.cpp:<line number>: PASSED:
  8369. REQUIRE( std::tuple_size<TestType>::value >= 1 )
  8370. with expansion:
  8371. 3 >= 1
  8372. -------------------------------------------------------------------------------
  8373. Product with differing arities - std::tuple<int, double>
  8374. -------------------------------------------------------------------------------
  8375. Misc.tests.cpp:<line number>
  8376. ...............................................................................
  8377. Misc.tests.cpp:<line number>: PASSED:
  8378. REQUIRE( std::tuple_size<TestType>::value >= 1 )
  8379. with expansion:
  8380. 2 >= 1
  8381. -------------------------------------------------------------------------------
  8382. Product with differing arities - std::tuple<int>
  8383. -------------------------------------------------------------------------------
  8384. Misc.tests.cpp:<line number>
  8385. ...............................................................................
  8386. Misc.tests.cpp:<line number>: PASSED:
  8387. REQUIRE( std::tuple_size<TestType>::value >= 1 )
  8388. with expansion:
  8389. 1 >= 1
  8390. -------------------------------------------------------------------------------
  8391. Random seed generation accepts known methods
  8392. -------------------------------------------------------------------------------
  8393. RandomNumberGeneration.tests.cpp:<line number>
  8394. ...............................................................................
  8395. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  8396. REQUIRE_NOTHROW( Catch::generateRandomSeed(method) )
  8397. -------------------------------------------------------------------------------
  8398. Random seed generation accepts known methods
  8399. -------------------------------------------------------------------------------
  8400. RandomNumberGeneration.tests.cpp:<line number>
  8401. ...............................................................................
  8402. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  8403. REQUIRE_NOTHROW( Catch::generateRandomSeed(method) )
  8404. -------------------------------------------------------------------------------
  8405. Random seed generation accepts known methods
  8406. -------------------------------------------------------------------------------
  8407. RandomNumberGeneration.tests.cpp:<line number>
  8408. ...............................................................................
  8409. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  8410. REQUIRE_NOTHROW( Catch::generateRandomSeed(method) )
  8411. -------------------------------------------------------------------------------
  8412. Random seed generation reports unknown methods
  8413. -------------------------------------------------------------------------------
  8414. RandomNumberGeneration.tests.cpp:<line number>
  8415. ...............................................................................
  8416. RandomNumberGeneration.tests.cpp:<line number>: PASSED:
  8417. REQUIRE_THROWS( Catch::generateRandomSeed(static_cast<Catch::GenerateFrom>(77)) )
  8418. -------------------------------------------------------------------------------
  8419. Range type with sentinel
  8420. -------------------------------------------------------------------------------
  8421. ToString.tests.cpp:<line number>
  8422. ...............................................................................
  8423. ToString.tests.cpp:<line number>: PASSED:
  8424. CHECK( Catch::Detail::stringify(UsesSentinel{}) == "{ }" )
  8425. with expansion:
  8426. "{ }" == "{ }"
  8427. -------------------------------------------------------------------------------
  8428. Reconstruction should be based on stringification: #914
  8429. -------------------------------------------------------------------------------
  8430. Decomposition.tests.cpp:<line number>
  8431. ...............................................................................
  8432. Decomposition.tests.cpp:<line number>: FAILED:
  8433. CHECK( truthy(false) )
  8434. with expansion:
  8435. Hey, its truthy!
  8436. -------------------------------------------------------------------------------
  8437. Regex string matcher
  8438. -------------------------------------------------------------------------------
  8439. Matchers.tests.cpp:<line number>
  8440. ...............................................................................
  8441. Matchers.tests.cpp:<line number>: FAILED:
  8442. CHECK_THAT( testStringForMatching(), Matches( "this STRING contains 'abc' as a substring" ) )
  8443. with expansion:
  8444. "this string contains 'abc' as a substring" matches "this STRING contains
  8445. 'abc' as a substring" case sensitively
  8446. Matchers.tests.cpp:<line number>: FAILED:
  8447. CHECK_THAT( testStringForMatching(), Matches( "contains 'abc' as a substring" ) )
  8448. with expansion:
  8449. "this string contains 'abc' as a substring" matches "contains 'abc' as a
  8450. substring" case sensitively
  8451. Matchers.tests.cpp:<line number>: FAILED:
  8452. CHECK_THAT( testStringForMatching(), Matches( "this string contains 'abc' as a" ) )
  8453. with expansion:
  8454. "this string contains 'abc' as a substring" matches "this string contains
  8455. 'abc' as a" case sensitively
  8456. -------------------------------------------------------------------------------
  8457. Registering reporter with '::' in name fails
  8458. -------------------------------------------------------------------------------
  8459. Reporters.tests.cpp:<line number>
  8460. ...............................................................................
  8461. Reporters.tests.cpp:<line number>: PASSED:
  8462. REQUIRE_THROWS_WITH( registry.registerReporter( "with::doublecolons", Catch::Detail::make_unique<TestReporterFactory>() ), "'::' is not allowed in reporter name: 'with::doublecolons'" )
  8463. with expansion:
  8464. "'::' is not allowed in reporter name: 'with::doublecolons'" equals: "'::' is
  8465. not allowed in reporter name: 'with::doublecolons'"
  8466. -------------------------------------------------------------------------------
  8467. Regression test #1
  8468. -------------------------------------------------------------------------------
  8469. Matchers.tests.cpp:<line number>
  8470. ...............................................................................
  8471. Matchers.tests.cpp:<line number>: PASSED:
  8472. CHECK_THAT( actual, !UnorderedEquals( expected ) )
  8473. with expansion:
  8474. { 'a', 'b' } not UnorderedEquals: { 'c', 'b' }
  8475. -------------------------------------------------------------------------------
  8476. Reporter's write listings to provided stream
  8477. -------------------------------------------------------------------------------
  8478. Reporters.tests.cpp:<line number>
  8479. ...............................................................................
  8480. Reporters.tests.cpp:<line number>: PASSED:
  8481. REQUIRE_FALSE( factories.empty() )
  8482. with expansion:
  8483. !false
  8484. -------------------------------------------------------------------------------
  8485. Reporter's write listings to provided stream
  8486. Automake reporter lists tags
  8487. -------------------------------------------------------------------------------
  8488. Reporters.tests.cpp:<line number>
  8489. ...............................................................................
  8490. Reporters.tests.cpp:<line number>: PASSED:
  8491. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8492. with expansion:
  8493. "All available tags:
  8494. 1 [fakeTag]
  8495. 1 tag
  8496. " contains: "fakeTag"
  8497. with message:
  8498. Tested reporter: Automake
  8499. -------------------------------------------------------------------------------
  8500. Reporter's write listings to provided stream
  8501. -------------------------------------------------------------------------------
  8502. Reporters.tests.cpp:<line number>
  8503. ...............................................................................
  8504. Reporters.tests.cpp:<line number>: PASSED:
  8505. REQUIRE_FALSE( factories.empty() )
  8506. with expansion:
  8507. !false
  8508. -------------------------------------------------------------------------------
  8509. Reporter's write listings to provided stream
  8510. Automake reporter lists reporters
  8511. -------------------------------------------------------------------------------
  8512. Reporters.tests.cpp:<line number>
  8513. ...............................................................................
  8514. Reporters.tests.cpp:<line number>: PASSED:
  8515. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8516. with expansion:
  8517. "Available reporters:
  8518. fake reporter: fake description
  8519. " contains: "fake reporter"
  8520. with message:
  8521. Tested reporter: Automake
  8522. -------------------------------------------------------------------------------
  8523. Reporter's write listings to provided stream
  8524. -------------------------------------------------------------------------------
  8525. Reporters.tests.cpp:<line number>
  8526. ...............................................................................
  8527. Reporters.tests.cpp:<line number>: PASSED:
  8528. REQUIRE_FALSE( factories.empty() )
  8529. with expansion:
  8530. !false
  8531. -------------------------------------------------------------------------------
  8532. Reporter's write listings to provided stream
  8533. Automake reporter lists tests
  8534. -------------------------------------------------------------------------------
  8535. Reporters.tests.cpp:<line number>
  8536. ...............................................................................
  8537. Reporters.tests.cpp:<line number>: PASSED:
  8538. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8539. with expansion:
  8540. "All available test cases:
  8541. fake test name
  8542. [fakeTestTag]
  8543. 1 test case
  8544. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8545. with message:
  8546. Tested reporter: Automake
  8547. -------------------------------------------------------------------------------
  8548. Reporter's write listings to provided stream
  8549. -------------------------------------------------------------------------------
  8550. Reporters.tests.cpp:<line number>
  8551. ...............................................................................
  8552. Reporters.tests.cpp:<line number>: PASSED:
  8553. REQUIRE_FALSE( factories.empty() )
  8554. with expansion:
  8555. !false
  8556. -------------------------------------------------------------------------------
  8557. Reporter's write listings to provided stream
  8558. compact reporter lists tags
  8559. -------------------------------------------------------------------------------
  8560. Reporters.tests.cpp:<line number>
  8561. ...............................................................................
  8562. Reporters.tests.cpp:<line number>: PASSED:
  8563. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8564. with expansion:
  8565. "All available tags:
  8566. 1 [fakeTag]
  8567. 1 tag
  8568. " contains: "fakeTag"
  8569. with message:
  8570. Tested reporter: compact
  8571. -------------------------------------------------------------------------------
  8572. Reporter's write listings to provided stream
  8573. -------------------------------------------------------------------------------
  8574. Reporters.tests.cpp:<line number>
  8575. ...............................................................................
  8576. Reporters.tests.cpp:<line number>: PASSED:
  8577. REQUIRE_FALSE( factories.empty() )
  8578. with expansion:
  8579. !false
  8580. -------------------------------------------------------------------------------
  8581. Reporter's write listings to provided stream
  8582. compact reporter lists reporters
  8583. -------------------------------------------------------------------------------
  8584. Reporters.tests.cpp:<line number>
  8585. ...............................................................................
  8586. Reporters.tests.cpp:<line number>: PASSED:
  8587. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8588. with expansion:
  8589. "Available reporters:
  8590. fake reporter: fake description
  8591. " contains: "fake reporter"
  8592. with message:
  8593. Tested reporter: compact
  8594. -------------------------------------------------------------------------------
  8595. Reporter's write listings to provided stream
  8596. -------------------------------------------------------------------------------
  8597. Reporters.tests.cpp:<line number>
  8598. ...............................................................................
  8599. Reporters.tests.cpp:<line number>: PASSED:
  8600. REQUIRE_FALSE( factories.empty() )
  8601. with expansion:
  8602. !false
  8603. -------------------------------------------------------------------------------
  8604. Reporter's write listings to provided stream
  8605. compact reporter lists tests
  8606. -------------------------------------------------------------------------------
  8607. Reporters.tests.cpp:<line number>
  8608. ...............................................................................
  8609. Reporters.tests.cpp:<line number>: PASSED:
  8610. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8611. with expansion:
  8612. "All available test cases:
  8613. fake test name
  8614. [fakeTestTag]
  8615. 1 test case
  8616. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8617. with message:
  8618. Tested reporter: compact
  8619. -------------------------------------------------------------------------------
  8620. Reporter's write listings to provided stream
  8621. -------------------------------------------------------------------------------
  8622. Reporters.tests.cpp:<line number>
  8623. ...............................................................................
  8624. Reporters.tests.cpp:<line number>: PASSED:
  8625. REQUIRE_FALSE( factories.empty() )
  8626. with expansion:
  8627. !false
  8628. -------------------------------------------------------------------------------
  8629. Reporter's write listings to provided stream
  8630. console reporter lists tags
  8631. -------------------------------------------------------------------------------
  8632. Reporters.tests.cpp:<line number>
  8633. ...............................................................................
  8634. Reporters.tests.cpp:<line number>: PASSED:
  8635. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8636. with expansion:
  8637. "All available tags:
  8638. 1 [fakeTag]
  8639. 1 tag
  8640. " contains: "fakeTag"
  8641. with message:
  8642. Tested reporter: console
  8643. -------------------------------------------------------------------------------
  8644. Reporter's write listings to provided stream
  8645. -------------------------------------------------------------------------------
  8646. Reporters.tests.cpp:<line number>
  8647. ...............................................................................
  8648. Reporters.tests.cpp:<line number>: PASSED:
  8649. REQUIRE_FALSE( factories.empty() )
  8650. with expansion:
  8651. !false
  8652. -------------------------------------------------------------------------------
  8653. Reporter's write listings to provided stream
  8654. console reporter lists reporters
  8655. -------------------------------------------------------------------------------
  8656. Reporters.tests.cpp:<line number>
  8657. ...............................................................................
  8658. Reporters.tests.cpp:<line number>: PASSED:
  8659. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8660. with expansion:
  8661. "Available reporters:
  8662. fake reporter: fake description
  8663. " contains: "fake reporter"
  8664. with message:
  8665. Tested reporter: console
  8666. -------------------------------------------------------------------------------
  8667. Reporter's write listings to provided stream
  8668. -------------------------------------------------------------------------------
  8669. Reporters.tests.cpp:<line number>
  8670. ...............................................................................
  8671. Reporters.tests.cpp:<line number>: PASSED:
  8672. REQUIRE_FALSE( factories.empty() )
  8673. with expansion:
  8674. !false
  8675. -------------------------------------------------------------------------------
  8676. Reporter's write listings to provided stream
  8677. console reporter lists tests
  8678. -------------------------------------------------------------------------------
  8679. Reporters.tests.cpp:<line number>
  8680. ...............................................................................
  8681. Reporters.tests.cpp:<line number>: PASSED:
  8682. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8683. with expansion:
  8684. "All available test cases:
  8685. fake test name
  8686. [fakeTestTag]
  8687. 1 test case
  8688. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8689. with message:
  8690. Tested reporter: console
  8691. -------------------------------------------------------------------------------
  8692. Reporter's write listings to provided stream
  8693. -------------------------------------------------------------------------------
  8694. Reporters.tests.cpp:<line number>
  8695. ...............................................................................
  8696. Reporters.tests.cpp:<line number>: PASSED:
  8697. REQUIRE_FALSE( factories.empty() )
  8698. with expansion:
  8699. !false
  8700. -------------------------------------------------------------------------------
  8701. Reporter's write listings to provided stream
  8702. JUnit reporter lists tags
  8703. -------------------------------------------------------------------------------
  8704. Reporters.tests.cpp:<line number>
  8705. ...............................................................................
  8706. Reporters.tests.cpp:<line number>: PASSED:
  8707. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8708. with expansion:
  8709. "<?xml version="1.0" encoding="UTF-8"?>
  8710. All available tags:
  8711. 1 [fakeTag]
  8712. 1 tag
  8713. " contains: "fakeTag"
  8714. with message:
  8715. Tested reporter: JUnit
  8716. -------------------------------------------------------------------------------
  8717. Reporter's write listings to provided stream
  8718. -------------------------------------------------------------------------------
  8719. Reporters.tests.cpp:<line number>
  8720. ...............................................................................
  8721. Reporters.tests.cpp:<line number>: PASSED:
  8722. REQUIRE_FALSE( factories.empty() )
  8723. with expansion:
  8724. !false
  8725. -------------------------------------------------------------------------------
  8726. Reporter's write listings to provided stream
  8727. JUnit reporter lists reporters
  8728. -------------------------------------------------------------------------------
  8729. Reporters.tests.cpp:<line number>
  8730. ...............................................................................
  8731. Reporters.tests.cpp:<line number>: PASSED:
  8732. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8733. with expansion:
  8734. "<?xml version="1.0" encoding="UTF-8"?>
  8735. Available reporters:
  8736. fake reporter: fake description
  8737. " contains: "fake reporter"
  8738. with message:
  8739. Tested reporter: JUnit
  8740. -------------------------------------------------------------------------------
  8741. Reporter's write listings to provided stream
  8742. -------------------------------------------------------------------------------
  8743. Reporters.tests.cpp:<line number>
  8744. ...............................................................................
  8745. Reporters.tests.cpp:<line number>: PASSED:
  8746. REQUIRE_FALSE( factories.empty() )
  8747. with expansion:
  8748. !false
  8749. -------------------------------------------------------------------------------
  8750. Reporter's write listings to provided stream
  8751. JUnit reporter lists tests
  8752. -------------------------------------------------------------------------------
  8753. Reporters.tests.cpp:<line number>
  8754. ...............................................................................
  8755. Reporters.tests.cpp:<line number>: PASSED:
  8756. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8757. with expansion:
  8758. "<?xml version="1.0" encoding="UTF-8"?>
  8759. All available test cases:
  8760. fake test name
  8761. [fakeTestTag]
  8762. 1 test case
  8763. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8764. with message:
  8765. Tested reporter: JUnit
  8766. -------------------------------------------------------------------------------
  8767. Reporter's write listings to provided stream
  8768. -------------------------------------------------------------------------------
  8769. Reporters.tests.cpp:<line number>
  8770. ...............................................................................
  8771. Reporters.tests.cpp:<line number>: PASSED:
  8772. REQUIRE_FALSE( factories.empty() )
  8773. with expansion:
  8774. !false
  8775. -------------------------------------------------------------------------------
  8776. Reporter's write listings to provided stream
  8777. SonarQube reporter lists tags
  8778. -------------------------------------------------------------------------------
  8779. Reporters.tests.cpp:<line number>
  8780. ...............................................................................
  8781. Reporters.tests.cpp:<line number>: PASSED:
  8782. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8783. with expansion:
  8784. "<?xml version="1.0" encoding="UTF-8"?>
  8785. All available tags:
  8786. 1 [fakeTag]
  8787. 1 tag
  8788. " contains: "fakeTag"
  8789. with message:
  8790. Tested reporter: SonarQube
  8791. -------------------------------------------------------------------------------
  8792. Reporter's write listings to provided stream
  8793. -------------------------------------------------------------------------------
  8794. Reporters.tests.cpp:<line number>
  8795. ...............................................................................
  8796. Reporters.tests.cpp:<line number>: PASSED:
  8797. REQUIRE_FALSE( factories.empty() )
  8798. with expansion:
  8799. !false
  8800. -------------------------------------------------------------------------------
  8801. Reporter's write listings to provided stream
  8802. SonarQube reporter lists reporters
  8803. -------------------------------------------------------------------------------
  8804. Reporters.tests.cpp:<line number>
  8805. ...............................................................................
  8806. Reporters.tests.cpp:<line number>: PASSED:
  8807. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8808. with expansion:
  8809. "<?xml version="1.0" encoding="UTF-8"?>
  8810. Available reporters:
  8811. fake reporter: fake description
  8812. " contains: "fake reporter"
  8813. with message:
  8814. Tested reporter: SonarQube
  8815. -------------------------------------------------------------------------------
  8816. Reporter's write listings to provided stream
  8817. -------------------------------------------------------------------------------
  8818. Reporters.tests.cpp:<line number>
  8819. ...............................................................................
  8820. Reporters.tests.cpp:<line number>: PASSED:
  8821. REQUIRE_FALSE( factories.empty() )
  8822. with expansion:
  8823. !false
  8824. -------------------------------------------------------------------------------
  8825. Reporter's write listings to provided stream
  8826. SonarQube reporter lists tests
  8827. -------------------------------------------------------------------------------
  8828. Reporters.tests.cpp:<line number>
  8829. ...............................................................................
  8830. Reporters.tests.cpp:<line number>: PASSED:
  8831. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8832. with expansion:
  8833. "<?xml version="1.0" encoding="UTF-8"?>
  8834. All available test cases:
  8835. fake test name
  8836. [fakeTestTag]
  8837. 1 test case
  8838. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8839. with message:
  8840. Tested reporter: SonarQube
  8841. -------------------------------------------------------------------------------
  8842. Reporter's write listings to provided stream
  8843. -------------------------------------------------------------------------------
  8844. Reporters.tests.cpp:<line number>
  8845. ...............................................................................
  8846. Reporters.tests.cpp:<line number>: PASSED:
  8847. REQUIRE_FALSE( factories.empty() )
  8848. with expansion:
  8849. !false
  8850. -------------------------------------------------------------------------------
  8851. Reporter's write listings to provided stream
  8852. TAP reporter lists tags
  8853. -------------------------------------------------------------------------------
  8854. Reporters.tests.cpp:<line number>
  8855. ...............................................................................
  8856. Reporters.tests.cpp:<line number>: PASSED:
  8857. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8858. with expansion:
  8859. "All available tags:
  8860. 1 [fakeTag]
  8861. 1 tag
  8862. " contains: "fakeTag"
  8863. with message:
  8864. Tested reporter: TAP
  8865. -------------------------------------------------------------------------------
  8866. Reporter's write listings to provided stream
  8867. -------------------------------------------------------------------------------
  8868. Reporters.tests.cpp:<line number>
  8869. ...............................................................................
  8870. Reporters.tests.cpp:<line number>: PASSED:
  8871. REQUIRE_FALSE( factories.empty() )
  8872. with expansion:
  8873. !false
  8874. -------------------------------------------------------------------------------
  8875. Reporter's write listings to provided stream
  8876. TAP reporter lists reporters
  8877. -------------------------------------------------------------------------------
  8878. Reporters.tests.cpp:<line number>
  8879. ...............................................................................
  8880. Reporters.tests.cpp:<line number>: PASSED:
  8881. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8882. with expansion:
  8883. "Available reporters:
  8884. fake reporter: fake description
  8885. " contains: "fake reporter"
  8886. with message:
  8887. Tested reporter: TAP
  8888. -------------------------------------------------------------------------------
  8889. Reporter's write listings to provided stream
  8890. -------------------------------------------------------------------------------
  8891. Reporters.tests.cpp:<line number>
  8892. ...............................................................................
  8893. Reporters.tests.cpp:<line number>: PASSED:
  8894. REQUIRE_FALSE( factories.empty() )
  8895. with expansion:
  8896. !false
  8897. -------------------------------------------------------------------------------
  8898. Reporter's write listings to provided stream
  8899. TAP reporter lists tests
  8900. -------------------------------------------------------------------------------
  8901. Reporters.tests.cpp:<line number>
  8902. ...............................................................................
  8903. Reporters.tests.cpp:<line number>: PASSED:
  8904. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8905. with expansion:
  8906. "All available test cases:
  8907. fake test name
  8908. [fakeTestTag]
  8909. 1 test case
  8910. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8911. with message:
  8912. Tested reporter: TAP
  8913. -------------------------------------------------------------------------------
  8914. Reporter's write listings to provided stream
  8915. -------------------------------------------------------------------------------
  8916. Reporters.tests.cpp:<line number>
  8917. ...............................................................................
  8918. Reporters.tests.cpp:<line number>: PASSED:
  8919. REQUIRE_FALSE( factories.empty() )
  8920. with expansion:
  8921. !false
  8922. -------------------------------------------------------------------------------
  8923. Reporter's write listings to provided stream
  8924. TeamCity reporter lists tags
  8925. -------------------------------------------------------------------------------
  8926. Reporters.tests.cpp:<line number>
  8927. ...............................................................................
  8928. Reporters.tests.cpp:<line number>: PASSED:
  8929. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  8930. with expansion:
  8931. "All available tags:
  8932. 1 [fakeTag]
  8933. 1 tag
  8934. " contains: "fakeTag"
  8935. with message:
  8936. Tested reporter: TeamCity
  8937. -------------------------------------------------------------------------------
  8938. Reporter's write listings to provided stream
  8939. -------------------------------------------------------------------------------
  8940. Reporters.tests.cpp:<line number>
  8941. ...............................................................................
  8942. Reporters.tests.cpp:<line number>: PASSED:
  8943. REQUIRE_FALSE( factories.empty() )
  8944. with expansion:
  8945. !false
  8946. -------------------------------------------------------------------------------
  8947. Reporter's write listings to provided stream
  8948. TeamCity reporter lists reporters
  8949. -------------------------------------------------------------------------------
  8950. Reporters.tests.cpp:<line number>
  8951. ...............................................................................
  8952. Reporters.tests.cpp:<line number>: PASSED:
  8953. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  8954. with expansion:
  8955. "Available reporters:
  8956. fake reporter: fake description
  8957. " contains: "fake reporter"
  8958. with message:
  8959. Tested reporter: TeamCity
  8960. -------------------------------------------------------------------------------
  8961. Reporter's write listings to provided stream
  8962. -------------------------------------------------------------------------------
  8963. Reporters.tests.cpp:<line number>
  8964. ...............................................................................
  8965. Reporters.tests.cpp:<line number>: PASSED:
  8966. REQUIRE_FALSE( factories.empty() )
  8967. with expansion:
  8968. !false
  8969. -------------------------------------------------------------------------------
  8970. Reporter's write listings to provided stream
  8971. TeamCity reporter lists tests
  8972. -------------------------------------------------------------------------------
  8973. Reporters.tests.cpp:<line number>
  8974. ...............................................................................
  8975. Reporters.tests.cpp:<line number>: PASSED:
  8976. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  8977. with expansion:
  8978. "All available test cases:
  8979. fake test name
  8980. [fakeTestTag]
  8981. 1 test case
  8982. " ( contains: "fake test name" and contains: "fakeTestTag" )
  8983. with message:
  8984. Tested reporter: TeamCity
  8985. -------------------------------------------------------------------------------
  8986. Reporter's write listings to provided stream
  8987. -------------------------------------------------------------------------------
  8988. Reporters.tests.cpp:<line number>
  8989. ...............................................................................
  8990. Reporters.tests.cpp:<line number>: PASSED:
  8991. REQUIRE_FALSE( factories.empty() )
  8992. with expansion:
  8993. !false
  8994. -------------------------------------------------------------------------------
  8995. Reporter's write listings to provided stream
  8996. XML reporter lists tags
  8997. -------------------------------------------------------------------------------
  8998. Reporters.tests.cpp:<line number>
  8999. ...............................................................................
  9000. Reporters.tests.cpp:<line number>: PASSED:
  9001. REQUIRE_THAT( listingString, ContainsSubstring("fakeTag"s) )
  9002. with expansion:
  9003. "<?xml version="1.0" encoding="UTF-8"?>
  9004. <TagsFromMatchingTests>
  9005. <Tag>
  9006. <Count>1</Count>
  9007. <Aliases>
  9008. <Alias>fakeTag</Alias>
  9009. </Aliases>
  9010. </Tag>
  9011. </TagsFromMatchingTests>" contains: "fakeTag"
  9012. with message:
  9013. Tested reporter: XML
  9014. -------------------------------------------------------------------------------
  9015. Reporter's write listings to provided stream
  9016. -------------------------------------------------------------------------------
  9017. Reporters.tests.cpp:<line number>
  9018. ...............................................................................
  9019. Reporters.tests.cpp:<line number>: PASSED:
  9020. REQUIRE_FALSE( factories.empty() )
  9021. with expansion:
  9022. !false
  9023. -------------------------------------------------------------------------------
  9024. Reporter's write listings to provided stream
  9025. XML reporter lists reporters
  9026. -------------------------------------------------------------------------------
  9027. Reporters.tests.cpp:<line number>
  9028. ...............................................................................
  9029. Reporters.tests.cpp:<line number>: PASSED:
  9030. REQUIRE_THAT( listingString, ContainsSubstring("fake reporter"s) )
  9031. with expansion:
  9032. "<?xml version="1.0" encoding="UTF-8"?>
  9033. <AvailableReporters>
  9034. <Reporter>
  9035. <Name>fake reporter</Name>
  9036. <Description>fake description</Description>
  9037. </Reporter>
  9038. </AvailableReporters>" contains: "fake reporter"
  9039. with message:
  9040. Tested reporter: XML
  9041. -------------------------------------------------------------------------------
  9042. Reporter's write listings to provided stream
  9043. -------------------------------------------------------------------------------
  9044. Reporters.tests.cpp:<line number>
  9045. ...............................................................................
  9046. Reporters.tests.cpp:<line number>: PASSED:
  9047. REQUIRE_FALSE( factories.empty() )
  9048. with expansion:
  9049. !false
  9050. -------------------------------------------------------------------------------
  9051. Reporter's write listings to provided stream
  9052. XML reporter lists tests
  9053. -------------------------------------------------------------------------------
  9054. Reporters.tests.cpp:<line number>
  9055. ...............................................................................
  9056. Reporters.tests.cpp:<line number>: PASSED:
  9057. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  9058. with expansion:
  9059. "<?xml version="1.0" encoding="UTF-8"?>
  9060. <MatchingTests>
  9061. <TestCase>
  9062. <Name>fake test name</Name>
  9063. <ClassName/>
  9064. <Tags>[fakeTestTag]</Tags>
  9065. <SourceInfo>
  9066. <File>fake-file.cpp</File>
  9067. <Line>123456789</Line>
  9068. </SourceInfo>
  9069. </TestCase>
  9070. </MatchingTests>" ( contains: "fake test name" and contains: "fakeTestTag" )
  9071. with message:
  9072. Tested reporter: XML
  9073. -------------------------------------------------------------------------------
  9074. Reproducer for #2309 - a very long description past 80 chars (default console
  9075. width) with a late colon : blablabla
  9076. -------------------------------------------------------------------------------
  9077. Reporters.tests.cpp:<line number>
  9078. ...............................................................................
  9079. Reporters.tests.cpp:<line number>: PASSED:
  9080. -------------------------------------------------------------------------------
  9081. SUCCEED counts as a test pass
  9082. -------------------------------------------------------------------------------
  9083. Message.tests.cpp:<line number>
  9084. ...............................................................................
  9085. Message.tests.cpp:<line number>: PASSED:
  9086. with message:
  9087. this is a success
  9088. -------------------------------------------------------------------------------
  9089. SUCCEED does not require an argument
  9090. -------------------------------------------------------------------------------
  9091. Message.tests.cpp:<line number>
  9092. ...............................................................................
  9093. Message.tests.cpp:<line number>: PASSED:
  9094. -------------------------------------------------------------------------------
  9095. Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or
  9096. methods
  9097. Given: No operations precede me
  9098. -------------------------------------------------------------------------------
  9099. BDD.tests.cpp:<line number>
  9100. ...............................................................................
  9101. BDD.tests.cpp:<line number>: PASSED:
  9102. REQUIRE( before == 0 )
  9103. with expansion:
  9104. 0 == 0
  9105. -------------------------------------------------------------------------------
  9106. Scenario: BDD tests requiring Fixtures to provide commonly-accessed data or
  9107. methods
  9108. Given: No operations precede me
  9109. When: We get the count
  9110. Then: Subsequently values are higher
  9111. -------------------------------------------------------------------------------
  9112. BDD.tests.cpp:<line number>
  9113. ...............................................................................
  9114. BDD.tests.cpp:<line number>: PASSED:
  9115. REQUIRE( after > before )
  9116. with expansion:
  9117. 1 > 0
  9118. -------------------------------------------------------------------------------
  9119. Scenario: Do that thing with the thing
  9120. Given: This stuff exists
  9121. And given: And some assumption
  9122. When: I do this
  9123. Then: it should do this
  9124. -------------------------------------------------------------------------------
  9125. BDD.tests.cpp:<line number>
  9126. ...............................................................................
  9127. BDD.tests.cpp:<line number>: PASSED:
  9128. REQUIRE( itDoesThis() )
  9129. with expansion:
  9130. true
  9131. -------------------------------------------------------------------------------
  9132. Scenario: Do that thing with the thing
  9133. Given: This stuff exists
  9134. And given: And some assumption
  9135. When: I do this
  9136. Then: it should do this
  9137. And: do that
  9138. -------------------------------------------------------------------------------
  9139. BDD.tests.cpp:<line number>
  9140. ...............................................................................
  9141. BDD.tests.cpp:<line number>: PASSED:
  9142. REQUIRE( itDoesThat() )
  9143. with expansion:
  9144. true
  9145. -------------------------------------------------------------------------------
  9146. Scenario: This is a really long scenario name to see how the list command deals
  9147. with wrapping
  9148. Given: A section name that is so long that it cannot fit in a single
  9149. console width
  9150. When: The test headers are printed as part of the normal running of the
  9151. scenario
  9152. Then: The, deliberately very long and overly verbose (you see what I did
  9153. there?) section names must wrap, along with an indent
  9154. -------------------------------------------------------------------------------
  9155. BDD.tests.cpp:<line number>
  9156. ...............................................................................
  9157. BDD.tests.cpp:<line number>: PASSED:
  9158. with message:
  9159. boo!
  9160. -------------------------------------------------------------------------------
  9161. Scenario: Vector resizing affects size and capacity
  9162. Given: an empty vector
  9163. -------------------------------------------------------------------------------
  9164. BDD.tests.cpp:<line number>
  9165. ...............................................................................
  9166. BDD.tests.cpp:<line number>: PASSED:
  9167. REQUIRE( v.size() == 0 )
  9168. with expansion:
  9169. 0 == 0
  9170. -------------------------------------------------------------------------------
  9171. Scenario: Vector resizing affects size and capacity
  9172. Given: an empty vector
  9173. When: it is made larger
  9174. Then: the size and capacity go up
  9175. -------------------------------------------------------------------------------
  9176. BDD.tests.cpp:<line number>
  9177. ...............................................................................
  9178. BDD.tests.cpp:<line number>: PASSED:
  9179. REQUIRE( v.size() == 10 )
  9180. with expansion:
  9181. 10 == 10
  9182. BDD.tests.cpp:<line number>: PASSED:
  9183. REQUIRE( v.capacity() >= 10 )
  9184. with expansion:
  9185. 10 >= 10
  9186. -------------------------------------------------------------------------------
  9187. Scenario: Vector resizing affects size and capacity
  9188. Given: an empty vector
  9189. When: it is made larger
  9190. Then: the size and capacity go up
  9191. And when: it is made smaller again
  9192. Then: the size goes down but the capacity stays the same
  9193. -------------------------------------------------------------------------------
  9194. BDD.tests.cpp:<line number>
  9195. ...............................................................................
  9196. BDD.tests.cpp:<line number>: PASSED:
  9197. REQUIRE( v.size() == 5 )
  9198. with expansion:
  9199. 5 == 5
  9200. BDD.tests.cpp:<line number>: PASSED:
  9201. REQUIRE( v.capacity() >= 10 )
  9202. with expansion:
  9203. 10 >= 10
  9204. -------------------------------------------------------------------------------
  9205. Scenario: Vector resizing affects size and capacity
  9206. Given: an empty vector
  9207. -------------------------------------------------------------------------------
  9208. BDD.tests.cpp:<line number>
  9209. ...............................................................................
  9210. BDD.tests.cpp:<line number>: PASSED:
  9211. REQUIRE( v.size() == 0 )
  9212. with expansion:
  9213. 0 == 0
  9214. -------------------------------------------------------------------------------
  9215. Scenario: Vector resizing affects size and capacity
  9216. Given: an empty vector
  9217. When: we reserve more space
  9218. Then: The capacity is increased but the size remains the same
  9219. -------------------------------------------------------------------------------
  9220. BDD.tests.cpp:<line number>
  9221. ...............................................................................
  9222. BDD.tests.cpp:<line number>: PASSED:
  9223. REQUIRE( v.capacity() >= 10 )
  9224. with expansion:
  9225. 10 >= 10
  9226. BDD.tests.cpp:<line number>: PASSED:
  9227. REQUIRE( v.size() == 0 )
  9228. with expansion:
  9229. 0 == 0
  9230. -------------------------------------------------------------------------------
  9231. Sends stuff to stdout and stderr
  9232. -------------------------------------------------------------------------------
  9233. Misc.tests.cpp:<line number>
  9234. ...............................................................................
  9235. No assertions in test case 'Sends stuff to stdout and stderr'
  9236. -------------------------------------------------------------------------------
  9237. Some simple comparisons between doubles
  9238. -------------------------------------------------------------------------------
  9239. Approx.tests.cpp:<line number>
  9240. ...............................................................................
  9241. Approx.tests.cpp:<line number>: PASSED:
  9242. REQUIRE( d == Approx( 1.23 ) )
  9243. with expansion:
  9244. 1.23 == Approx( 1.23 )
  9245. Approx.tests.cpp:<line number>: PASSED:
  9246. REQUIRE( d != Approx( 1.22 ) )
  9247. with expansion:
  9248. 1.23 != Approx( 1.22 )
  9249. Approx.tests.cpp:<line number>: PASSED:
  9250. REQUIRE( d != Approx( 1.24 ) )
  9251. with expansion:
  9252. 1.23 != Approx( 1.24 )
  9253. Approx.tests.cpp:<line number>: PASSED:
  9254. REQUIRE( d == 1.23_a )
  9255. with expansion:
  9256. 1.23 == Approx( 1.23 )
  9257. Approx.tests.cpp:<line number>: PASSED:
  9258. REQUIRE( d != 1.22_a )
  9259. with expansion:
  9260. 1.23 != Approx( 1.22 )
  9261. Approx.tests.cpp:<line number>: PASSED:
  9262. REQUIRE( Approx( d ) == 1.23 )
  9263. with expansion:
  9264. Approx( 1.23 ) == 1.23
  9265. Approx.tests.cpp:<line number>: PASSED:
  9266. REQUIRE( Approx( d ) != 1.22 )
  9267. with expansion:
  9268. Approx( 1.23 ) != 1.22
  9269. Approx.tests.cpp:<line number>: PASSED:
  9270. REQUIRE( Approx( d ) != 1.24 )
  9271. with expansion:
  9272. Approx( 1.23 ) != 1.24
  9273. -------------------------------------------------------------------------------
  9274. Standard output from all sections is reported
  9275. one
  9276. -------------------------------------------------------------------------------
  9277. Message.tests.cpp:<line number>
  9278. ...............................................................................
  9279. No assertions in section 'one'
  9280. -------------------------------------------------------------------------------
  9281. Standard output from all sections is reported
  9282. two
  9283. -------------------------------------------------------------------------------
  9284. Message.tests.cpp:<line number>
  9285. ...............................................................................
  9286. No assertions in section 'two'
  9287. -------------------------------------------------------------------------------
  9288. StartsWith string matcher
  9289. -------------------------------------------------------------------------------
  9290. Matchers.tests.cpp:<line number>
  9291. ...............................................................................
  9292. Matchers.tests.cpp:<line number>: FAILED:
  9293. CHECK_THAT( testStringForMatching(), StartsWith( "This String" ) )
  9294. with expansion:
  9295. "this string contains 'abc' as a substring" starts with: "This String"
  9296. Matchers.tests.cpp:<line number>: FAILED:
  9297. CHECK_THAT( testStringForMatching(), StartsWith( "string", Catch::CaseSensitive::No ) )
  9298. with expansion:
  9299. "this string contains 'abc' as a substring" starts with: "string" (case
  9300. insensitive)
  9301. -------------------------------------------------------------------------------
  9302. Static arrays are convertible to string
  9303. Single item
  9304. -------------------------------------------------------------------------------
  9305. ToStringGeneral.tests.cpp:<line number>
  9306. ...............................................................................
  9307. ToStringGeneral.tests.cpp:<line number>: PASSED:
  9308. REQUIRE( Catch::Detail::stringify(singular) == "{ 1 }" )
  9309. with expansion:
  9310. "{ 1 }" == "{ 1 }"
  9311. -------------------------------------------------------------------------------
  9312. Static arrays are convertible to string
  9313. Multiple
  9314. -------------------------------------------------------------------------------
  9315. ToStringGeneral.tests.cpp:<line number>
  9316. ...............................................................................
  9317. ToStringGeneral.tests.cpp:<line number>: PASSED:
  9318. REQUIRE( Catch::Detail::stringify(arr) == "{ 3, 2, 1 }" )
  9319. with expansion:
  9320. "{ 3, 2, 1 }" == "{ 3, 2, 1 }"
  9321. -------------------------------------------------------------------------------
  9322. Static arrays are convertible to string
  9323. Non-trivial inner items
  9324. -------------------------------------------------------------------------------
  9325. ToStringGeneral.tests.cpp:<line number>
  9326. ...............................................................................
  9327. ToStringGeneral.tests.cpp:<line number>: PASSED:
  9328. REQUIRE( Catch::Detail::stringify(arr) == R"({ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } })" )
  9329. with expansion:
  9330. "{ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } }"
  9331. ==
  9332. "{ { "1:1", "1:2", "1:3" }, { "2:1", "2:2" } }"
  9333. -------------------------------------------------------------------------------
  9334. String matchers
  9335. -------------------------------------------------------------------------------
  9336. Matchers.tests.cpp:<line number>
  9337. ...............................................................................
  9338. Matchers.tests.cpp:<line number>: PASSED:
  9339. REQUIRE_THAT( testStringForMatching(), ContainsSubstring( "string" ) )
  9340. with expansion:
  9341. "this string contains 'abc' as a substring" contains: "string"
  9342. Matchers.tests.cpp:<line number>: PASSED:
  9343. REQUIRE_THAT( testStringForMatching(), ContainsSubstring( "string", Catch::CaseSensitive::No ) )
  9344. with expansion:
  9345. "this string contains 'abc' as a substring" contains: "string" (case
  9346. insensitive)
  9347. Matchers.tests.cpp:<line number>: PASSED:
  9348. CHECK_THAT( testStringForMatching(), ContainsSubstring( "abc" ) )
  9349. with expansion:
  9350. "this string contains 'abc' as a substring" contains: "abc"
  9351. Matchers.tests.cpp:<line number>: PASSED:
  9352. CHECK_THAT( testStringForMatching(), ContainsSubstring( "aBC", Catch::CaseSensitive::No ) )
  9353. with expansion:
  9354. "this string contains 'abc' as a substring" contains: "abc" (case
  9355. insensitive)
  9356. Matchers.tests.cpp:<line number>: PASSED:
  9357. CHECK_THAT( testStringForMatching(), StartsWith( "this" ) )
  9358. with expansion:
  9359. "this string contains 'abc' as a substring" starts with: "this"
  9360. Matchers.tests.cpp:<line number>: PASSED:
  9361. CHECK_THAT( testStringForMatching(), StartsWith( "THIS", Catch::CaseSensitive::No ) )
  9362. with expansion:
  9363. "this string contains 'abc' as a substring" starts with: "this" (case
  9364. insensitive)
  9365. Matchers.tests.cpp:<line number>: PASSED:
  9366. CHECK_THAT( testStringForMatching(), EndsWith( "substring" ) )
  9367. with expansion:
  9368. "this string contains 'abc' as a substring" ends with: "substring"
  9369. Matchers.tests.cpp:<line number>: PASSED:
  9370. CHECK_THAT( testStringForMatching(), EndsWith( " SuBsTrInG", Catch::CaseSensitive::No ) )
  9371. with expansion:
  9372. "this string contains 'abc' as a substring" ends with: " substring" (case
  9373. insensitive)
  9374. -------------------------------------------------------------------------------
  9375. StringRef
  9376. Empty string
  9377. -------------------------------------------------------------------------------
  9378. String.tests.cpp:<line number>
  9379. ...............................................................................
  9380. String.tests.cpp:<line number>: PASSED:
  9381. REQUIRE( empty.empty() )
  9382. with expansion:
  9383. true
  9384. String.tests.cpp:<line number>: PASSED:
  9385. REQUIRE( empty.size() == 0 )
  9386. with expansion:
  9387. 0 == 0
  9388. String.tests.cpp:<line number>: PASSED:
  9389. REQUIRE( std::strcmp( empty.data(), "" ) == 0 )
  9390. with expansion:
  9391. 0 == 0
  9392. -------------------------------------------------------------------------------
  9393. StringRef
  9394. From string literal
  9395. -------------------------------------------------------------------------------
  9396. String.tests.cpp:<line number>
  9397. ...............................................................................
  9398. String.tests.cpp:<line number>: PASSED:
  9399. REQUIRE( s.empty() == false )
  9400. with expansion:
  9401. false == false
  9402. String.tests.cpp:<line number>: PASSED:
  9403. REQUIRE( s.size() == 5 )
  9404. with expansion:
  9405. 5 == 5
  9406. String.tests.cpp:<line number>: PASSED:
  9407. REQUIRE( std::strcmp( rawChars, "hello" ) == 0 )
  9408. with expansion:
  9409. 0 == 0
  9410. String.tests.cpp:<line number>: PASSED:
  9411. REQUIRE( s.data() == rawChars )
  9412. with expansion:
  9413. "hello" == "hello"
  9414. -------------------------------------------------------------------------------
  9415. StringRef
  9416. From sub-string
  9417. -------------------------------------------------------------------------------
  9418. String.tests.cpp:<line number>
  9419. ...............................................................................
  9420. String.tests.cpp:<line number>: PASSED:
  9421. REQUIRE( original == "original" )
  9422. String.tests.cpp:<line number>: PASSED:
  9423. REQUIRE_NOTHROW( original.data() )
  9424. -------------------------------------------------------------------------------
  9425. StringRef
  9426. Copy construction is shallow
  9427. -------------------------------------------------------------------------------
  9428. String.tests.cpp:<line number>
  9429. ...............................................................................
  9430. String.tests.cpp:<line number>: PASSED:
  9431. REQUIRE( original.begin() == copy.begin() )
  9432. with expansion:
  9433. "original string" == "original string"
  9434. -------------------------------------------------------------------------------
  9435. StringRef
  9436. Copy assignment is shallow
  9437. -------------------------------------------------------------------------------
  9438. String.tests.cpp:<line number>
  9439. ...............................................................................
  9440. String.tests.cpp:<line number>: PASSED:
  9441. REQUIRE( original.begin() == copy.begin() )
  9442. with expansion:
  9443. "original string" == "original string"
  9444. -------------------------------------------------------------------------------
  9445. StringRef
  9446. Substrings
  9447. zero-based substring
  9448. -------------------------------------------------------------------------------
  9449. String.tests.cpp:<line number>
  9450. ...............................................................................
  9451. String.tests.cpp:<line number>: PASSED:
  9452. REQUIRE( ss.empty() == false )
  9453. with expansion:
  9454. false == false
  9455. String.tests.cpp:<line number>: PASSED:
  9456. REQUIRE( ss.size() == 5 )
  9457. with expansion:
  9458. 5 == 5
  9459. String.tests.cpp:<line number>: PASSED:
  9460. REQUIRE( std::strncmp( ss.data(), "hello", 5 ) == 0 )
  9461. with expansion:
  9462. 0 == 0
  9463. String.tests.cpp:<line number>: PASSED:
  9464. REQUIRE( ss == "hello" )
  9465. with expansion:
  9466. hello == "hello"
  9467. -------------------------------------------------------------------------------
  9468. StringRef
  9469. Substrings
  9470. non-zero-based substring
  9471. -------------------------------------------------------------------------------
  9472. String.tests.cpp:<line number>
  9473. ...............................................................................
  9474. String.tests.cpp:<line number>: PASSED:
  9475. REQUIRE( ss.size() == 6 )
  9476. with expansion:
  9477. 6 == 6
  9478. String.tests.cpp:<line number>: PASSED:
  9479. REQUIRE( std::strcmp( ss.data(), "world!" ) == 0 )
  9480. with expansion:
  9481. 0 == 0
  9482. -------------------------------------------------------------------------------
  9483. StringRef
  9484. Substrings
  9485. Pointer values of full refs should match
  9486. -------------------------------------------------------------------------------
  9487. String.tests.cpp:<line number>
  9488. ...............................................................................
  9489. String.tests.cpp:<line number>: PASSED:
  9490. REQUIRE( s.data() == s2.data() )
  9491. with expansion:
  9492. "hello world!" == "hello world!"
  9493. -------------------------------------------------------------------------------
  9494. StringRef
  9495. Substrings
  9496. Pointer values of substring refs should also match
  9497. -------------------------------------------------------------------------------
  9498. String.tests.cpp:<line number>
  9499. ...............................................................................
  9500. String.tests.cpp:<line number>: PASSED:
  9501. REQUIRE( s.data() == ss.data() )
  9502. with expansion:
  9503. "hello world!" == "hello world!"
  9504. -------------------------------------------------------------------------------
  9505. StringRef
  9506. Substrings
  9507. Past the end substring
  9508. -------------------------------------------------------------------------------
  9509. String.tests.cpp:<line number>
  9510. ...............................................................................
  9511. String.tests.cpp:<line number>: PASSED:
  9512. REQUIRE( s.substr(s.size() + 1, 123).empty() )
  9513. with expansion:
  9514. true
  9515. -------------------------------------------------------------------------------
  9516. StringRef
  9517. Substrings
  9518. Substring off the end are trimmed
  9519. -------------------------------------------------------------------------------
  9520. String.tests.cpp:<line number>
  9521. ...............................................................................
  9522. String.tests.cpp:<line number>: PASSED:
  9523. REQUIRE( std::strcmp(ss.data(), "world!") == 0 )
  9524. with expansion:
  9525. 0 == 0
  9526. -------------------------------------------------------------------------------
  9527. StringRef
  9528. Substrings
  9529. substring start after the end is empty
  9530. -------------------------------------------------------------------------------
  9531. String.tests.cpp:<line number>
  9532. ...............................................................................
  9533. String.tests.cpp:<line number>: PASSED:
  9534. REQUIRE( s.substr(1'000'000, 1).empty() )
  9535. with expansion:
  9536. true
  9537. -------------------------------------------------------------------------------
  9538. StringRef
  9539. Comparisons are deep
  9540. -------------------------------------------------------------------------------
  9541. String.tests.cpp:<line number>
  9542. ...............................................................................
  9543. String.tests.cpp:<line number>: PASSED:
  9544. CHECK( reinterpret_cast<char*>(buffer1) != reinterpret_cast<char*>(buffer2) )
  9545. with expansion:
  9546. "Hello" != "Hello"
  9547. String.tests.cpp:<line number>: PASSED:
  9548. REQUIRE( left == right )
  9549. with expansion:
  9550. Hello == Hello
  9551. String.tests.cpp:<line number>: PASSED:
  9552. REQUIRE( left != left.substr(0, 3) )
  9553. with expansion:
  9554. Hello != Hel
  9555. -------------------------------------------------------------------------------
  9556. StringRef
  9557. from std::string
  9558. implicitly constructed
  9559. -------------------------------------------------------------------------------
  9560. String.tests.cpp:<line number>
  9561. ...............................................................................
  9562. String.tests.cpp:<line number>: PASSED:
  9563. REQUIRE( sr == "a standard string" )
  9564. with expansion:
  9565. a standard string == "a standard string"
  9566. String.tests.cpp:<line number>: PASSED:
  9567. REQUIRE( sr.size() == stdStr.size() )
  9568. with expansion:
  9569. 17 == 17
  9570. -------------------------------------------------------------------------------
  9571. StringRef
  9572. from std::string
  9573. explicitly constructed
  9574. -------------------------------------------------------------------------------
  9575. String.tests.cpp:<line number>
  9576. ...............................................................................
  9577. String.tests.cpp:<line number>: PASSED:
  9578. REQUIRE( sr == "a standard string" )
  9579. with expansion:
  9580. a standard string == "a standard string"
  9581. String.tests.cpp:<line number>: PASSED:
  9582. REQUIRE( sr.size() == stdStr.size() )
  9583. with expansion:
  9584. 17 == 17
  9585. -------------------------------------------------------------------------------
  9586. StringRef
  9587. from std::string
  9588. assigned
  9589. -------------------------------------------------------------------------------
  9590. String.tests.cpp:<line number>
  9591. ...............................................................................
  9592. String.tests.cpp:<line number>: PASSED:
  9593. REQUIRE( sr == "a standard string" )
  9594. with expansion:
  9595. a standard string == "a standard string"
  9596. String.tests.cpp:<line number>: PASSED:
  9597. REQUIRE( sr.size() == stdStr.size() )
  9598. with expansion:
  9599. 17 == 17
  9600. -------------------------------------------------------------------------------
  9601. StringRef
  9602. to std::string
  9603. explicitly constructed
  9604. -------------------------------------------------------------------------------
  9605. String.tests.cpp:<line number>
  9606. ...............................................................................
  9607. String.tests.cpp:<line number>: PASSED:
  9608. REQUIRE( stdStr == "a stringref" )
  9609. with expansion:
  9610. "a stringref" == "a stringref"
  9611. String.tests.cpp:<line number>: PASSED:
  9612. REQUIRE( stdStr.size() == sr.size() )
  9613. with expansion:
  9614. 11 == 11
  9615. -------------------------------------------------------------------------------
  9616. StringRef
  9617. to std::string
  9618. assigned
  9619. -------------------------------------------------------------------------------
  9620. String.tests.cpp:<line number>
  9621. ...............................................................................
  9622. String.tests.cpp:<line number>: PASSED:
  9623. REQUIRE( stdStr == "a stringref" )
  9624. with expansion:
  9625. "a stringref" == "a stringref"
  9626. String.tests.cpp:<line number>: PASSED:
  9627. REQUIRE( stdStr.size() == sr.size() )
  9628. with expansion:
  9629. 11 == 11
  9630. -------------------------------------------------------------------------------
  9631. StringRef
  9632. std::string += StringRef
  9633. -------------------------------------------------------------------------------
  9634. String.tests.cpp:<line number>
  9635. ...............................................................................
  9636. String.tests.cpp:<line number>: PASSED:
  9637. REQUIRE( lhs == "some string += the stringref contents" )
  9638. with expansion:
  9639. "some string += the stringref contents"
  9640. ==
  9641. "some string += the stringref contents"
  9642. -------------------------------------------------------------------------------
  9643. StringRef
  9644. StringRef + StringRef
  9645. -------------------------------------------------------------------------------
  9646. String.tests.cpp:<line number>
  9647. ...............................................................................
  9648. String.tests.cpp:<line number>: PASSED:
  9649. REQUIRE( together == "abrakadabra" )
  9650. with expansion:
  9651. "abrakadabra" == "abrakadabra"
  9652. -------------------------------------------------------------------------------
  9653. StringRef at compilation time
  9654. Simple constructors
  9655. -------------------------------------------------------------------------------
  9656. String.tests.cpp:<line number>
  9657. ...............................................................................
  9658. String.tests.cpp:<line number>: PASSED:
  9659. with message:
  9660. empty.size() == 0
  9661. String.tests.cpp:<line number>: PASSED:
  9662. with message:
  9663. empty.begin() == empty.end()
  9664. String.tests.cpp:<line number>: PASSED:
  9665. with message:
  9666. stringref.size() == 3
  9667. String.tests.cpp:<line number>: PASSED:
  9668. with message:
  9669. stringref.data() == abc
  9670. String.tests.cpp:<line number>: PASSED:
  9671. with message:
  9672. stringref.begin() == abc
  9673. String.tests.cpp:<line number>: PASSED:
  9674. with message:
  9675. stringref.begin() != stringref.end()
  9676. String.tests.cpp:<line number>: PASSED:
  9677. with message:
  9678. stringref.substr(10, 0).empty()
  9679. String.tests.cpp:<line number>: PASSED:
  9680. with message:
  9681. stringref.substr(2, 1).data() == abc + 2
  9682. String.tests.cpp:<line number>: PASSED:
  9683. with message:
  9684. stringref[1] == 'b'
  9685. String.tests.cpp:<line number>: PASSED:
  9686. with message:
  9687. shortened.size() == 2
  9688. String.tests.cpp:<line number>: PASSED:
  9689. with message:
  9690. shortened.data() == abc
  9691. String.tests.cpp:<line number>: PASSED:
  9692. with message:
  9693. shortened.begin() != shortened.end()
  9694. -------------------------------------------------------------------------------
  9695. StringRef at compilation time
  9696. UDL construction
  9697. -------------------------------------------------------------------------------
  9698. String.tests.cpp:<line number>
  9699. ...............................................................................
  9700. String.tests.cpp:<line number>: PASSED:
  9701. with message:
  9702. !(sr1.empty())
  9703. String.tests.cpp:<line number>: PASSED:
  9704. with message:
  9705. sr1.size() == 3
  9706. String.tests.cpp:<line number>: PASSED:
  9707. with message:
  9708. sr2.empty()
  9709. String.tests.cpp:<line number>: PASSED:
  9710. with message:
  9711. sr2.size() == 0
  9712. -------------------------------------------------------------------------------
  9713. Stringifying char arrays with statically known sizes - char
  9714. -------------------------------------------------------------------------------
  9715. ToString.tests.cpp:<line number>
  9716. ...............................................................................
  9717. ToString.tests.cpp:<line number>: PASSED:
  9718. CHECK( ::Catch::Detail::stringify( with_null_terminator ) == R"("abc")"s )
  9719. with expansion:
  9720. ""abc"" == ""abc""
  9721. ToString.tests.cpp:<line number>: PASSED:
  9722. CHECK( ::Catch::Detail::stringify( no_null_terminator ) == R"("abc")"s )
  9723. with expansion:
  9724. ""abc"" == ""abc""
  9725. -------------------------------------------------------------------------------
  9726. Stringifying char arrays with statically known sizes - signed char
  9727. -------------------------------------------------------------------------------
  9728. ToString.tests.cpp:<line number>
  9729. ...............................................................................
  9730. ToString.tests.cpp:<line number>: PASSED:
  9731. CHECK( ::Catch::Detail::stringify( with_null_terminator ) == R"("abc")"s )
  9732. with expansion:
  9733. ""abc"" == ""abc""
  9734. ToString.tests.cpp:<line number>: PASSED:
  9735. CHECK( ::Catch::Detail::stringify( no_null_terminator ) == R"("abc")"s )
  9736. with expansion:
  9737. ""abc"" == ""abc""
  9738. -------------------------------------------------------------------------------
  9739. Stringifying char arrays with statically known sizes - unsigned char
  9740. -------------------------------------------------------------------------------
  9741. ToString.tests.cpp:<line number>
  9742. ...............................................................................
  9743. ToString.tests.cpp:<line number>: PASSED:
  9744. CHECK( ::Catch::Detail::stringify( with_null_terminator ) == R"("abc")"s )
  9745. with expansion:
  9746. ""abc"" == ""abc""
  9747. ToString.tests.cpp:<line number>: PASSED:
  9748. CHECK( ::Catch::Detail::stringify( no_null_terminator ) == R"("abc")"s )
  9749. with expansion:
  9750. ""abc"" == ""abc""
  9751. -------------------------------------------------------------------------------
  9752. Stringifying std::chrono::duration helpers
  9753. -------------------------------------------------------------------------------
  9754. ToStringChrono.tests.cpp:<line number>
  9755. ...............................................................................
  9756. ToStringChrono.tests.cpp:<line number>: PASSED:
  9757. REQUIRE( minute == seconds )
  9758. with expansion:
  9759. 1 m == 60 s
  9760. ToStringChrono.tests.cpp:<line number>: PASSED:
  9761. REQUIRE( hour != seconds )
  9762. with expansion:
  9763. 1 h != 60 s
  9764. ToStringChrono.tests.cpp:<line number>: PASSED:
  9765. REQUIRE( micro != milli )
  9766. with expansion:
  9767. 1 us != 1 ms
  9768. ToStringChrono.tests.cpp:<line number>: PASSED:
  9769. REQUIRE( nano != micro )
  9770. with expansion:
  9771. 1 ns != 1 us
  9772. -------------------------------------------------------------------------------
  9773. Stringifying std::chrono::duration with weird ratios
  9774. -------------------------------------------------------------------------------
  9775. ToStringChrono.tests.cpp:<line number>
  9776. ...............................................................................
  9777. ToStringChrono.tests.cpp:<line number>: PASSED:
  9778. REQUIRE( half_minute != femto_second )
  9779. with expansion:
  9780. 1 [30/1]s != 1 fs
  9781. ToStringChrono.tests.cpp:<line number>: PASSED:
  9782. REQUIRE( pico_second != atto_second )
  9783. with expansion:
  9784. 1 ps != 1 as
  9785. -------------------------------------------------------------------------------
  9786. Stringifying std::chrono::time_point<system_clock>
  9787. -------------------------------------------------------------------------------
  9788. ToStringChrono.tests.cpp:<line number>
  9789. ...............................................................................
  9790. ToStringChrono.tests.cpp:<line number>: PASSED:
  9791. REQUIRE( now != later )
  9792. with expansion:
  9793. {iso8601-timestamp}
  9794. !=
  9795. {iso8601-timestamp}
  9796. -------------------------------------------------------------------------------
  9797. Tabs and newlines show in output
  9798. -------------------------------------------------------------------------------
  9799. Misc.tests.cpp:<line number>
  9800. ...............................................................................
  9801. Misc.tests.cpp:<line number>: FAILED:
  9802. CHECK( s1 == s2 )
  9803. with expansion:
  9804. "if ($b == 10) {
  9805. $a = 20;
  9806. }"
  9807. ==
  9808. "if ($b == 10) {
  9809. $a = 20;
  9810. }
  9811. "
  9812. -------------------------------------------------------------------------------
  9813. Tag alias can be registered against tag patterns
  9814. The same tag alias can only be registered once
  9815. -------------------------------------------------------------------------------
  9816. Tag.tests.cpp:<line number>
  9817. ...............................................................................
  9818. Tag.tests.cpp:<line number>: PASSED:
  9819. CHECK_THAT( what, ContainsSubstring( "[@zzz]" ) )
  9820. with expansion:
  9821. "error: tag alias, '[@zzz]' already registered.
  9822. First seen at: file:2
  9823. Redefined at: file:10" contains: "[@zzz]"
  9824. Tag.tests.cpp:<line number>: PASSED:
  9825. CHECK_THAT( what, ContainsSubstring( "file" ) )
  9826. with expansion:
  9827. "error: tag alias, '[@zzz]' already registered.
  9828. First seen at: file:2
  9829. Redefined at: file:10" contains: "file"
  9830. Tag.tests.cpp:<line number>: PASSED:
  9831. CHECK_THAT( what, ContainsSubstring( "2" ) )
  9832. with expansion:
  9833. "error: tag alias, '[@zzz]' already registered.
  9834. First seen at: file:2
  9835. Redefined at: file:10" contains: "2"
  9836. Tag.tests.cpp:<line number>: PASSED:
  9837. CHECK_THAT( what, ContainsSubstring( "10" ) )
  9838. with expansion:
  9839. "error: tag alias, '[@zzz]' already registered.
  9840. First seen at: file:2
  9841. Redefined at: file:10" contains: "10"
  9842. -------------------------------------------------------------------------------
  9843. Tag alias can be registered against tag patterns
  9844. Tag aliases must be of the form [@name]
  9845. -------------------------------------------------------------------------------
  9846. Tag.tests.cpp:<line number>
  9847. ...............................................................................
  9848. Tag.tests.cpp:<line number>: PASSED:
  9849. CHECK_THROWS( registry.add( "[no ampersat]", "", Catch::SourceLineInfo( "file", 3 ) ) )
  9850. Tag.tests.cpp:<line number>: PASSED:
  9851. CHECK_THROWS( registry.add( "[the @ is not at the start]", "", Catch::SourceLineInfo( "file", 3 ) ) )
  9852. Tag.tests.cpp:<line number>: PASSED:
  9853. CHECK_THROWS( registry.add( "@no square bracket at start]", "", Catch::SourceLineInfo( "file", 3 ) ) )
  9854. Tag.tests.cpp:<line number>: PASSED:
  9855. CHECK_THROWS( registry.add( "[@no square bracket at end", "", Catch::SourceLineInfo( "file", 3 ) ) )
  9856. -------------------------------------------------------------------------------
  9857. Tags with spaces and non-alphanumerical characters are accepted
  9858. -------------------------------------------------------------------------------
  9859. Tag.tests.cpp:<line number>
  9860. ...............................................................................
  9861. Tag.tests.cpp:<line number>: PASSED:
  9862. REQUIRE( testCase.tags.size() == 2 )
  9863. with expansion:
  9864. 2 == 2
  9865. Tag.tests.cpp:<line number>: PASSED:
  9866. REQUIRE_THAT( testCase.tags, VectorContains( Tag( "tag with spaces" ) ) && VectorContains( Tag( "I said \"good day\" sir!"_catch_sr ) ) )
  9867. with expansion:
  9868. { {?}, {?} } ( Contains: {?} and Contains: {?} )
  9869. -------------------------------------------------------------------------------
  9870. Template test case method with test types specified inside std::tuple - MyTypes
  9871. - 0
  9872. -------------------------------------------------------------------------------
  9873. Class.tests.cpp:<line number>
  9874. ...............................................................................
  9875. Class.tests.cpp:<line number>: PASSED:
  9876. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  9877. with expansion:
  9878. 1 == 1
  9879. -------------------------------------------------------------------------------
  9880. Template test case method with test types specified inside std::tuple - MyTypes
  9881. - 1
  9882. -------------------------------------------------------------------------------
  9883. Class.tests.cpp:<line number>
  9884. ...............................................................................
  9885. Class.tests.cpp:<line number>: PASSED:
  9886. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  9887. with expansion:
  9888. 1 == 1
  9889. -------------------------------------------------------------------------------
  9890. Template test case method with test types specified inside std::tuple - MyTypes
  9891. - 2
  9892. -------------------------------------------------------------------------------
  9893. Class.tests.cpp:<line number>
  9894. ...............................................................................
  9895. Class.tests.cpp:<line number>: PASSED:
  9896. REQUIRE( Template_Fixture<TestType>::m_a == 1 )
  9897. with expansion:
  9898. 1.0 == 1
  9899. -------------------------------------------------------------------------------
  9900. Template test case with test types specified inside non-copyable and non-
  9901. movable std::tuple - NonCopyableAndNonMovableTypes - 0
  9902. -------------------------------------------------------------------------------
  9903. Misc.tests.cpp:<line number>
  9904. ...............................................................................
  9905. Misc.tests.cpp:<line number>: PASSED:
  9906. REQUIRE( sizeof(TestType) > 0 )
  9907. with expansion:
  9908. 1 > 0
  9909. -------------------------------------------------------------------------------
  9910. Template test case with test types specified inside non-copyable and non-
  9911. movable std::tuple - NonCopyableAndNonMovableTypes - 1
  9912. -------------------------------------------------------------------------------
  9913. Misc.tests.cpp:<line number>
  9914. ...............................................................................
  9915. Misc.tests.cpp:<line number>: PASSED:
  9916. REQUIRE( sizeof(TestType) > 0 )
  9917. with expansion:
  9918. 4 > 0
  9919. -------------------------------------------------------------------------------
  9920. Template test case with test types specified inside non-default-constructible
  9921. std::tuple - MyNonDefaultConstructibleTypes - 0
  9922. -------------------------------------------------------------------------------
  9923. Misc.tests.cpp:<line number>
  9924. ...............................................................................
  9925. Misc.tests.cpp:<line number>: PASSED:
  9926. REQUIRE( sizeof(TestType) > 0 )
  9927. with expansion:
  9928. 1 > 0
  9929. -------------------------------------------------------------------------------
  9930. Template test case with test types specified inside non-default-constructible
  9931. std::tuple - MyNonDefaultConstructibleTypes - 1
  9932. -------------------------------------------------------------------------------
  9933. Misc.tests.cpp:<line number>
  9934. ...............................................................................
  9935. Misc.tests.cpp:<line number>: PASSED:
  9936. REQUIRE( sizeof(TestType) > 0 )
  9937. with expansion:
  9938. 4 > 0
  9939. -------------------------------------------------------------------------------
  9940. Template test case with test types specified inside std::tuple - MyTypes - 0
  9941. -------------------------------------------------------------------------------
  9942. Misc.tests.cpp:<line number>
  9943. ...............................................................................
  9944. Misc.tests.cpp:<line number>: PASSED:
  9945. REQUIRE( sizeof(TestType) > 0 )
  9946. with expansion:
  9947. 4 > 0
  9948. -------------------------------------------------------------------------------
  9949. Template test case with test types specified inside std::tuple - MyTypes - 1
  9950. -------------------------------------------------------------------------------
  9951. Misc.tests.cpp:<line number>
  9952. ...............................................................................
  9953. Misc.tests.cpp:<line number>: PASSED:
  9954. REQUIRE( sizeof(TestType) > 0 )
  9955. with expansion:
  9956. 1 > 0
  9957. -------------------------------------------------------------------------------
  9958. Template test case with test types specified inside std::tuple - MyTypes - 2
  9959. -------------------------------------------------------------------------------
  9960. Misc.tests.cpp:<line number>
  9961. ...............................................................................
  9962. Misc.tests.cpp:<line number>: PASSED:
  9963. REQUIRE( sizeof(TestType) > 0 )
  9964. with expansion:
  9965. 4 > 0
  9966. -------------------------------------------------------------------------------
  9967. TemplateTest: vectors can be sized and resized - float
  9968. -------------------------------------------------------------------------------
  9969. Misc.tests.cpp:<line number>
  9970. ...............................................................................
  9971. Misc.tests.cpp:<line number>: PASSED:
  9972. REQUIRE( v.size() == 5 )
  9973. with expansion:
  9974. 5 == 5
  9975. Misc.tests.cpp:<line number>: PASSED:
  9976. REQUIRE( v.capacity() >= 5 )
  9977. with expansion:
  9978. 5 >= 5
  9979. -------------------------------------------------------------------------------
  9980. TemplateTest: vectors can be sized and resized - float
  9981. resizing bigger changes size and capacity
  9982. -------------------------------------------------------------------------------
  9983. Misc.tests.cpp:<line number>
  9984. ...............................................................................
  9985. Misc.tests.cpp:<line number>: PASSED:
  9986. REQUIRE( v.size() == 10 )
  9987. with expansion:
  9988. 10 == 10
  9989. Misc.tests.cpp:<line number>: PASSED:
  9990. REQUIRE( v.capacity() >= 10 )
  9991. with expansion:
  9992. 10 >= 10
  9993. -------------------------------------------------------------------------------
  9994. TemplateTest: vectors can be sized and resized - float
  9995. -------------------------------------------------------------------------------
  9996. Misc.tests.cpp:<line number>
  9997. ...............................................................................
  9998. Misc.tests.cpp:<line number>: PASSED:
  9999. REQUIRE( v.size() == 5 )
  10000. with expansion:
  10001. 5 == 5
  10002. Misc.tests.cpp:<line number>: PASSED:
  10003. REQUIRE( v.capacity() >= 5 )
  10004. with expansion:
  10005. 5 >= 5
  10006. -------------------------------------------------------------------------------
  10007. TemplateTest: vectors can be sized and resized - float
  10008. resizing smaller changes size but not capacity
  10009. -------------------------------------------------------------------------------
  10010. Misc.tests.cpp:<line number>
  10011. ...............................................................................
  10012. Misc.tests.cpp:<line number>: PASSED:
  10013. REQUIRE( v.size() == 0 )
  10014. with expansion:
  10015. 0 == 0
  10016. Misc.tests.cpp:<line number>: PASSED:
  10017. REQUIRE( v.capacity() >= 5 )
  10018. with expansion:
  10019. 5 >= 5
  10020. -------------------------------------------------------------------------------
  10021. TemplateTest: vectors can be sized and resized - float
  10022. resizing smaller changes size but not capacity
  10023. We can use the 'swap trick' to reset the capacity
  10024. -------------------------------------------------------------------------------
  10025. Misc.tests.cpp:<line number>
  10026. ...............................................................................
  10027. Misc.tests.cpp:<line number>: PASSED:
  10028. REQUIRE( v.capacity() == 0 )
  10029. with expansion:
  10030. 0 == 0
  10031. -------------------------------------------------------------------------------
  10032. TemplateTest: vectors can be sized and resized - float
  10033. -------------------------------------------------------------------------------
  10034. Misc.tests.cpp:<line number>
  10035. ...............................................................................
  10036. Misc.tests.cpp:<line number>: PASSED:
  10037. REQUIRE( v.size() == 5 )
  10038. with expansion:
  10039. 5 == 5
  10040. Misc.tests.cpp:<line number>: PASSED:
  10041. REQUIRE( v.capacity() >= 5 )
  10042. with expansion:
  10043. 5 >= 5
  10044. -------------------------------------------------------------------------------
  10045. TemplateTest: vectors can be sized and resized - float
  10046. reserving bigger changes capacity but not size
  10047. -------------------------------------------------------------------------------
  10048. Misc.tests.cpp:<line number>
  10049. ...............................................................................
  10050. Misc.tests.cpp:<line number>: PASSED:
  10051. REQUIRE( v.size() == 5 )
  10052. with expansion:
  10053. 5 == 5
  10054. Misc.tests.cpp:<line number>: PASSED:
  10055. REQUIRE( v.capacity() >= 10 )
  10056. with expansion:
  10057. 10 >= 10
  10058. -------------------------------------------------------------------------------
  10059. TemplateTest: vectors can be sized and resized - float
  10060. -------------------------------------------------------------------------------
  10061. Misc.tests.cpp:<line number>
  10062. ...............................................................................
  10063. Misc.tests.cpp:<line number>: PASSED:
  10064. REQUIRE( v.size() == 5 )
  10065. with expansion:
  10066. 5 == 5
  10067. Misc.tests.cpp:<line number>: PASSED:
  10068. REQUIRE( v.capacity() >= 5 )
  10069. with expansion:
  10070. 5 >= 5
  10071. -------------------------------------------------------------------------------
  10072. TemplateTest: vectors can be sized and resized - float
  10073. reserving smaller does not change size or capacity
  10074. -------------------------------------------------------------------------------
  10075. Misc.tests.cpp:<line number>
  10076. ...............................................................................
  10077. Misc.tests.cpp:<line number>: PASSED:
  10078. REQUIRE( v.size() == 5 )
  10079. with expansion:
  10080. 5 == 5
  10081. Misc.tests.cpp:<line number>: PASSED:
  10082. REQUIRE( v.capacity() >= 5 )
  10083. with expansion:
  10084. 5 >= 5
  10085. -------------------------------------------------------------------------------
  10086. TemplateTest: vectors can be sized and resized - int
  10087. -------------------------------------------------------------------------------
  10088. Misc.tests.cpp:<line number>
  10089. ...............................................................................
  10090. Misc.tests.cpp:<line number>: PASSED:
  10091. REQUIRE( v.size() == 5 )
  10092. with expansion:
  10093. 5 == 5
  10094. Misc.tests.cpp:<line number>: PASSED:
  10095. REQUIRE( v.capacity() >= 5 )
  10096. with expansion:
  10097. 5 >= 5
  10098. -------------------------------------------------------------------------------
  10099. TemplateTest: vectors can be sized and resized - int
  10100. resizing bigger changes size and capacity
  10101. -------------------------------------------------------------------------------
  10102. Misc.tests.cpp:<line number>
  10103. ...............................................................................
  10104. Misc.tests.cpp:<line number>: PASSED:
  10105. REQUIRE( v.size() == 10 )
  10106. with expansion:
  10107. 10 == 10
  10108. Misc.tests.cpp:<line number>: PASSED:
  10109. REQUIRE( v.capacity() >= 10 )
  10110. with expansion:
  10111. 10 >= 10
  10112. -------------------------------------------------------------------------------
  10113. TemplateTest: vectors can be sized and resized - int
  10114. -------------------------------------------------------------------------------
  10115. Misc.tests.cpp:<line number>
  10116. ...............................................................................
  10117. Misc.tests.cpp:<line number>: PASSED:
  10118. REQUIRE( v.size() == 5 )
  10119. with expansion:
  10120. 5 == 5
  10121. Misc.tests.cpp:<line number>: PASSED:
  10122. REQUIRE( v.capacity() >= 5 )
  10123. with expansion:
  10124. 5 >= 5
  10125. -------------------------------------------------------------------------------
  10126. TemplateTest: vectors can be sized and resized - int
  10127. resizing smaller changes size but not capacity
  10128. -------------------------------------------------------------------------------
  10129. Misc.tests.cpp:<line number>
  10130. ...............................................................................
  10131. Misc.tests.cpp:<line number>: PASSED:
  10132. REQUIRE( v.size() == 0 )
  10133. with expansion:
  10134. 0 == 0
  10135. Misc.tests.cpp:<line number>: PASSED:
  10136. REQUIRE( v.capacity() >= 5 )
  10137. with expansion:
  10138. 5 >= 5
  10139. -------------------------------------------------------------------------------
  10140. TemplateTest: vectors can be sized and resized - int
  10141. resizing smaller changes size but not capacity
  10142. We can use the 'swap trick' to reset the capacity
  10143. -------------------------------------------------------------------------------
  10144. Misc.tests.cpp:<line number>
  10145. ...............................................................................
  10146. Misc.tests.cpp:<line number>: PASSED:
  10147. REQUIRE( v.capacity() == 0 )
  10148. with expansion:
  10149. 0 == 0
  10150. -------------------------------------------------------------------------------
  10151. TemplateTest: vectors can be sized and resized - int
  10152. -------------------------------------------------------------------------------
  10153. Misc.tests.cpp:<line number>
  10154. ...............................................................................
  10155. Misc.tests.cpp:<line number>: PASSED:
  10156. REQUIRE( v.size() == 5 )
  10157. with expansion:
  10158. 5 == 5
  10159. Misc.tests.cpp:<line number>: PASSED:
  10160. REQUIRE( v.capacity() >= 5 )
  10161. with expansion:
  10162. 5 >= 5
  10163. -------------------------------------------------------------------------------
  10164. TemplateTest: vectors can be sized and resized - int
  10165. reserving bigger changes capacity but not size
  10166. -------------------------------------------------------------------------------
  10167. Misc.tests.cpp:<line number>
  10168. ...............................................................................
  10169. Misc.tests.cpp:<line number>: PASSED:
  10170. REQUIRE( v.size() == 5 )
  10171. with expansion:
  10172. 5 == 5
  10173. Misc.tests.cpp:<line number>: PASSED:
  10174. REQUIRE( v.capacity() >= 10 )
  10175. with expansion:
  10176. 10 >= 10
  10177. -------------------------------------------------------------------------------
  10178. TemplateTest: vectors can be sized and resized - int
  10179. -------------------------------------------------------------------------------
  10180. Misc.tests.cpp:<line number>
  10181. ...............................................................................
  10182. Misc.tests.cpp:<line number>: PASSED:
  10183. REQUIRE( v.size() == 5 )
  10184. with expansion:
  10185. 5 == 5
  10186. Misc.tests.cpp:<line number>: PASSED:
  10187. REQUIRE( v.capacity() >= 5 )
  10188. with expansion:
  10189. 5 >= 5
  10190. -------------------------------------------------------------------------------
  10191. TemplateTest: vectors can be sized and resized - int
  10192. reserving smaller does not change size or capacity
  10193. -------------------------------------------------------------------------------
  10194. Misc.tests.cpp:<line number>
  10195. ...............................................................................
  10196. Misc.tests.cpp:<line number>: PASSED:
  10197. REQUIRE( v.size() == 5 )
  10198. with expansion:
  10199. 5 == 5
  10200. Misc.tests.cpp:<line number>: PASSED:
  10201. REQUIRE( v.capacity() >= 5 )
  10202. with expansion:
  10203. 5 >= 5
  10204. -------------------------------------------------------------------------------
  10205. TemplateTest: vectors can be sized and resized - std::string
  10206. -------------------------------------------------------------------------------
  10207. Misc.tests.cpp:<line number>
  10208. ...............................................................................
  10209. Misc.tests.cpp:<line number>: PASSED:
  10210. REQUIRE( v.size() == 5 )
  10211. with expansion:
  10212. 5 == 5
  10213. Misc.tests.cpp:<line number>: PASSED:
  10214. REQUIRE( v.capacity() >= 5 )
  10215. with expansion:
  10216. 5 >= 5
  10217. -------------------------------------------------------------------------------
  10218. TemplateTest: vectors can be sized and resized - std::string
  10219. resizing bigger changes size and capacity
  10220. -------------------------------------------------------------------------------
  10221. Misc.tests.cpp:<line number>
  10222. ...............................................................................
  10223. Misc.tests.cpp:<line number>: PASSED:
  10224. REQUIRE( v.size() == 10 )
  10225. with expansion:
  10226. 10 == 10
  10227. Misc.tests.cpp:<line number>: PASSED:
  10228. REQUIRE( v.capacity() >= 10 )
  10229. with expansion:
  10230. 10 >= 10
  10231. -------------------------------------------------------------------------------
  10232. TemplateTest: vectors can be sized and resized - std::string
  10233. -------------------------------------------------------------------------------
  10234. Misc.tests.cpp:<line number>
  10235. ...............................................................................
  10236. Misc.tests.cpp:<line number>: PASSED:
  10237. REQUIRE( v.size() == 5 )
  10238. with expansion:
  10239. 5 == 5
  10240. Misc.tests.cpp:<line number>: PASSED:
  10241. REQUIRE( v.capacity() >= 5 )
  10242. with expansion:
  10243. 5 >= 5
  10244. -------------------------------------------------------------------------------
  10245. TemplateTest: vectors can be sized and resized - std::string
  10246. resizing smaller changes size but not capacity
  10247. -------------------------------------------------------------------------------
  10248. Misc.tests.cpp:<line number>
  10249. ...............................................................................
  10250. Misc.tests.cpp:<line number>: PASSED:
  10251. REQUIRE( v.size() == 0 )
  10252. with expansion:
  10253. 0 == 0
  10254. Misc.tests.cpp:<line number>: PASSED:
  10255. REQUIRE( v.capacity() >= 5 )
  10256. with expansion:
  10257. 5 >= 5
  10258. -------------------------------------------------------------------------------
  10259. TemplateTest: vectors can be sized and resized - std::string
  10260. resizing smaller changes size but not capacity
  10261. We can use the 'swap trick' to reset the capacity
  10262. -------------------------------------------------------------------------------
  10263. Misc.tests.cpp:<line number>
  10264. ...............................................................................
  10265. Misc.tests.cpp:<line number>: PASSED:
  10266. REQUIRE( v.capacity() == 0 )
  10267. with expansion:
  10268. 0 == 0
  10269. -------------------------------------------------------------------------------
  10270. TemplateTest: vectors can be sized and resized - std::string
  10271. -------------------------------------------------------------------------------
  10272. Misc.tests.cpp:<line number>
  10273. ...............................................................................
  10274. Misc.tests.cpp:<line number>: PASSED:
  10275. REQUIRE( v.size() == 5 )
  10276. with expansion:
  10277. 5 == 5
  10278. Misc.tests.cpp:<line number>: PASSED:
  10279. REQUIRE( v.capacity() >= 5 )
  10280. with expansion:
  10281. 5 >= 5
  10282. -------------------------------------------------------------------------------
  10283. TemplateTest: vectors can be sized and resized - std::string
  10284. reserving bigger changes capacity but not size
  10285. -------------------------------------------------------------------------------
  10286. Misc.tests.cpp:<line number>
  10287. ...............................................................................
  10288. Misc.tests.cpp:<line number>: PASSED:
  10289. REQUIRE( v.size() == 5 )
  10290. with expansion:
  10291. 5 == 5
  10292. Misc.tests.cpp:<line number>: PASSED:
  10293. REQUIRE( v.capacity() >= 10 )
  10294. with expansion:
  10295. 10 >= 10
  10296. -------------------------------------------------------------------------------
  10297. TemplateTest: vectors can be sized and resized - std::string
  10298. -------------------------------------------------------------------------------
  10299. Misc.tests.cpp:<line number>
  10300. ...............................................................................
  10301. Misc.tests.cpp:<line number>: PASSED:
  10302. REQUIRE( v.size() == 5 )
  10303. with expansion:
  10304. 5 == 5
  10305. Misc.tests.cpp:<line number>: PASSED:
  10306. REQUIRE( v.capacity() >= 5 )
  10307. with expansion:
  10308. 5 >= 5
  10309. -------------------------------------------------------------------------------
  10310. TemplateTest: vectors can be sized and resized - std::string
  10311. reserving smaller does not change size or capacity
  10312. -------------------------------------------------------------------------------
  10313. Misc.tests.cpp:<line number>
  10314. ...............................................................................
  10315. Misc.tests.cpp:<line number>: PASSED:
  10316. REQUIRE( v.size() == 5 )
  10317. with expansion:
  10318. 5 == 5
  10319. Misc.tests.cpp:<line number>: PASSED:
  10320. REQUIRE( v.capacity() >= 5 )
  10321. with expansion:
  10322. 5 >= 5
  10323. -------------------------------------------------------------------------------
  10324. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10325. -------------------------------------------------------------------------------
  10326. Misc.tests.cpp:<line number>
  10327. ...............................................................................
  10328. Misc.tests.cpp:<line number>: PASSED:
  10329. REQUIRE( v.size() == 5 )
  10330. with expansion:
  10331. 5 == 5
  10332. Misc.tests.cpp:<line number>: PASSED:
  10333. REQUIRE( v.capacity() >= 5 )
  10334. with expansion:
  10335. 5 >= 5
  10336. -------------------------------------------------------------------------------
  10337. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10338. resizing bigger changes size and capacity
  10339. -------------------------------------------------------------------------------
  10340. Misc.tests.cpp:<line number>
  10341. ...............................................................................
  10342. Misc.tests.cpp:<line number>: PASSED:
  10343. REQUIRE( v.size() == 10 )
  10344. with expansion:
  10345. 10 == 10
  10346. Misc.tests.cpp:<line number>: PASSED:
  10347. REQUIRE( v.capacity() >= 10 )
  10348. with expansion:
  10349. 10 >= 10
  10350. -------------------------------------------------------------------------------
  10351. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10352. -------------------------------------------------------------------------------
  10353. Misc.tests.cpp:<line number>
  10354. ...............................................................................
  10355. Misc.tests.cpp:<line number>: PASSED:
  10356. REQUIRE( v.size() == 5 )
  10357. with expansion:
  10358. 5 == 5
  10359. Misc.tests.cpp:<line number>: PASSED:
  10360. REQUIRE( v.capacity() >= 5 )
  10361. with expansion:
  10362. 5 >= 5
  10363. -------------------------------------------------------------------------------
  10364. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10365. resizing smaller changes size but not capacity
  10366. -------------------------------------------------------------------------------
  10367. Misc.tests.cpp:<line number>
  10368. ...............................................................................
  10369. Misc.tests.cpp:<line number>: PASSED:
  10370. REQUIRE( v.size() == 0 )
  10371. with expansion:
  10372. 0 == 0
  10373. Misc.tests.cpp:<line number>: PASSED:
  10374. REQUIRE( v.capacity() >= 5 )
  10375. with expansion:
  10376. 5 >= 5
  10377. -------------------------------------------------------------------------------
  10378. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10379. resizing smaller changes size but not capacity
  10380. We can use the 'swap trick' to reset the capacity
  10381. -------------------------------------------------------------------------------
  10382. Misc.tests.cpp:<line number>
  10383. ...............................................................................
  10384. Misc.tests.cpp:<line number>: PASSED:
  10385. REQUIRE( v.capacity() == 0 )
  10386. with expansion:
  10387. 0 == 0
  10388. -------------------------------------------------------------------------------
  10389. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10390. -------------------------------------------------------------------------------
  10391. Misc.tests.cpp:<line number>
  10392. ...............................................................................
  10393. Misc.tests.cpp:<line number>: PASSED:
  10394. REQUIRE( v.size() == 5 )
  10395. with expansion:
  10396. 5 == 5
  10397. Misc.tests.cpp:<line number>: PASSED:
  10398. REQUIRE( v.capacity() >= 5 )
  10399. with expansion:
  10400. 5 >= 5
  10401. -------------------------------------------------------------------------------
  10402. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10403. reserving bigger changes capacity but not size
  10404. -------------------------------------------------------------------------------
  10405. Misc.tests.cpp:<line number>
  10406. ...............................................................................
  10407. Misc.tests.cpp:<line number>: PASSED:
  10408. REQUIRE( v.size() == 5 )
  10409. with expansion:
  10410. 5 == 5
  10411. Misc.tests.cpp:<line number>: PASSED:
  10412. REQUIRE( v.capacity() >= 10 )
  10413. with expansion:
  10414. 10 >= 10
  10415. -------------------------------------------------------------------------------
  10416. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10417. -------------------------------------------------------------------------------
  10418. Misc.tests.cpp:<line number>
  10419. ...............................................................................
  10420. Misc.tests.cpp:<line number>: PASSED:
  10421. REQUIRE( v.size() == 5 )
  10422. with expansion:
  10423. 5 == 5
  10424. Misc.tests.cpp:<line number>: PASSED:
  10425. REQUIRE( v.capacity() >= 5 )
  10426. with expansion:
  10427. 5 >= 5
  10428. -------------------------------------------------------------------------------
  10429. TemplateTest: vectors can be sized and resized - std::tuple<int,float>
  10430. reserving smaller does not change size or capacity
  10431. -------------------------------------------------------------------------------
  10432. Misc.tests.cpp:<line number>
  10433. ...............................................................................
  10434. Misc.tests.cpp:<line number>: PASSED:
  10435. REQUIRE( v.size() == 5 )
  10436. with expansion:
  10437. 5 == 5
  10438. Misc.tests.cpp:<line number>: PASSED:
  10439. REQUIRE( v.capacity() >= 5 )
  10440. with expansion:
  10441. 5 >= 5
  10442. -------------------------------------------------------------------------------
  10443. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10444. -------------------------------------------------------------------------------
  10445. Misc.tests.cpp:<line number>
  10446. ...............................................................................
  10447. Misc.tests.cpp:<line number>: PASSED:
  10448. REQUIRE( v.size() == V )
  10449. with expansion:
  10450. 6 == 6
  10451. Misc.tests.cpp:<line number>: PASSED:
  10452. REQUIRE( v.capacity() >= V )
  10453. with expansion:
  10454. 6 >= 6
  10455. -------------------------------------------------------------------------------
  10456. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10457. resizing bigger changes size and capacity
  10458. -------------------------------------------------------------------------------
  10459. Misc.tests.cpp:<line number>
  10460. ...............................................................................
  10461. Misc.tests.cpp:<line number>: PASSED:
  10462. REQUIRE( v.size() == 2 * V )
  10463. with expansion:
  10464. 12 == 12
  10465. Misc.tests.cpp:<line number>: PASSED:
  10466. REQUIRE( v.capacity() >= 2 * V )
  10467. with expansion:
  10468. 12 >= 12
  10469. -------------------------------------------------------------------------------
  10470. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10471. -------------------------------------------------------------------------------
  10472. Misc.tests.cpp:<line number>
  10473. ...............................................................................
  10474. Misc.tests.cpp:<line number>: PASSED:
  10475. REQUIRE( v.size() == V )
  10476. with expansion:
  10477. 6 == 6
  10478. Misc.tests.cpp:<line number>: PASSED:
  10479. REQUIRE( v.capacity() >= V )
  10480. with expansion:
  10481. 6 >= 6
  10482. -------------------------------------------------------------------------------
  10483. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10484. resizing smaller changes size but not capacity
  10485. -------------------------------------------------------------------------------
  10486. Misc.tests.cpp:<line number>
  10487. ...............................................................................
  10488. Misc.tests.cpp:<line number>: PASSED:
  10489. REQUIRE( v.size() == 0 )
  10490. with expansion:
  10491. 0 == 0
  10492. Misc.tests.cpp:<line number>: PASSED:
  10493. REQUIRE( v.capacity() >= V )
  10494. with expansion:
  10495. 6 >= 6
  10496. -------------------------------------------------------------------------------
  10497. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10498. resizing smaller changes size but not capacity
  10499. We can use the 'swap trick' to reset the capacity
  10500. -------------------------------------------------------------------------------
  10501. Misc.tests.cpp:<line number>
  10502. ...............................................................................
  10503. Misc.tests.cpp:<line number>: PASSED:
  10504. REQUIRE( v.capacity() == 0 )
  10505. with expansion:
  10506. 0 == 0
  10507. -------------------------------------------------------------------------------
  10508. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10509. -------------------------------------------------------------------------------
  10510. Misc.tests.cpp:<line number>
  10511. ...............................................................................
  10512. Misc.tests.cpp:<line number>: PASSED:
  10513. REQUIRE( v.size() == V )
  10514. with expansion:
  10515. 6 == 6
  10516. Misc.tests.cpp:<line number>: PASSED:
  10517. REQUIRE( v.capacity() >= V )
  10518. with expansion:
  10519. 6 >= 6
  10520. -------------------------------------------------------------------------------
  10521. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10522. reserving bigger changes capacity but not size
  10523. -------------------------------------------------------------------------------
  10524. Misc.tests.cpp:<line number>
  10525. ...............................................................................
  10526. Misc.tests.cpp:<line number>: PASSED:
  10527. REQUIRE( v.size() == V )
  10528. with expansion:
  10529. 6 == 6
  10530. Misc.tests.cpp:<line number>: PASSED:
  10531. REQUIRE( v.capacity() >= 2 * V )
  10532. with expansion:
  10533. 12 >= 12
  10534. -------------------------------------------------------------------------------
  10535. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10536. -------------------------------------------------------------------------------
  10537. Misc.tests.cpp:<line number>
  10538. ...............................................................................
  10539. Misc.tests.cpp:<line number>: PASSED:
  10540. REQUIRE( v.size() == V )
  10541. with expansion:
  10542. 6 == 6
  10543. Misc.tests.cpp:<line number>: PASSED:
  10544. REQUIRE( v.capacity() >= V )
  10545. with expansion:
  10546. 6 >= 6
  10547. -------------------------------------------------------------------------------
  10548. TemplateTestSig: vectors can be sized and resized - (std::tuple<int, float>), 6
  10549. reserving smaller does not change size or capacity
  10550. -------------------------------------------------------------------------------
  10551. Misc.tests.cpp:<line number>
  10552. ...............................................................................
  10553. Misc.tests.cpp:<line number>: PASSED:
  10554. REQUIRE( v.size() == V )
  10555. with expansion:
  10556. 6 == 6
  10557. Misc.tests.cpp:<line number>: PASSED:
  10558. REQUIRE( v.capacity() >= V )
  10559. with expansion:
  10560. 6 >= 6
  10561. -------------------------------------------------------------------------------
  10562. TemplateTestSig: vectors can be sized and resized - float,4
  10563. -------------------------------------------------------------------------------
  10564. Misc.tests.cpp:<line number>
  10565. ...............................................................................
  10566. Misc.tests.cpp:<line number>: PASSED:
  10567. REQUIRE( v.size() == V )
  10568. with expansion:
  10569. 4 == 4
  10570. Misc.tests.cpp:<line number>: PASSED:
  10571. REQUIRE( v.capacity() >= V )
  10572. with expansion:
  10573. 4 >= 4
  10574. -------------------------------------------------------------------------------
  10575. TemplateTestSig: vectors can be sized and resized - float,4
  10576. resizing bigger changes size and capacity
  10577. -------------------------------------------------------------------------------
  10578. Misc.tests.cpp:<line number>
  10579. ...............................................................................
  10580. Misc.tests.cpp:<line number>: PASSED:
  10581. REQUIRE( v.size() == 2 * V )
  10582. with expansion:
  10583. 8 == 8
  10584. Misc.tests.cpp:<line number>: PASSED:
  10585. REQUIRE( v.capacity() >= 2 * V )
  10586. with expansion:
  10587. 8 >= 8
  10588. -------------------------------------------------------------------------------
  10589. TemplateTestSig: vectors can be sized and resized - float,4
  10590. -------------------------------------------------------------------------------
  10591. Misc.tests.cpp:<line number>
  10592. ...............................................................................
  10593. Misc.tests.cpp:<line number>: PASSED:
  10594. REQUIRE( v.size() == V )
  10595. with expansion:
  10596. 4 == 4
  10597. Misc.tests.cpp:<line number>: PASSED:
  10598. REQUIRE( v.capacity() >= V )
  10599. with expansion:
  10600. 4 >= 4
  10601. -------------------------------------------------------------------------------
  10602. TemplateTestSig: vectors can be sized and resized - float,4
  10603. resizing smaller changes size but not capacity
  10604. -------------------------------------------------------------------------------
  10605. Misc.tests.cpp:<line number>
  10606. ...............................................................................
  10607. Misc.tests.cpp:<line number>: PASSED:
  10608. REQUIRE( v.size() == 0 )
  10609. with expansion:
  10610. 0 == 0
  10611. Misc.tests.cpp:<line number>: PASSED:
  10612. REQUIRE( v.capacity() >= V )
  10613. with expansion:
  10614. 4 >= 4
  10615. -------------------------------------------------------------------------------
  10616. TemplateTestSig: vectors can be sized and resized - float,4
  10617. resizing smaller changes size but not capacity
  10618. We can use the 'swap trick' to reset the capacity
  10619. -------------------------------------------------------------------------------
  10620. Misc.tests.cpp:<line number>
  10621. ...............................................................................
  10622. Misc.tests.cpp:<line number>: PASSED:
  10623. REQUIRE( v.capacity() == 0 )
  10624. with expansion:
  10625. 0 == 0
  10626. -------------------------------------------------------------------------------
  10627. TemplateTestSig: vectors can be sized and resized - float,4
  10628. -------------------------------------------------------------------------------
  10629. Misc.tests.cpp:<line number>
  10630. ...............................................................................
  10631. Misc.tests.cpp:<line number>: PASSED:
  10632. REQUIRE( v.size() == V )
  10633. with expansion:
  10634. 4 == 4
  10635. Misc.tests.cpp:<line number>: PASSED:
  10636. REQUIRE( v.capacity() >= V )
  10637. with expansion:
  10638. 4 >= 4
  10639. -------------------------------------------------------------------------------
  10640. TemplateTestSig: vectors can be sized and resized - float,4
  10641. reserving bigger changes capacity but not size
  10642. -------------------------------------------------------------------------------
  10643. Misc.tests.cpp:<line number>
  10644. ...............................................................................
  10645. Misc.tests.cpp:<line number>: PASSED:
  10646. REQUIRE( v.size() == V )
  10647. with expansion:
  10648. 4 == 4
  10649. Misc.tests.cpp:<line number>: PASSED:
  10650. REQUIRE( v.capacity() >= 2 * V )
  10651. with expansion:
  10652. 8 >= 8
  10653. -------------------------------------------------------------------------------
  10654. TemplateTestSig: vectors can be sized and resized - float,4
  10655. -------------------------------------------------------------------------------
  10656. Misc.tests.cpp:<line number>
  10657. ...............................................................................
  10658. Misc.tests.cpp:<line number>: PASSED:
  10659. REQUIRE( v.size() == V )
  10660. with expansion:
  10661. 4 == 4
  10662. Misc.tests.cpp:<line number>: PASSED:
  10663. REQUIRE( v.capacity() >= V )
  10664. with expansion:
  10665. 4 >= 4
  10666. -------------------------------------------------------------------------------
  10667. TemplateTestSig: vectors can be sized and resized - float,4
  10668. reserving smaller does not change size or capacity
  10669. -------------------------------------------------------------------------------
  10670. Misc.tests.cpp:<line number>
  10671. ...............................................................................
  10672. Misc.tests.cpp:<line number>: PASSED:
  10673. REQUIRE( v.size() == V )
  10674. with expansion:
  10675. 4 == 4
  10676. Misc.tests.cpp:<line number>: PASSED:
  10677. REQUIRE( v.capacity() >= V )
  10678. with expansion:
  10679. 4 >= 4
  10680. -------------------------------------------------------------------------------
  10681. TemplateTestSig: vectors can be sized and resized - int,5
  10682. -------------------------------------------------------------------------------
  10683. Misc.tests.cpp:<line number>
  10684. ...............................................................................
  10685. Misc.tests.cpp:<line number>: PASSED:
  10686. REQUIRE( v.size() == V )
  10687. with expansion:
  10688. 5 == 5
  10689. Misc.tests.cpp:<line number>: PASSED:
  10690. REQUIRE( v.capacity() >= V )
  10691. with expansion:
  10692. 5 >= 5
  10693. -------------------------------------------------------------------------------
  10694. TemplateTestSig: vectors can be sized and resized - int,5
  10695. resizing bigger changes size and capacity
  10696. -------------------------------------------------------------------------------
  10697. Misc.tests.cpp:<line number>
  10698. ...............................................................................
  10699. Misc.tests.cpp:<line number>: PASSED:
  10700. REQUIRE( v.size() == 2 * V )
  10701. with expansion:
  10702. 10 == 10
  10703. Misc.tests.cpp:<line number>: PASSED:
  10704. REQUIRE( v.capacity() >= 2 * V )
  10705. with expansion:
  10706. 10 >= 10
  10707. -------------------------------------------------------------------------------
  10708. TemplateTestSig: vectors can be sized and resized - int,5
  10709. -------------------------------------------------------------------------------
  10710. Misc.tests.cpp:<line number>
  10711. ...............................................................................
  10712. Misc.tests.cpp:<line number>: PASSED:
  10713. REQUIRE( v.size() == V )
  10714. with expansion:
  10715. 5 == 5
  10716. Misc.tests.cpp:<line number>: PASSED:
  10717. REQUIRE( v.capacity() >= V )
  10718. with expansion:
  10719. 5 >= 5
  10720. -------------------------------------------------------------------------------
  10721. TemplateTestSig: vectors can be sized and resized - int,5
  10722. resizing smaller changes size but not capacity
  10723. -------------------------------------------------------------------------------
  10724. Misc.tests.cpp:<line number>
  10725. ...............................................................................
  10726. Misc.tests.cpp:<line number>: PASSED:
  10727. REQUIRE( v.size() == 0 )
  10728. with expansion:
  10729. 0 == 0
  10730. Misc.tests.cpp:<line number>: PASSED:
  10731. REQUIRE( v.capacity() >= V )
  10732. with expansion:
  10733. 5 >= 5
  10734. -------------------------------------------------------------------------------
  10735. TemplateTestSig: vectors can be sized and resized - int,5
  10736. resizing smaller changes size but not capacity
  10737. We can use the 'swap trick' to reset the capacity
  10738. -------------------------------------------------------------------------------
  10739. Misc.tests.cpp:<line number>
  10740. ...............................................................................
  10741. Misc.tests.cpp:<line number>: PASSED:
  10742. REQUIRE( v.capacity() == 0 )
  10743. with expansion:
  10744. 0 == 0
  10745. -------------------------------------------------------------------------------
  10746. TemplateTestSig: vectors can be sized and resized - int,5
  10747. -------------------------------------------------------------------------------
  10748. Misc.tests.cpp:<line number>
  10749. ...............................................................................
  10750. Misc.tests.cpp:<line number>: PASSED:
  10751. REQUIRE( v.size() == V )
  10752. with expansion:
  10753. 5 == 5
  10754. Misc.tests.cpp:<line number>: PASSED:
  10755. REQUIRE( v.capacity() >= V )
  10756. with expansion:
  10757. 5 >= 5
  10758. -------------------------------------------------------------------------------
  10759. TemplateTestSig: vectors can be sized and resized - int,5
  10760. reserving bigger changes capacity but not size
  10761. -------------------------------------------------------------------------------
  10762. Misc.tests.cpp:<line number>
  10763. ...............................................................................
  10764. Misc.tests.cpp:<line number>: PASSED:
  10765. REQUIRE( v.size() == V )
  10766. with expansion:
  10767. 5 == 5
  10768. Misc.tests.cpp:<line number>: PASSED:
  10769. REQUIRE( v.capacity() >= 2 * V )
  10770. with expansion:
  10771. 10 >= 10
  10772. -------------------------------------------------------------------------------
  10773. TemplateTestSig: vectors can be sized and resized - int,5
  10774. -------------------------------------------------------------------------------
  10775. Misc.tests.cpp:<line number>
  10776. ...............................................................................
  10777. Misc.tests.cpp:<line number>: PASSED:
  10778. REQUIRE( v.size() == V )
  10779. with expansion:
  10780. 5 == 5
  10781. Misc.tests.cpp:<line number>: PASSED:
  10782. REQUIRE( v.capacity() >= V )
  10783. with expansion:
  10784. 5 >= 5
  10785. -------------------------------------------------------------------------------
  10786. TemplateTestSig: vectors can be sized and resized - int,5
  10787. reserving smaller does not change size or capacity
  10788. -------------------------------------------------------------------------------
  10789. Misc.tests.cpp:<line number>
  10790. ...............................................................................
  10791. Misc.tests.cpp:<line number>: PASSED:
  10792. REQUIRE( v.size() == V )
  10793. with expansion:
  10794. 5 == 5
  10795. Misc.tests.cpp:<line number>: PASSED:
  10796. REQUIRE( v.capacity() >= V )
  10797. with expansion:
  10798. 5 >= 5
  10799. -------------------------------------------------------------------------------
  10800. TemplateTestSig: vectors can be sized and resized - std::string,15
  10801. -------------------------------------------------------------------------------
  10802. Misc.tests.cpp:<line number>
  10803. ...............................................................................
  10804. Misc.tests.cpp:<line number>: PASSED:
  10805. REQUIRE( v.size() == V )
  10806. with expansion:
  10807. 15 == 15
  10808. Misc.tests.cpp:<line number>: PASSED:
  10809. REQUIRE( v.capacity() >= V )
  10810. with expansion:
  10811. 15 >= 15
  10812. -------------------------------------------------------------------------------
  10813. TemplateTestSig: vectors can be sized and resized - std::string,15
  10814. resizing bigger changes size and capacity
  10815. -------------------------------------------------------------------------------
  10816. Misc.tests.cpp:<line number>
  10817. ...............................................................................
  10818. Misc.tests.cpp:<line number>: PASSED:
  10819. REQUIRE( v.size() == 2 * V )
  10820. with expansion:
  10821. 30 == 30
  10822. Misc.tests.cpp:<line number>: PASSED:
  10823. REQUIRE( v.capacity() >= 2 * V )
  10824. with expansion:
  10825. 30 >= 30
  10826. -------------------------------------------------------------------------------
  10827. TemplateTestSig: vectors can be sized and resized - std::string,15
  10828. -------------------------------------------------------------------------------
  10829. Misc.tests.cpp:<line number>
  10830. ...............................................................................
  10831. Misc.tests.cpp:<line number>: PASSED:
  10832. REQUIRE( v.size() == V )
  10833. with expansion:
  10834. 15 == 15
  10835. Misc.tests.cpp:<line number>: PASSED:
  10836. REQUIRE( v.capacity() >= V )
  10837. with expansion:
  10838. 15 >= 15
  10839. -------------------------------------------------------------------------------
  10840. TemplateTestSig: vectors can be sized and resized - std::string,15
  10841. resizing smaller changes size but not capacity
  10842. -------------------------------------------------------------------------------
  10843. Misc.tests.cpp:<line number>
  10844. ...............................................................................
  10845. Misc.tests.cpp:<line number>: PASSED:
  10846. REQUIRE( v.size() == 0 )
  10847. with expansion:
  10848. 0 == 0
  10849. Misc.tests.cpp:<line number>: PASSED:
  10850. REQUIRE( v.capacity() >= V )
  10851. with expansion:
  10852. 15 >= 15
  10853. -------------------------------------------------------------------------------
  10854. TemplateTestSig: vectors can be sized and resized - std::string,15
  10855. resizing smaller changes size but not capacity
  10856. We can use the 'swap trick' to reset the capacity
  10857. -------------------------------------------------------------------------------
  10858. Misc.tests.cpp:<line number>
  10859. ...............................................................................
  10860. Misc.tests.cpp:<line number>: PASSED:
  10861. REQUIRE( v.capacity() == 0 )
  10862. with expansion:
  10863. 0 == 0
  10864. -------------------------------------------------------------------------------
  10865. TemplateTestSig: vectors can be sized and resized - std::string,15
  10866. -------------------------------------------------------------------------------
  10867. Misc.tests.cpp:<line number>
  10868. ...............................................................................
  10869. Misc.tests.cpp:<line number>: PASSED:
  10870. REQUIRE( v.size() == V )
  10871. with expansion:
  10872. 15 == 15
  10873. Misc.tests.cpp:<line number>: PASSED:
  10874. REQUIRE( v.capacity() >= V )
  10875. with expansion:
  10876. 15 >= 15
  10877. -------------------------------------------------------------------------------
  10878. TemplateTestSig: vectors can be sized and resized - std::string,15
  10879. reserving bigger changes capacity but not size
  10880. -------------------------------------------------------------------------------
  10881. Misc.tests.cpp:<line number>
  10882. ...............................................................................
  10883. Misc.tests.cpp:<line number>: PASSED:
  10884. REQUIRE( v.size() == V )
  10885. with expansion:
  10886. 15 == 15
  10887. Misc.tests.cpp:<line number>: PASSED:
  10888. REQUIRE( v.capacity() >= 2 * V )
  10889. with expansion:
  10890. 30 >= 30
  10891. -------------------------------------------------------------------------------
  10892. TemplateTestSig: vectors can be sized and resized - std::string,15
  10893. -------------------------------------------------------------------------------
  10894. Misc.tests.cpp:<line number>
  10895. ...............................................................................
  10896. Misc.tests.cpp:<line number>: PASSED:
  10897. REQUIRE( v.size() == V )
  10898. with expansion:
  10899. 15 == 15
  10900. Misc.tests.cpp:<line number>: PASSED:
  10901. REQUIRE( v.capacity() >= V )
  10902. with expansion:
  10903. 15 >= 15
  10904. -------------------------------------------------------------------------------
  10905. TemplateTestSig: vectors can be sized and resized - std::string,15
  10906. reserving smaller does not change size or capacity
  10907. -------------------------------------------------------------------------------
  10908. Misc.tests.cpp:<line number>
  10909. ...............................................................................
  10910. Misc.tests.cpp:<line number>: PASSED:
  10911. REQUIRE( v.size() == V )
  10912. with expansion:
  10913. 15 == 15
  10914. Misc.tests.cpp:<line number>: PASSED:
  10915. REQUIRE( v.capacity() >= V )
  10916. with expansion:
  10917. 15 >= 15
  10918. -------------------------------------------------------------------------------
  10919. Test case with identical tags keeps just one
  10920. -------------------------------------------------------------------------------
  10921. Tag.tests.cpp:<line number>
  10922. ...............................................................................
  10923. Tag.tests.cpp:<line number>: PASSED:
  10924. REQUIRE( testCase.tags.size() == 1 )
  10925. with expansion:
  10926. 1 == 1
  10927. Tag.tests.cpp:<line number>: PASSED:
  10928. REQUIRE( testCase.tags[0] == Tag( "tag1" ) )
  10929. with expansion:
  10930. {?} == {?}
  10931. -------------------------------------------------------------------------------
  10932. Test case with one argument
  10933. -------------------------------------------------------------------------------
  10934. VariadicMacros.tests.cpp:<line number>
  10935. ...............................................................................
  10936. VariadicMacros.tests.cpp:<line number>: PASSED:
  10937. with message:
  10938. no assertions
  10939. -------------------------------------------------------------------------------
  10940. Test enum bit values
  10941. -------------------------------------------------------------------------------
  10942. Tricky.tests.cpp:<line number>
  10943. ...............................................................................
  10944. Tricky.tests.cpp:<line number>: PASSED:
  10945. REQUIRE( 0x<hex digits> == bit30and31 )
  10946. with expansion:
  10947. 3221225472 (0x<hex digits>) == 3221225472
  10948. -------------------------------------------------------------------------------
  10949. Test with special, characters "in name
  10950. -------------------------------------------------------------------------------
  10951. CmdLine.tests.cpp:<line number>
  10952. ...............................................................................
  10953. CmdLine.tests.cpp:<line number>: PASSED:
  10954. -------------------------------------------------------------------------------
  10955. Testing checked-if
  10956. -------------------------------------------------------------------------------
  10957. Misc.tests.cpp:<line number>
  10958. ...............................................................................
  10959. Misc.tests.cpp:<line number>: PASSED:
  10960. CHECKED_IF( true )
  10961. Misc.tests.cpp:<line number>: PASSED:
  10962. Misc.tests.cpp:<line number>: FAILED - but was ok:
  10963. CHECKED_IF( false )
  10964. Misc.tests.cpp:<line number>: PASSED:
  10965. CHECKED_ELSE( true )
  10966. Misc.tests.cpp:<line number>: FAILED - but was ok:
  10967. CHECKED_ELSE( false )
  10968. Misc.tests.cpp:<line number>: PASSED:
  10969. -------------------------------------------------------------------------------
  10970. Testing checked-if 2
  10971. -------------------------------------------------------------------------------
  10972. Misc.tests.cpp:<line number>
  10973. ...............................................................................
  10974. Misc.tests.cpp:<line number>: PASSED:
  10975. CHECKED_IF( true )
  10976. Misc.tests.cpp:<line number>: FAILED:
  10977. -------------------------------------------------------------------------------
  10978. Testing checked-if 3
  10979. -------------------------------------------------------------------------------
  10980. Misc.tests.cpp:<line number>
  10981. ...............................................................................
  10982. Misc.tests.cpp:<line number>: FAILED - but was ok:
  10983. CHECKED_ELSE( false )
  10984. Misc.tests.cpp:<line number>: FAILED:
  10985. -------------------------------------------------------------------------------
  10986. The NO_FAIL macro reports a failure but does not fail the test
  10987. -------------------------------------------------------------------------------
  10988. Message.tests.cpp:<line number>
  10989. ...............................................................................
  10990. Message.tests.cpp:<line number>: FAILED - but was ok:
  10991. CHECK_NOFAIL( 1 == 2 )
  10992. No assertions in test case 'The NO_FAIL macro reports a failure but does not fail the test'
  10993. -------------------------------------------------------------------------------
  10994. The default listing implementation write to provided stream
  10995. Listing tags
  10996. -------------------------------------------------------------------------------
  10997. Reporters.tests.cpp:<line number>
  10998. ...............................................................................
  10999. Reporters.tests.cpp:<line number>: PASSED:
  11000. REQUIRE_THAT( listingString, ContainsSubstring("[fakeTag]"s) )
  11001. with expansion:
  11002. "All available tags:
  11003. 1 [fakeTag]
  11004. 1 tag
  11005. " contains: "[fakeTag]"
  11006. -------------------------------------------------------------------------------
  11007. The default listing implementation write to provided stream
  11008. Listing reporters
  11009. -------------------------------------------------------------------------------
  11010. Reporters.tests.cpp:<line number>
  11011. ...............................................................................
  11012. Reporters.tests.cpp:<line number>: PASSED:
  11013. REQUIRE_THAT( listingString, ContainsSubstring( "fake reporter"s ) && ContainsSubstring( "fake description"s ) )
  11014. with expansion:
  11015. "Available reporters:
  11016. fake reporter: fake description
  11017. " ( contains: "fake reporter" and contains: "fake description" )
  11018. -------------------------------------------------------------------------------
  11019. The default listing implementation write to provided stream
  11020. Listing tests
  11021. -------------------------------------------------------------------------------
  11022. Reporters.tests.cpp:<line number>
  11023. ...............................................................................
  11024. Reporters.tests.cpp:<line number>: PASSED:
  11025. REQUIRE_THAT( listingString, ContainsSubstring( "fake test name"s ) && ContainsSubstring( "fakeTestTag"s ) )
  11026. with expansion:
  11027. "All available test cases:
  11028. fake test name
  11029. [fakeTestTag]
  11030. 1 test case
  11031. " ( contains: "fake test name" and contains: "fakeTestTag" )
  11032. -------------------------------------------------------------------------------
  11033. The default listing implementation write to provided stream
  11034. Listing listeners
  11035. -------------------------------------------------------------------------------
  11036. Reporters.tests.cpp:<line number>
  11037. ...............................................................................
  11038. Reporters.tests.cpp:<line number>: PASSED:
  11039. REQUIRE_THAT( listingString, ContainsSubstring( "fakeListener"s ) && ContainsSubstring( "fake description"s ) )
  11040. with expansion:
  11041. "Registered listeners:
  11042. fakeListener: fake description
  11043. " ( contains: "fakeListener" and contains: "fake description" )
  11044. -------------------------------------------------------------------------------
  11045. This test 'should' fail but doesn't
  11046. -------------------------------------------------------------------------------
  11047. Misc.tests.cpp:<line number>
  11048. ...............................................................................
  11049. Misc.tests.cpp:<line number>: PASSED:
  11050. with message:
  11051. oops!
  11052. -------------------------------------------------------------------------------
  11053. Thrown string literals are translated
  11054. -------------------------------------------------------------------------------
  11055. Exception.tests.cpp:<line number>
  11056. ...............................................................................
  11057. Exception.tests.cpp:<line number>: FAILED:
  11058. due to unexpected exception with message:
  11059. For some reason someone is throwing a string literal!
  11060. -------------------------------------------------------------------------------
  11061. Tracker
  11062. -------------------------------------------------------------------------------
  11063. PartTracker.tests.cpp:<line number>
  11064. ...............................................................................
  11065. PartTracker.tests.cpp:<line number>: PASSED:
  11066. REQUIRE( testCase.isOpen() )
  11067. with expansion:
  11068. true
  11069. PartTracker.tests.cpp:<line number>: PASSED:
  11070. REQUIRE( s1.isOpen() )
  11071. with expansion:
  11072. true
  11073. -------------------------------------------------------------------------------
  11074. Tracker
  11075. successfully close one section
  11076. -------------------------------------------------------------------------------
  11077. PartTracker.tests.cpp:<line number>
  11078. ...............................................................................
  11079. PartTracker.tests.cpp:<line number>: PASSED:
  11080. REQUIRE( s1.isSuccessfullyCompleted() )
  11081. with expansion:
  11082. true
  11083. PartTracker.tests.cpp:<line number>: PASSED:
  11084. REQUIRE( testCase.isComplete() == false )
  11085. with expansion:
  11086. false == false
  11087. PartTracker.tests.cpp:<line number>: PASSED:
  11088. REQUIRE( ctx.completedCycle() )
  11089. with expansion:
  11090. true
  11091. PartTracker.tests.cpp:<line number>: PASSED:
  11092. REQUIRE( testCase.isSuccessfullyCompleted() )
  11093. with expansion:
  11094. true
  11095. -------------------------------------------------------------------------------
  11096. Tracker
  11097. -------------------------------------------------------------------------------
  11098. PartTracker.tests.cpp:<line number>
  11099. ...............................................................................
  11100. PartTracker.tests.cpp:<line number>: PASSED:
  11101. REQUIRE( testCase.isOpen() )
  11102. with expansion:
  11103. true
  11104. PartTracker.tests.cpp:<line number>: PASSED:
  11105. REQUIRE( s1.isOpen() )
  11106. with expansion:
  11107. true
  11108. -------------------------------------------------------------------------------
  11109. Tracker
  11110. fail one section
  11111. -------------------------------------------------------------------------------
  11112. PartTracker.tests.cpp:<line number>
  11113. ...............................................................................
  11114. PartTracker.tests.cpp:<line number>: PASSED:
  11115. REQUIRE( s1.isComplete() )
  11116. with expansion:
  11117. true
  11118. PartTracker.tests.cpp:<line number>: PASSED:
  11119. REQUIRE( s1.isSuccessfullyCompleted() == false )
  11120. with expansion:
  11121. false == false
  11122. PartTracker.tests.cpp:<line number>: PASSED:
  11123. REQUIRE( testCase.isComplete() == false )
  11124. with expansion:
  11125. false == false
  11126. PartTracker.tests.cpp:<line number>: PASSED:
  11127. REQUIRE( ctx.completedCycle() )
  11128. with expansion:
  11129. true
  11130. PartTracker.tests.cpp:<line number>: PASSED:
  11131. REQUIRE( testCase.isSuccessfullyCompleted() == false )
  11132. with expansion:
  11133. false == false
  11134. -------------------------------------------------------------------------------
  11135. Tracker
  11136. fail one section
  11137. re-enter after failed section
  11138. -------------------------------------------------------------------------------
  11139. PartTracker.tests.cpp:<line number>
  11140. ...............................................................................
  11141. PartTracker.tests.cpp:<line number>: PASSED:
  11142. REQUIRE( testCase2.isOpen() )
  11143. with expansion:
  11144. true
  11145. PartTracker.tests.cpp:<line number>: PASSED:
  11146. REQUIRE( s1b.isOpen() == false )
  11147. with expansion:
  11148. false == false
  11149. PartTracker.tests.cpp:<line number>: PASSED:
  11150. REQUIRE( ctx.completedCycle() )
  11151. with expansion:
  11152. true
  11153. PartTracker.tests.cpp:<line number>: PASSED:
  11154. REQUIRE( testCase.isComplete() )
  11155. with expansion:
  11156. true
  11157. PartTracker.tests.cpp:<line number>: PASSED:
  11158. REQUIRE( testCase.isSuccessfullyCompleted() )
  11159. with expansion:
  11160. true
  11161. -------------------------------------------------------------------------------
  11162. Tracker
  11163. -------------------------------------------------------------------------------
  11164. PartTracker.tests.cpp:<line number>
  11165. ...............................................................................
  11166. PartTracker.tests.cpp:<line number>: PASSED:
  11167. REQUIRE( testCase.isOpen() )
  11168. with expansion:
  11169. true
  11170. PartTracker.tests.cpp:<line number>: PASSED:
  11171. REQUIRE( s1.isOpen() )
  11172. with expansion:
  11173. true
  11174. -------------------------------------------------------------------------------
  11175. Tracker
  11176. fail one section
  11177. -------------------------------------------------------------------------------
  11178. PartTracker.tests.cpp:<line number>
  11179. ...............................................................................
  11180. PartTracker.tests.cpp:<line number>: PASSED:
  11181. REQUIRE( s1.isComplete() )
  11182. with expansion:
  11183. true
  11184. PartTracker.tests.cpp:<line number>: PASSED:
  11185. REQUIRE( s1.isSuccessfullyCompleted() == false )
  11186. with expansion:
  11187. false == false
  11188. PartTracker.tests.cpp:<line number>: PASSED:
  11189. REQUIRE( testCase.isComplete() == false )
  11190. with expansion:
  11191. false == false
  11192. PartTracker.tests.cpp:<line number>: PASSED:
  11193. REQUIRE( ctx.completedCycle() )
  11194. with expansion:
  11195. true
  11196. PartTracker.tests.cpp:<line number>: PASSED:
  11197. REQUIRE( testCase.isSuccessfullyCompleted() == false )
  11198. with expansion:
  11199. false == false
  11200. -------------------------------------------------------------------------------
  11201. Tracker
  11202. fail one section
  11203. re-enter after failed section and find next section
  11204. -------------------------------------------------------------------------------
  11205. PartTracker.tests.cpp:<line number>
  11206. ...............................................................................
  11207. PartTracker.tests.cpp:<line number>: PASSED:
  11208. REQUIRE( testCase2.isOpen() )
  11209. with expansion:
  11210. true
  11211. PartTracker.tests.cpp:<line number>: PASSED:
  11212. REQUIRE( s1b.isOpen() == false )
  11213. with expansion:
  11214. false == false
  11215. PartTracker.tests.cpp:<line number>: PASSED:
  11216. REQUIRE( s2.isOpen() )
  11217. with expansion:
  11218. true
  11219. PartTracker.tests.cpp:<line number>: PASSED:
  11220. REQUIRE( ctx.completedCycle() )
  11221. with expansion:
  11222. true
  11223. PartTracker.tests.cpp:<line number>: PASSED:
  11224. REQUIRE( testCase.isComplete() )
  11225. with expansion:
  11226. true
  11227. PartTracker.tests.cpp:<line number>: PASSED:
  11228. REQUIRE( testCase.isSuccessfullyCompleted() )
  11229. with expansion:
  11230. true
  11231. -------------------------------------------------------------------------------
  11232. Tracker
  11233. -------------------------------------------------------------------------------
  11234. PartTracker.tests.cpp:<line number>
  11235. ...............................................................................
  11236. PartTracker.tests.cpp:<line number>: PASSED:
  11237. REQUIRE( testCase.isOpen() )
  11238. with expansion:
  11239. true
  11240. PartTracker.tests.cpp:<line number>: PASSED:
  11241. REQUIRE( s1.isOpen() )
  11242. with expansion:
  11243. true
  11244. -------------------------------------------------------------------------------
  11245. Tracker
  11246. successfully close one section, then find another
  11247. -------------------------------------------------------------------------------
  11248. PartTracker.tests.cpp:<line number>
  11249. ...............................................................................
  11250. PartTracker.tests.cpp:<line number>: PASSED:
  11251. REQUIRE( s2.isOpen() == false )
  11252. with expansion:
  11253. false == false
  11254. PartTracker.tests.cpp:<line number>: PASSED:
  11255. REQUIRE( testCase.isComplete() == false )
  11256. with expansion:
  11257. false == false
  11258. -------------------------------------------------------------------------------
  11259. Tracker
  11260. successfully close one section, then find another
  11261. Re-enter - skips S1 and enters S2
  11262. -------------------------------------------------------------------------------
  11263. PartTracker.tests.cpp:<line number>
  11264. ...............................................................................
  11265. PartTracker.tests.cpp:<line number>: PASSED:
  11266. REQUIRE( testCase2.isOpen() )
  11267. with expansion:
  11268. true
  11269. PartTracker.tests.cpp:<line number>: PASSED:
  11270. REQUIRE( s1b.isOpen() == false )
  11271. with expansion:
  11272. false == false
  11273. PartTracker.tests.cpp:<line number>: PASSED:
  11274. REQUIRE( s2b.isOpen() )
  11275. with expansion:
  11276. true
  11277. PartTracker.tests.cpp:<line number>: PASSED:
  11278. REQUIRE( ctx.completedCycle() == false )
  11279. with expansion:
  11280. false == false
  11281. -------------------------------------------------------------------------------
  11282. Tracker
  11283. successfully close one section, then find another
  11284. Re-enter - skips S1 and enters S2
  11285. Successfully close S2
  11286. -------------------------------------------------------------------------------
  11287. PartTracker.tests.cpp:<line number>
  11288. ...............................................................................
  11289. PartTracker.tests.cpp:<line number>: PASSED:
  11290. REQUIRE( ctx.completedCycle() )
  11291. with expansion:
  11292. true
  11293. PartTracker.tests.cpp:<line number>: PASSED:
  11294. REQUIRE( s2b.isSuccessfullyCompleted() )
  11295. with expansion:
  11296. true
  11297. PartTracker.tests.cpp:<line number>: PASSED:
  11298. REQUIRE( testCase2.isComplete() == false )
  11299. with expansion:
  11300. false == false
  11301. PartTracker.tests.cpp:<line number>: PASSED:
  11302. REQUIRE( testCase2.isSuccessfullyCompleted() )
  11303. with expansion:
  11304. true
  11305. -------------------------------------------------------------------------------
  11306. Tracker
  11307. -------------------------------------------------------------------------------
  11308. PartTracker.tests.cpp:<line number>
  11309. ...............................................................................
  11310. PartTracker.tests.cpp:<line number>: PASSED:
  11311. REQUIRE( testCase.isOpen() )
  11312. with expansion:
  11313. true
  11314. PartTracker.tests.cpp:<line number>: PASSED:
  11315. REQUIRE( s1.isOpen() )
  11316. with expansion:
  11317. true
  11318. -------------------------------------------------------------------------------
  11319. Tracker
  11320. successfully close one section, then find another
  11321. -------------------------------------------------------------------------------
  11322. PartTracker.tests.cpp:<line number>
  11323. ...............................................................................
  11324. PartTracker.tests.cpp:<line number>: PASSED:
  11325. REQUIRE( s2.isOpen() == false )
  11326. with expansion:
  11327. false == false
  11328. PartTracker.tests.cpp:<line number>: PASSED:
  11329. REQUIRE( testCase.isComplete() == false )
  11330. with expansion:
  11331. false == false
  11332. -------------------------------------------------------------------------------
  11333. Tracker
  11334. successfully close one section, then find another
  11335. Re-enter - skips S1 and enters S2
  11336. -------------------------------------------------------------------------------
  11337. PartTracker.tests.cpp:<line number>
  11338. ...............................................................................
  11339. PartTracker.tests.cpp:<line number>: PASSED:
  11340. REQUIRE( testCase2.isOpen() )
  11341. with expansion:
  11342. true
  11343. PartTracker.tests.cpp:<line number>: PASSED:
  11344. REQUIRE( s1b.isOpen() == false )
  11345. with expansion:
  11346. false == false
  11347. PartTracker.tests.cpp:<line number>: PASSED:
  11348. REQUIRE( s2b.isOpen() )
  11349. with expansion:
  11350. true
  11351. PartTracker.tests.cpp:<line number>: PASSED:
  11352. REQUIRE( ctx.completedCycle() == false )
  11353. with expansion:
  11354. false == false
  11355. -------------------------------------------------------------------------------
  11356. Tracker
  11357. successfully close one section, then find another
  11358. Re-enter - skips S1 and enters S2
  11359. fail S2
  11360. -------------------------------------------------------------------------------
  11361. PartTracker.tests.cpp:<line number>
  11362. ...............................................................................
  11363. PartTracker.tests.cpp:<line number>: PASSED:
  11364. REQUIRE( ctx.completedCycle() )
  11365. with expansion:
  11366. true
  11367. PartTracker.tests.cpp:<line number>: PASSED:
  11368. REQUIRE( s2b.isComplete() )
  11369. with expansion:
  11370. true
  11371. PartTracker.tests.cpp:<line number>: PASSED:
  11372. REQUIRE( s2b.isSuccessfullyCompleted() == false )
  11373. with expansion:
  11374. false == false
  11375. PartTracker.tests.cpp:<line number>: PASSED:
  11376. REQUIRE( testCase2.isSuccessfullyCompleted() == false )
  11377. with expansion:
  11378. false == false
  11379. PartTracker.tests.cpp:<line number>: PASSED:
  11380. REQUIRE( testCase3.isOpen() )
  11381. with expansion:
  11382. true
  11383. PartTracker.tests.cpp:<line number>: PASSED:
  11384. REQUIRE( s1c.isOpen() == false )
  11385. with expansion:
  11386. false == false
  11387. PartTracker.tests.cpp:<line number>: PASSED:
  11388. REQUIRE( s2c.isOpen() == false )
  11389. with expansion:
  11390. false == false
  11391. PartTracker.tests.cpp:<line number>: PASSED:
  11392. REQUIRE( testCase3.isSuccessfullyCompleted() )
  11393. with expansion:
  11394. true
  11395. -------------------------------------------------------------------------------
  11396. Tracker
  11397. -------------------------------------------------------------------------------
  11398. PartTracker.tests.cpp:<line number>
  11399. ...............................................................................
  11400. PartTracker.tests.cpp:<line number>: PASSED:
  11401. REQUIRE( testCase.isOpen() )
  11402. with expansion:
  11403. true
  11404. PartTracker.tests.cpp:<line number>: PASSED:
  11405. REQUIRE( s1.isOpen() )
  11406. with expansion:
  11407. true
  11408. -------------------------------------------------------------------------------
  11409. Tracker
  11410. open a nested section
  11411. -------------------------------------------------------------------------------
  11412. PartTracker.tests.cpp:<line number>
  11413. ...............................................................................
  11414. PartTracker.tests.cpp:<line number>: PASSED:
  11415. REQUIRE( s2.isOpen() )
  11416. with expansion:
  11417. true
  11418. PartTracker.tests.cpp:<line number>: PASSED:
  11419. REQUIRE( s2.isComplete() )
  11420. with expansion:
  11421. true
  11422. PartTracker.tests.cpp:<line number>: PASSED:
  11423. REQUIRE( s1.isComplete() == false )
  11424. with expansion:
  11425. false == false
  11426. PartTracker.tests.cpp:<line number>: PASSED:
  11427. REQUIRE( s1.isComplete() )
  11428. with expansion:
  11429. true
  11430. PartTracker.tests.cpp:<line number>: PASSED:
  11431. REQUIRE( testCase.isComplete() == false )
  11432. with expansion:
  11433. false == false
  11434. PartTracker.tests.cpp:<line number>: PASSED:
  11435. REQUIRE( testCase.isComplete() )
  11436. with expansion:
  11437. true
  11438. -------------------------------------------------------------------------------
  11439. Trim strings
  11440. -------------------------------------------------------------------------------
  11441. StringManip.tests.cpp:<line number>
  11442. ...............................................................................
  11443. StringManip.tests.cpp:<line number>: PASSED:
  11444. REQUIRE( trim(std::string(no_whitespace)) == no_whitespace )
  11445. with expansion:
  11446. "There is no extra whitespace here"
  11447. ==
  11448. "There is no extra whitespace here"
  11449. StringManip.tests.cpp:<line number>: PASSED:
  11450. REQUIRE( trim(std::string(leading_whitespace)) == no_whitespace )
  11451. with expansion:
  11452. "There is no extra whitespace here"
  11453. ==
  11454. "There is no extra whitespace here"
  11455. StringManip.tests.cpp:<line number>: PASSED:
  11456. REQUIRE( trim(std::string(trailing_whitespace)) == no_whitespace )
  11457. with expansion:
  11458. "There is no extra whitespace here"
  11459. ==
  11460. "There is no extra whitespace here"
  11461. StringManip.tests.cpp:<line number>: PASSED:
  11462. REQUIRE( trim(std::string(whitespace_at_both_ends)) == no_whitespace )
  11463. with expansion:
  11464. "There is no extra whitespace here"
  11465. ==
  11466. "There is no extra whitespace here"
  11467. StringManip.tests.cpp:<line number>: PASSED:
  11468. REQUIRE( trim(StringRef(no_whitespace)) == StringRef(no_whitespace) )
  11469. with expansion:
  11470. There is no extra whitespace here
  11471. ==
  11472. There is no extra whitespace here
  11473. StringManip.tests.cpp:<line number>: PASSED:
  11474. REQUIRE( trim(StringRef(leading_whitespace)) == StringRef(no_whitespace) )
  11475. with expansion:
  11476. There is no extra whitespace here
  11477. ==
  11478. There is no extra whitespace here
  11479. StringManip.tests.cpp:<line number>: PASSED:
  11480. REQUIRE( trim(StringRef(trailing_whitespace)) == StringRef(no_whitespace) )
  11481. with expansion:
  11482. There is no extra whitespace here
  11483. ==
  11484. There is no extra whitespace here
  11485. StringManip.tests.cpp:<line number>: PASSED:
  11486. REQUIRE( trim(StringRef(whitespace_at_both_ends)) == StringRef(no_whitespace) )
  11487. with expansion:
  11488. There is no extra whitespace here
  11489. ==
  11490. There is no extra whitespace here
  11491. -------------------------------------------------------------------------------
  11492. Unexpected exceptions can be translated
  11493. -------------------------------------------------------------------------------
  11494. Exception.tests.cpp:<line number>
  11495. ...............................................................................
  11496. Exception.tests.cpp:<line number>: FAILED:
  11497. due to unexpected exception with message:
  11498. 3.14
  11499. -------------------------------------------------------------------------------
  11500. Upcasting special member functions
  11501. Move constructor
  11502. -------------------------------------------------------------------------------
  11503. UniquePtr.tests.cpp:<line number>
  11504. ...............................................................................
  11505. UniquePtr.tests.cpp:<line number>: PASSED:
  11506. REQUIRE( bptr->i == 3 )
  11507. with expansion:
  11508. 3 == 3
  11509. -------------------------------------------------------------------------------
  11510. Upcasting special member functions
  11511. move assignment
  11512. -------------------------------------------------------------------------------
  11513. UniquePtr.tests.cpp:<line number>
  11514. ...............................................................................
  11515. UniquePtr.tests.cpp:<line number>: PASSED:
  11516. REQUIRE( bptr->i == 3 )
  11517. with expansion:
  11518. 3 == 3
  11519. -------------------------------------------------------------------------------
  11520. Usage of AllMatch range matcher
  11521. Basic usage
  11522. -------------------------------------------------------------------------------
  11523. MatchersRanges.tests.cpp:<line number>
  11524. ...............................................................................
  11525. MatchersRanges.tests.cpp:<line number>: PASSED:
  11526. REQUIRE_THAT( data, AllMatch(SizeIs(5)) )
  11527. with expansion:
  11528. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11529. }, { 1, 0, 0, -1, 5 } } all match has size == 5
  11530. MatchersRanges.tests.cpp:<line number>: PASSED:
  11531. REQUIRE_THAT( data, !AllMatch(Contains(0) && Contains(1)) )
  11532. with expansion:
  11533. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11534. }, { 1, 0, 0, -1, 5 } } not all match ( contains element 0 and contains
  11535. element 1 )
  11536. -------------------------------------------------------------------------------
  11537. Usage of AllMatch range matcher
  11538. Type requires ADL found begin and end
  11539. -------------------------------------------------------------------------------
  11540. MatchersRanges.tests.cpp:<line number>
  11541. ...............................................................................
  11542. MatchersRanges.tests.cpp:<line number>: PASSED:
  11543. REQUIRE_THAT( needs_adl, AllMatch( Predicate<int>( []( int elem ) { return elem < 6; } ) ) )
  11544. with expansion:
  11545. { 1, 2, 3, 4, 5 } all match matches undescribed predicate
  11546. -------------------------------------------------------------------------------
  11547. Usage of AllMatch range matcher
  11548. Shortcircuiting
  11549. All are read
  11550. -------------------------------------------------------------------------------
  11551. MatchersRanges.tests.cpp:<line number>
  11552. ...............................................................................
  11553. MatchersRanges.tests.cpp:<line number>: PASSED:
  11554. REQUIRE_THAT( mocked, allMatch )
  11555. with expansion:
  11556. { 1, 2, 3, 4, 5 } all match matches undescribed predicate
  11557. MatchersRanges.tests.cpp:<line number>: PASSED:
  11558. REQUIRE( mocked.m_derefed[0] )
  11559. with expansion:
  11560. true
  11561. MatchersRanges.tests.cpp:<line number>: PASSED:
  11562. REQUIRE( mocked.m_derefed[1] )
  11563. with expansion:
  11564. true
  11565. MatchersRanges.tests.cpp:<line number>: PASSED:
  11566. REQUIRE( mocked.m_derefed[2] )
  11567. with expansion:
  11568. true
  11569. MatchersRanges.tests.cpp:<line number>: PASSED:
  11570. REQUIRE( mocked.m_derefed[3] )
  11571. with expansion:
  11572. true
  11573. MatchersRanges.tests.cpp:<line number>: PASSED:
  11574. REQUIRE( mocked.m_derefed[4] )
  11575. with expansion:
  11576. true
  11577. -------------------------------------------------------------------------------
  11578. Usage of AllMatch range matcher
  11579. Shortcircuiting
  11580. Short-circuited
  11581. -------------------------------------------------------------------------------
  11582. MatchersRanges.tests.cpp:<line number>
  11583. ...............................................................................
  11584. MatchersRanges.tests.cpp:<line number>: PASSED:
  11585. REQUIRE_THAT( mocked, !allMatch )
  11586. with expansion:
  11587. { 1, 2, 3, 4, 5 } not all match matches undescribed predicate
  11588. MatchersRanges.tests.cpp:<line number>: PASSED:
  11589. REQUIRE( mocked.m_derefed[0] )
  11590. with expansion:
  11591. true
  11592. MatchersRanges.tests.cpp:<line number>: PASSED:
  11593. REQUIRE( mocked.m_derefed[1] )
  11594. with expansion:
  11595. true
  11596. MatchersRanges.tests.cpp:<line number>: PASSED:
  11597. REQUIRE( mocked.m_derefed[2] )
  11598. with expansion:
  11599. true
  11600. MatchersRanges.tests.cpp:<line number>: PASSED:
  11601. REQUIRE_FALSE( mocked.m_derefed[3] )
  11602. with expansion:
  11603. !false
  11604. MatchersRanges.tests.cpp:<line number>: PASSED:
  11605. REQUIRE_FALSE( mocked.m_derefed[4] )
  11606. with expansion:
  11607. !false
  11608. -------------------------------------------------------------------------------
  11609. Usage of AllTrue range matcher
  11610. Basic usage
  11611. All true evaluates to true
  11612. -------------------------------------------------------------------------------
  11613. MatchersRanges.tests.cpp:<line number>
  11614. ...............................................................................
  11615. MatchersRanges.tests.cpp:<line number>: PASSED:
  11616. REQUIRE_THAT( data, AllTrue() )
  11617. with expansion:
  11618. { true, true, true, true, true } contains only true
  11619. -------------------------------------------------------------------------------
  11620. Usage of AllTrue range matcher
  11621. Basic usage
  11622. Empty evaluates to true
  11623. -------------------------------------------------------------------------------
  11624. MatchersRanges.tests.cpp:<line number>
  11625. ...............................................................................
  11626. MatchersRanges.tests.cpp:<line number>: PASSED:
  11627. REQUIRE_THAT( data, AllTrue() )
  11628. with expansion:
  11629. { } contains only true
  11630. -------------------------------------------------------------------------------
  11631. Usage of AllTrue range matcher
  11632. Basic usage
  11633. One false evalutes to false
  11634. -------------------------------------------------------------------------------
  11635. MatchersRanges.tests.cpp:<line number>
  11636. ...............................................................................
  11637. MatchersRanges.tests.cpp:<line number>: PASSED:
  11638. REQUIRE_THAT( data, !AllTrue() )
  11639. with expansion:
  11640. { true, true, false, true, true } not contains only true
  11641. -------------------------------------------------------------------------------
  11642. Usage of AllTrue range matcher
  11643. Basic usage
  11644. All false evaluates to false
  11645. -------------------------------------------------------------------------------
  11646. MatchersRanges.tests.cpp:<line number>
  11647. ...............................................................................
  11648. MatchersRanges.tests.cpp:<line number>: PASSED:
  11649. REQUIRE_THAT( data, !AllTrue() )
  11650. with expansion:
  11651. { false, false, false, false, false } not contains only true
  11652. -------------------------------------------------------------------------------
  11653. Usage of AllTrue range matcher
  11654. Contained type is convertible to bool
  11655. All true evaluates to true
  11656. -------------------------------------------------------------------------------
  11657. MatchersRanges.tests.cpp:<line number>
  11658. ...............................................................................
  11659. MatchersRanges.tests.cpp:<line number>: PASSED:
  11660. REQUIRE_THAT( data, AllTrue() )
  11661. with expansion:
  11662. { true, true, true, true, true } contains only true
  11663. -------------------------------------------------------------------------------
  11664. Usage of AllTrue range matcher
  11665. Contained type is convertible to bool
  11666. One false evalutes to false
  11667. -------------------------------------------------------------------------------
  11668. MatchersRanges.tests.cpp:<line number>
  11669. ...............................................................................
  11670. MatchersRanges.tests.cpp:<line number>: PASSED:
  11671. REQUIRE_THAT( data, !AllTrue() )
  11672. with expansion:
  11673. { true, true, false, true, true } not contains only true
  11674. -------------------------------------------------------------------------------
  11675. Usage of AllTrue range matcher
  11676. Contained type is convertible to bool
  11677. All false evaluates to false
  11678. -------------------------------------------------------------------------------
  11679. MatchersRanges.tests.cpp:<line number>
  11680. ...............................................................................
  11681. MatchersRanges.tests.cpp:<line number>: PASSED:
  11682. REQUIRE_THAT( data, !AllTrue() )
  11683. with expansion:
  11684. { false, false, false, false, false } not contains only true
  11685. -------------------------------------------------------------------------------
  11686. Usage of AllTrue range matcher
  11687. Shortcircuiting
  11688. All are read
  11689. -------------------------------------------------------------------------------
  11690. MatchersRanges.tests.cpp:<line number>
  11691. ...............................................................................
  11692. MatchersRanges.tests.cpp:<line number>: PASSED:
  11693. REQUIRE_THAT( mocked, AllTrue() )
  11694. with expansion:
  11695. { true, true, true, true, true } contains only true
  11696. MatchersRanges.tests.cpp:<line number>: PASSED:
  11697. REQUIRE( mocked.m_derefed[0] )
  11698. with expansion:
  11699. true
  11700. MatchersRanges.tests.cpp:<line number>: PASSED:
  11701. REQUIRE( mocked.m_derefed[1] )
  11702. with expansion:
  11703. true
  11704. MatchersRanges.tests.cpp:<line number>: PASSED:
  11705. REQUIRE( mocked.m_derefed[2] )
  11706. with expansion:
  11707. true
  11708. MatchersRanges.tests.cpp:<line number>: PASSED:
  11709. REQUIRE( mocked.m_derefed[3] )
  11710. with expansion:
  11711. true
  11712. MatchersRanges.tests.cpp:<line number>: PASSED:
  11713. REQUIRE( mocked.m_derefed[4] )
  11714. with expansion:
  11715. true
  11716. -------------------------------------------------------------------------------
  11717. Usage of AllTrue range matcher
  11718. Shortcircuiting
  11719. Short-circuited
  11720. -------------------------------------------------------------------------------
  11721. MatchersRanges.tests.cpp:<line number>
  11722. ...............................................................................
  11723. MatchersRanges.tests.cpp:<line number>: PASSED:
  11724. REQUIRE_THAT( mocked, !AllTrue() )
  11725. with expansion:
  11726. { true, true, false, true, true } not contains only true
  11727. MatchersRanges.tests.cpp:<line number>: PASSED:
  11728. REQUIRE( mocked.m_derefed[0] )
  11729. with expansion:
  11730. true
  11731. MatchersRanges.tests.cpp:<line number>: PASSED:
  11732. REQUIRE( mocked.m_derefed[1] )
  11733. with expansion:
  11734. true
  11735. MatchersRanges.tests.cpp:<line number>: PASSED:
  11736. REQUIRE( mocked.m_derefed[2] )
  11737. with expansion:
  11738. true
  11739. MatchersRanges.tests.cpp:<line number>: PASSED:
  11740. REQUIRE_FALSE( mocked.m_derefed[3] )
  11741. with expansion:
  11742. !false
  11743. MatchersRanges.tests.cpp:<line number>: PASSED:
  11744. REQUIRE_FALSE( mocked.m_derefed[4] )
  11745. with expansion:
  11746. !false
  11747. -------------------------------------------------------------------------------
  11748. Usage of AnyMatch range matcher
  11749. Basic usage
  11750. -------------------------------------------------------------------------------
  11751. MatchersRanges.tests.cpp:<line number>
  11752. ...............................................................................
  11753. MatchersRanges.tests.cpp:<line number>: PASSED:
  11754. REQUIRE_THAT( data, AnyMatch(SizeIs(5)) )
  11755. with expansion:
  11756. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11757. }, { 1, 0, 0, -1, 5 } } any match has size == 5
  11758. MatchersRanges.tests.cpp:<line number>: PASSED:
  11759. REQUIRE_THAT( data, !AnyMatch(Contains(0) && Contains(10)) )
  11760. with expansion:
  11761. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11762. }, { 1, 0, 0, -1, 5 } } not any match ( contains element 0 and contains
  11763. element 10 )
  11764. -------------------------------------------------------------------------------
  11765. Usage of AnyMatch range matcher
  11766. Type requires ADL found begin and end
  11767. -------------------------------------------------------------------------------
  11768. MatchersRanges.tests.cpp:<line number>
  11769. ...............................................................................
  11770. MatchersRanges.tests.cpp:<line number>: PASSED:
  11771. REQUIRE_THAT( needs_adl, AnyMatch( Predicate<int>( []( int elem ) { return elem < 3; } ) ) )
  11772. with expansion:
  11773. { 1, 2, 3, 4, 5 } any match matches undescribed predicate
  11774. -------------------------------------------------------------------------------
  11775. Usage of AnyMatch range matcher
  11776. Shortcircuiting
  11777. All are read
  11778. -------------------------------------------------------------------------------
  11779. MatchersRanges.tests.cpp:<line number>
  11780. ...............................................................................
  11781. MatchersRanges.tests.cpp:<line number>: PASSED:
  11782. REQUIRE_THAT( mocked, !anyMatch )
  11783. with expansion:
  11784. { 1, 2, 3, 4, 5 } not any match matches undescribed predicate
  11785. MatchersRanges.tests.cpp:<line number>: PASSED:
  11786. REQUIRE( mocked.m_derefed[0] )
  11787. with expansion:
  11788. true
  11789. MatchersRanges.tests.cpp:<line number>: PASSED:
  11790. REQUIRE( mocked.m_derefed[1] )
  11791. with expansion:
  11792. true
  11793. MatchersRanges.tests.cpp:<line number>: PASSED:
  11794. REQUIRE( mocked.m_derefed[2] )
  11795. with expansion:
  11796. true
  11797. MatchersRanges.tests.cpp:<line number>: PASSED:
  11798. REQUIRE( mocked.m_derefed[3] )
  11799. with expansion:
  11800. true
  11801. MatchersRanges.tests.cpp:<line number>: PASSED:
  11802. REQUIRE( mocked.m_derefed[4] )
  11803. with expansion:
  11804. true
  11805. -------------------------------------------------------------------------------
  11806. Usage of AnyMatch range matcher
  11807. Shortcircuiting
  11808. Short-circuited
  11809. -------------------------------------------------------------------------------
  11810. MatchersRanges.tests.cpp:<line number>
  11811. ...............................................................................
  11812. MatchersRanges.tests.cpp:<line number>: PASSED:
  11813. REQUIRE_THAT( mocked, anyMatch )
  11814. with expansion:
  11815. { 1, 2, 3, 4, 5 } any match matches undescribed predicate
  11816. MatchersRanges.tests.cpp:<line number>: PASSED:
  11817. REQUIRE( mocked.m_derefed[0] )
  11818. with expansion:
  11819. true
  11820. MatchersRanges.tests.cpp:<line number>: PASSED:
  11821. REQUIRE_FALSE( mocked.m_derefed[1] )
  11822. with expansion:
  11823. !false
  11824. MatchersRanges.tests.cpp:<line number>: PASSED:
  11825. REQUIRE_FALSE( mocked.m_derefed[2] )
  11826. with expansion:
  11827. !false
  11828. MatchersRanges.tests.cpp:<line number>: PASSED:
  11829. REQUIRE_FALSE( mocked.m_derefed[3] )
  11830. with expansion:
  11831. !false
  11832. MatchersRanges.tests.cpp:<line number>: PASSED:
  11833. REQUIRE_FALSE( mocked.m_derefed[4] )
  11834. with expansion:
  11835. !false
  11836. -------------------------------------------------------------------------------
  11837. Usage of AnyTrue range matcher
  11838. Basic usage
  11839. All true evaluates to true
  11840. -------------------------------------------------------------------------------
  11841. MatchersRanges.tests.cpp:<line number>
  11842. ...............................................................................
  11843. MatchersRanges.tests.cpp:<line number>: PASSED:
  11844. REQUIRE_THAT( data, AnyTrue() )
  11845. with expansion:
  11846. { true, true, true, true, true } contains at least one true
  11847. -------------------------------------------------------------------------------
  11848. Usage of AnyTrue range matcher
  11849. Basic usage
  11850. Empty evaluates to false
  11851. -------------------------------------------------------------------------------
  11852. MatchersRanges.tests.cpp:<line number>
  11853. ...............................................................................
  11854. MatchersRanges.tests.cpp:<line number>: PASSED:
  11855. REQUIRE_THAT( data, !AnyTrue() )
  11856. with expansion:
  11857. { } not contains at least one true
  11858. -------------------------------------------------------------------------------
  11859. Usage of AnyTrue range matcher
  11860. Basic usage
  11861. One true evalutes to true
  11862. -------------------------------------------------------------------------------
  11863. MatchersRanges.tests.cpp:<line number>
  11864. ...............................................................................
  11865. MatchersRanges.tests.cpp:<line number>: PASSED:
  11866. REQUIRE_THAT( data, AnyTrue() )
  11867. with expansion:
  11868. { false, false, true, false, false } contains at least one true
  11869. -------------------------------------------------------------------------------
  11870. Usage of AnyTrue range matcher
  11871. Basic usage
  11872. All false evaluates to false
  11873. -------------------------------------------------------------------------------
  11874. MatchersRanges.tests.cpp:<line number>
  11875. ...............................................................................
  11876. MatchersRanges.tests.cpp:<line number>: PASSED:
  11877. REQUIRE_THAT( data, !AnyTrue() )
  11878. with expansion:
  11879. { false, false, false, false, false } not contains at least one true
  11880. -------------------------------------------------------------------------------
  11881. Usage of AnyTrue range matcher
  11882. Contained type is convertible to bool
  11883. All true evaluates to true
  11884. -------------------------------------------------------------------------------
  11885. MatchersRanges.tests.cpp:<line number>
  11886. ...............................................................................
  11887. MatchersRanges.tests.cpp:<line number>: PASSED:
  11888. REQUIRE_THAT( data, AnyTrue() )
  11889. with expansion:
  11890. { true, true, true, true, true } contains at least one true
  11891. -------------------------------------------------------------------------------
  11892. Usage of AnyTrue range matcher
  11893. Contained type is convertible to bool
  11894. One true evalutes to true
  11895. -------------------------------------------------------------------------------
  11896. MatchersRanges.tests.cpp:<line number>
  11897. ...............................................................................
  11898. MatchersRanges.tests.cpp:<line number>: PASSED:
  11899. REQUIRE_THAT( data, AnyTrue() )
  11900. with expansion:
  11901. { false, false, true, false, false } contains at least one true
  11902. -------------------------------------------------------------------------------
  11903. Usage of AnyTrue range matcher
  11904. Contained type is convertible to bool
  11905. All false evaluates to false
  11906. -------------------------------------------------------------------------------
  11907. MatchersRanges.tests.cpp:<line number>
  11908. ...............................................................................
  11909. MatchersRanges.tests.cpp:<line number>: PASSED:
  11910. REQUIRE_THAT( data, !AnyTrue() )
  11911. with expansion:
  11912. { false, false, false, false, false } not contains at least one true
  11913. -------------------------------------------------------------------------------
  11914. Usage of AnyTrue range matcher
  11915. Shortcircuiting
  11916. All are read
  11917. -------------------------------------------------------------------------------
  11918. MatchersRanges.tests.cpp:<line number>
  11919. ...............................................................................
  11920. MatchersRanges.tests.cpp:<line number>: PASSED:
  11921. REQUIRE_THAT( mocked, AnyTrue() )
  11922. with expansion:
  11923. { false, false, false, false, true } contains at least one true
  11924. MatchersRanges.tests.cpp:<line number>: PASSED:
  11925. REQUIRE( mocked.m_derefed[0] )
  11926. with expansion:
  11927. true
  11928. MatchersRanges.tests.cpp:<line number>: PASSED:
  11929. REQUIRE( mocked.m_derefed[1] )
  11930. with expansion:
  11931. true
  11932. MatchersRanges.tests.cpp:<line number>: PASSED:
  11933. REQUIRE( mocked.m_derefed[2] )
  11934. with expansion:
  11935. true
  11936. MatchersRanges.tests.cpp:<line number>: PASSED:
  11937. REQUIRE( mocked.m_derefed[3] )
  11938. with expansion:
  11939. true
  11940. MatchersRanges.tests.cpp:<line number>: PASSED:
  11941. REQUIRE( mocked.m_derefed[4] )
  11942. with expansion:
  11943. true
  11944. -------------------------------------------------------------------------------
  11945. Usage of AnyTrue range matcher
  11946. Shortcircuiting
  11947. Short-circuited
  11948. -------------------------------------------------------------------------------
  11949. MatchersRanges.tests.cpp:<line number>
  11950. ...............................................................................
  11951. MatchersRanges.tests.cpp:<line number>: PASSED:
  11952. REQUIRE_THAT( mocked, AnyTrue() )
  11953. with expansion:
  11954. { false, false, true, true, true } contains at least one true
  11955. MatchersRanges.tests.cpp:<line number>: PASSED:
  11956. REQUIRE( mocked.m_derefed[0] )
  11957. with expansion:
  11958. true
  11959. MatchersRanges.tests.cpp:<line number>: PASSED:
  11960. REQUIRE( mocked.m_derefed[1] )
  11961. with expansion:
  11962. true
  11963. MatchersRanges.tests.cpp:<line number>: PASSED:
  11964. REQUIRE( mocked.m_derefed[2] )
  11965. with expansion:
  11966. true
  11967. MatchersRanges.tests.cpp:<line number>: PASSED:
  11968. REQUIRE_FALSE( mocked.m_derefed[3] )
  11969. with expansion:
  11970. !false
  11971. MatchersRanges.tests.cpp:<line number>: PASSED:
  11972. REQUIRE_FALSE( mocked.m_derefed[4] )
  11973. with expansion:
  11974. !false
  11975. -------------------------------------------------------------------------------
  11976. Usage of NoneMatch range matcher
  11977. Basic usage
  11978. -------------------------------------------------------------------------------
  11979. MatchersRanges.tests.cpp:<line number>
  11980. ...............................................................................
  11981. MatchersRanges.tests.cpp:<line number>: PASSED:
  11982. REQUIRE_THAT( data, NoneMatch(SizeIs(6)) )
  11983. with expansion:
  11984. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11985. }, { 1, 0, 0, -1, 5 } } none match has size == 6
  11986. MatchersRanges.tests.cpp:<line number>: PASSED:
  11987. REQUIRE_THAT( data, !NoneMatch(Contains(0) && Contains(1)) )
  11988. with expansion:
  11989. { { 0, 1, 2, 3, 5 }, { 4, -3, -2, 5, 0 }, { 0, 0, 0, 5, 0 }, { 0, -5, 0, 5, 0
  11990. }, { 1, 0, 0, -1, 5 } } not none match ( contains element 0 and contains
  11991. element 1 )
  11992. -------------------------------------------------------------------------------
  11993. Usage of NoneMatch range matcher
  11994. Type requires ADL found begin and end
  11995. -------------------------------------------------------------------------------
  11996. MatchersRanges.tests.cpp:<line number>
  11997. ...............................................................................
  11998. MatchersRanges.tests.cpp:<line number>: PASSED:
  11999. REQUIRE_THAT( needs_adl, NoneMatch( Predicate<int>( []( int elem ) { return elem > 6; } ) ) )
  12000. with expansion:
  12001. { 1, 2, 3, 4, 5 } none match matches undescribed predicate
  12002. -------------------------------------------------------------------------------
  12003. Usage of NoneMatch range matcher
  12004. Shortcircuiting
  12005. All are read
  12006. -------------------------------------------------------------------------------
  12007. MatchersRanges.tests.cpp:<line number>
  12008. ...............................................................................
  12009. MatchersRanges.tests.cpp:<line number>: PASSED:
  12010. REQUIRE_THAT( mocked, noneMatch )
  12011. with expansion:
  12012. { 1, 2, 3, 4, 5 } none match matches undescribed predicate
  12013. MatchersRanges.tests.cpp:<line number>: PASSED:
  12014. REQUIRE( mocked.m_derefed[0] )
  12015. with expansion:
  12016. true
  12017. MatchersRanges.tests.cpp:<line number>: PASSED:
  12018. REQUIRE( mocked.m_derefed[1] )
  12019. with expansion:
  12020. true
  12021. MatchersRanges.tests.cpp:<line number>: PASSED:
  12022. REQUIRE( mocked.m_derefed[2] )
  12023. with expansion:
  12024. true
  12025. MatchersRanges.tests.cpp:<line number>: PASSED:
  12026. REQUIRE( mocked.m_derefed[3] )
  12027. with expansion:
  12028. true
  12029. MatchersRanges.tests.cpp:<line number>: PASSED:
  12030. REQUIRE( mocked.m_derefed[4] )
  12031. with expansion:
  12032. true
  12033. -------------------------------------------------------------------------------
  12034. Usage of NoneMatch range matcher
  12035. Shortcircuiting
  12036. Short-circuited
  12037. -------------------------------------------------------------------------------
  12038. MatchersRanges.tests.cpp:<line number>
  12039. ...............................................................................
  12040. MatchersRanges.tests.cpp:<line number>: PASSED:
  12041. REQUIRE_THAT( mocked, !noneMatch )
  12042. with expansion:
  12043. { 1, 2, 3, 4, 5 } not none match matches undescribed predicate
  12044. MatchersRanges.tests.cpp:<line number>: PASSED:
  12045. REQUIRE( mocked.m_derefed[0] )
  12046. with expansion:
  12047. true
  12048. MatchersRanges.tests.cpp:<line number>: PASSED:
  12049. REQUIRE_FALSE( mocked.m_derefed[1] )
  12050. with expansion:
  12051. !false
  12052. MatchersRanges.tests.cpp:<line number>: PASSED:
  12053. REQUIRE_FALSE( mocked.m_derefed[2] )
  12054. with expansion:
  12055. !false
  12056. MatchersRanges.tests.cpp:<line number>: PASSED:
  12057. REQUIRE_FALSE( mocked.m_derefed[3] )
  12058. with expansion:
  12059. !false
  12060. MatchersRanges.tests.cpp:<line number>: PASSED:
  12061. REQUIRE_FALSE( mocked.m_derefed[4] )
  12062. with expansion:
  12063. !false
  12064. -------------------------------------------------------------------------------
  12065. Usage of NoneTrue range matcher
  12066. Basic usage
  12067. All true evaluates to false
  12068. -------------------------------------------------------------------------------
  12069. MatchersRanges.tests.cpp:<line number>
  12070. ...............................................................................
  12071. MatchersRanges.tests.cpp:<line number>: PASSED:
  12072. REQUIRE_THAT( data, !NoneTrue() )
  12073. with expansion:
  12074. { true, true, true, true, true } not contains no true
  12075. -------------------------------------------------------------------------------
  12076. Usage of NoneTrue range matcher
  12077. Basic usage
  12078. Empty evaluates to true
  12079. -------------------------------------------------------------------------------
  12080. MatchersRanges.tests.cpp:<line number>
  12081. ...............................................................................
  12082. MatchersRanges.tests.cpp:<line number>: PASSED:
  12083. REQUIRE_THAT( data, NoneTrue() )
  12084. with expansion:
  12085. { } contains no true
  12086. -------------------------------------------------------------------------------
  12087. Usage of NoneTrue range matcher
  12088. Basic usage
  12089. One true evalutes to false
  12090. -------------------------------------------------------------------------------
  12091. MatchersRanges.tests.cpp:<line number>
  12092. ...............................................................................
  12093. MatchersRanges.tests.cpp:<line number>: PASSED:
  12094. REQUIRE_THAT( data, !NoneTrue() )
  12095. with expansion:
  12096. { false, false, true, false, false } not contains no true
  12097. -------------------------------------------------------------------------------
  12098. Usage of NoneTrue range matcher
  12099. Basic usage
  12100. All false evaluates to true
  12101. -------------------------------------------------------------------------------
  12102. MatchersRanges.tests.cpp:<line number>
  12103. ...............................................................................
  12104. MatchersRanges.tests.cpp:<line number>: PASSED:
  12105. REQUIRE_THAT( data, NoneTrue() )
  12106. with expansion:
  12107. { false, false, false, false, false } contains no true
  12108. -------------------------------------------------------------------------------
  12109. Usage of NoneTrue range matcher
  12110. Contained type is convertible to bool
  12111. All true evaluates to false
  12112. -------------------------------------------------------------------------------
  12113. MatchersRanges.tests.cpp:<line number>
  12114. ...............................................................................
  12115. MatchersRanges.tests.cpp:<line number>: PASSED:
  12116. REQUIRE_THAT( data, !NoneTrue() )
  12117. with expansion:
  12118. { true, true, true, true, true } not contains no true
  12119. -------------------------------------------------------------------------------
  12120. Usage of NoneTrue range matcher
  12121. Contained type is convertible to bool
  12122. One true evalutes to false
  12123. -------------------------------------------------------------------------------
  12124. MatchersRanges.tests.cpp:<line number>
  12125. ...............................................................................
  12126. MatchersRanges.tests.cpp:<line number>: PASSED:
  12127. REQUIRE_THAT( data, !NoneTrue() )
  12128. with expansion:
  12129. { false, false, true, false, false } not contains no true
  12130. -------------------------------------------------------------------------------
  12131. Usage of NoneTrue range matcher
  12132. Contained type is convertible to bool
  12133. All false evaluates to true
  12134. -------------------------------------------------------------------------------
  12135. MatchersRanges.tests.cpp:<line number>
  12136. ...............................................................................
  12137. MatchersRanges.tests.cpp:<line number>: PASSED:
  12138. REQUIRE_THAT( data, NoneTrue() )
  12139. with expansion:
  12140. { false, false, false, false, false } contains no true
  12141. -------------------------------------------------------------------------------
  12142. Usage of NoneTrue range matcher
  12143. Shortcircuiting
  12144. All are read
  12145. -------------------------------------------------------------------------------
  12146. MatchersRanges.tests.cpp:<line number>
  12147. ...............................................................................
  12148. MatchersRanges.tests.cpp:<line number>: PASSED:
  12149. REQUIRE_THAT( mocked, NoneTrue() )
  12150. with expansion:
  12151. { false, false, false, false, false } contains no true
  12152. MatchersRanges.tests.cpp:<line number>: PASSED:
  12153. REQUIRE( mocked.m_derefed[0] )
  12154. with expansion:
  12155. true
  12156. MatchersRanges.tests.cpp:<line number>: PASSED:
  12157. REQUIRE( mocked.m_derefed[1] )
  12158. with expansion:
  12159. true
  12160. MatchersRanges.tests.cpp:<line number>: PASSED:
  12161. REQUIRE( mocked.m_derefed[2] )
  12162. with expansion:
  12163. true
  12164. MatchersRanges.tests.cpp:<line number>: PASSED:
  12165. REQUIRE( mocked.m_derefed[3] )
  12166. with expansion:
  12167. true
  12168. MatchersRanges.tests.cpp:<line number>: PASSED:
  12169. REQUIRE( mocked.m_derefed[4] )
  12170. with expansion:
  12171. true
  12172. -------------------------------------------------------------------------------
  12173. Usage of NoneTrue range matcher
  12174. Shortcircuiting
  12175. Short-circuited
  12176. -------------------------------------------------------------------------------
  12177. MatchersRanges.tests.cpp:<line number>
  12178. ...............................................................................
  12179. MatchersRanges.tests.cpp:<line number>: PASSED:
  12180. REQUIRE_THAT( mocked, !NoneTrue() )
  12181. with expansion:
  12182. { false, false, true, true, true } not contains no true
  12183. MatchersRanges.tests.cpp:<line number>: PASSED:
  12184. REQUIRE( mocked.m_derefed[0] )
  12185. with expansion:
  12186. true
  12187. MatchersRanges.tests.cpp:<line number>: PASSED:
  12188. REQUIRE( mocked.m_derefed[1] )
  12189. with expansion:
  12190. true
  12191. MatchersRanges.tests.cpp:<line number>: PASSED:
  12192. REQUIRE( mocked.m_derefed[2] )
  12193. with expansion:
  12194. true
  12195. MatchersRanges.tests.cpp:<line number>: PASSED:
  12196. REQUIRE_FALSE( mocked.m_derefed[3] )
  12197. with expansion:
  12198. !false
  12199. MatchersRanges.tests.cpp:<line number>: PASSED:
  12200. REQUIRE_FALSE( mocked.m_derefed[4] )
  12201. with expansion:
  12202. !false
  12203. -------------------------------------------------------------------------------
  12204. Usage of the SizeIs range matcher
  12205. Some with stdlib containers
  12206. -------------------------------------------------------------------------------
  12207. MatchersRanges.tests.cpp:<line number>
  12208. ...............................................................................
  12209. MatchersRanges.tests.cpp:<line number>: PASSED:
  12210. REQUIRE_THAT( empty_vec, SizeIs(0) )
  12211. with expansion:
  12212. { } has size == 0
  12213. MatchersRanges.tests.cpp:<line number>: PASSED:
  12214. REQUIRE_THAT( empty_vec, !SizeIs(2) )
  12215. with expansion:
  12216. { } not has size == 2
  12217. MatchersRanges.tests.cpp:<line number>: PASSED:
  12218. REQUIRE_THAT( empty_vec, SizeIs(Lt(2)) )
  12219. with expansion:
  12220. { } size matches is less than 2
  12221. MatchersRanges.tests.cpp:<line number>: PASSED:
  12222. REQUIRE_THAT( arr, SizeIs(2) )
  12223. with expansion:
  12224. { 0, 0 } has size == 2
  12225. MatchersRanges.tests.cpp:<line number>: PASSED:
  12226. REQUIRE_THAT( arr, SizeIs( Lt(3)) )
  12227. with expansion:
  12228. { 0, 0 } size matches is less than 3
  12229. MatchersRanges.tests.cpp:<line number>: PASSED:
  12230. REQUIRE_THAT( arr, !SizeIs(!Lt(3)) )
  12231. with expansion:
  12232. { 0, 0 } not size matches not is less than 3
  12233. MatchersRanges.tests.cpp:<line number>: PASSED:
  12234. REQUIRE_THAT( map, SizeIs(3) )
  12235. with expansion:
  12236. { {?}, {?}, {?} } has size == 3
  12237. -------------------------------------------------------------------------------
  12238. Usage of the SizeIs range matcher
  12239. Type requires ADL found size free function
  12240. -------------------------------------------------------------------------------
  12241. MatchersRanges.tests.cpp:<line number>
  12242. ...............................................................................
  12243. MatchersRanges.tests.cpp:<line number>: PASSED:
  12244. REQUIRE_THAT( unrelated::ADL_size{}, SizeIs(12) )
  12245. with expansion:
  12246. {?} has size == 12
  12247. -------------------------------------------------------------------------------
  12248. Usage of the SizeIs range matcher
  12249. Type has size member
  12250. -------------------------------------------------------------------------------
  12251. MatchersRanges.tests.cpp:<line number>
  12252. ...............................................................................
  12253. MatchersRanges.tests.cpp:<line number>: PASSED:
  12254. REQUIRE_THAT( has_size{}, SizeIs(13) )
  12255. with expansion:
  12256. {?} has size == 13
  12257. -------------------------------------------------------------------------------
  12258. Use a custom approx
  12259. -------------------------------------------------------------------------------
  12260. Approx.tests.cpp:<line number>
  12261. ...............................................................................
  12262. Approx.tests.cpp:<line number>: PASSED:
  12263. REQUIRE( d == approx( 1.23 ) )
  12264. with expansion:
  12265. 1.23 == Approx( 1.23 )
  12266. Approx.tests.cpp:<line number>: PASSED:
  12267. REQUIRE( d == approx( 1.22 ) )
  12268. with expansion:
  12269. 1.23 == Approx( 1.22 )
  12270. Approx.tests.cpp:<line number>: PASSED:
  12271. REQUIRE( d == approx( 1.24 ) )
  12272. with expansion:
  12273. 1.23 == Approx( 1.24 )
  12274. Approx.tests.cpp:<line number>: PASSED:
  12275. REQUIRE( d != approx( 1.25 ) )
  12276. with expansion:
  12277. 1.23 != Approx( 1.25 )
  12278. Approx.tests.cpp:<line number>: PASSED:
  12279. REQUIRE( approx( d ) == 1.23 )
  12280. with expansion:
  12281. Approx( 1.23 ) == 1.23
  12282. Approx.tests.cpp:<line number>: PASSED:
  12283. REQUIRE( approx( d ) == 1.22 )
  12284. with expansion:
  12285. Approx( 1.23 ) == 1.22
  12286. Approx.tests.cpp:<line number>: PASSED:
  12287. REQUIRE( approx( d ) == 1.24 )
  12288. with expansion:
  12289. Approx( 1.23 ) == 1.24
  12290. Approx.tests.cpp:<line number>: PASSED:
  12291. REQUIRE( approx( d ) != 1.25 )
  12292. with expansion:
  12293. Approx( 1.23 ) != 1.25
  12294. -------------------------------------------------------------------------------
  12295. Variadic macros
  12296. Section with one argument
  12297. -------------------------------------------------------------------------------
  12298. VariadicMacros.tests.cpp:<line number>
  12299. ...............................................................................
  12300. VariadicMacros.tests.cpp:<line number>: PASSED:
  12301. with message:
  12302. no assertions
  12303. -------------------------------------------------------------------------------
  12304. Vector Approx matcher
  12305. Empty vector is roughly equal to an empty vector
  12306. -------------------------------------------------------------------------------
  12307. Matchers.tests.cpp:<line number>
  12308. ...............................................................................
  12309. Matchers.tests.cpp:<line number>: PASSED:
  12310. REQUIRE_THAT( empty, Approx( empty ) )
  12311. with expansion:
  12312. { } is approx: { }
  12313. -------------------------------------------------------------------------------
  12314. Vector Approx matcher
  12315. Vectors with elements
  12316. A vector is approx equal to itself
  12317. -------------------------------------------------------------------------------
  12318. Matchers.tests.cpp:<line number>
  12319. ...............................................................................
  12320. Matchers.tests.cpp:<line number>: PASSED:
  12321. REQUIRE_THAT( v1, Approx( v1 ) )
  12322. with expansion:
  12323. { 1.0, 2.0, 3.0 } is approx: { 1.0, 2.0, 3.0 }
  12324. Matchers.tests.cpp:<line number>: PASSED:
  12325. REQUIRE_THAT( v1, Approx<double>( { 1., 2., 3. } ) )
  12326. with expansion:
  12327. { 1.0, 2.0, 3.0 } is approx: { 1.0, 2.0, 3.0 }
  12328. -------------------------------------------------------------------------------
  12329. Vector Approx matcher
  12330. Vectors with elements
  12331. Different length
  12332. -------------------------------------------------------------------------------
  12333. Matchers.tests.cpp:<line number>
  12334. ...............................................................................
  12335. Matchers.tests.cpp:<line number>: PASSED:
  12336. REQUIRE_THAT( v1, !Approx( temp ) )
  12337. with expansion:
  12338. { 1.0, 2.0, 3.0 } not is approx: { 1.0, 2.0, 3.0, 4.0 }
  12339. -------------------------------------------------------------------------------
  12340. Vector Approx matcher
  12341. Vectors with elements
  12342. Same length, different elements
  12343. -------------------------------------------------------------------------------
  12344. Matchers.tests.cpp:<line number>
  12345. ...............................................................................
  12346. Matchers.tests.cpp:<line number>: PASSED:
  12347. REQUIRE_THAT( v1, !Approx( v2 ) )
  12348. with expansion:
  12349. { 1.0, 2.0, 3.0 } not is approx: { 1.5, 2.5, 3.5 }
  12350. Matchers.tests.cpp:<line number>: PASSED:
  12351. REQUIRE_THAT( v1, Approx( v2 ).margin( 0.5 ) )
  12352. with expansion:
  12353. { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
  12354. Matchers.tests.cpp:<line number>: PASSED:
  12355. REQUIRE_THAT( v1, Approx( v2 ).epsilon( 0.5 ) )
  12356. with expansion:
  12357. { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
  12358. Matchers.tests.cpp:<line number>: PASSED:
  12359. REQUIRE_THAT( v1, Approx( v2 ).epsilon( 0.1 ).scale( 500 ) )
  12360. with expansion:
  12361. { 1.0, 2.0, 3.0 } is approx: { 1.5, 2.5, 3.5 }
  12362. -------------------------------------------------------------------------------
  12363. Vector Approx matcher -- failing
  12364. Empty and non empty vectors are not approx equal
  12365. -------------------------------------------------------------------------------
  12366. Matchers.tests.cpp:<line number>
  12367. ...............................................................................
  12368. Matchers.tests.cpp:<line number>: FAILED:
  12369. CHECK_THAT( empty, Approx( t1 ) )
  12370. with expansion:
  12371. { } is approx: { 1.0, 2.0 }
  12372. -------------------------------------------------------------------------------
  12373. Vector Approx matcher -- failing
  12374. Just different vectors
  12375. -------------------------------------------------------------------------------
  12376. Matchers.tests.cpp:<line number>
  12377. ...............................................................................
  12378. Matchers.tests.cpp:<line number>: FAILED:
  12379. CHECK_THAT( v1, Approx( v2 ) )
  12380. with expansion:
  12381. { 2.0, 4.0, 6.0 } is approx: { 1.0, 3.0, 5.0 }
  12382. -------------------------------------------------------------------------------
  12383. Vector matchers
  12384. Contains (element)
  12385. -------------------------------------------------------------------------------
  12386. Matchers.tests.cpp:<line number>
  12387. ...............................................................................
  12388. Matchers.tests.cpp:<line number>: PASSED:
  12389. CHECK_THAT( v, VectorContains( 1 ) )
  12390. with expansion:
  12391. { 1, 2, 3 } Contains: 1
  12392. Matchers.tests.cpp:<line number>: PASSED:
  12393. CHECK_THAT( v, VectorContains( 2 ) )
  12394. with expansion:
  12395. { 1, 2, 3 } Contains: 2
  12396. Matchers.tests.cpp:<line number>: PASSED:
  12397. CHECK_THAT( v5, ( VectorContains<int, CustomAllocator<int>>( 2 ) ) )
  12398. with expansion:
  12399. { 1, 2, 3 } Contains: 2
  12400. -------------------------------------------------------------------------------
  12401. Vector matchers
  12402. Contains (vector)
  12403. -------------------------------------------------------------------------------
  12404. Matchers.tests.cpp:<line number>
  12405. ...............................................................................
  12406. Matchers.tests.cpp:<line number>: PASSED:
  12407. CHECK_THAT( v, Contains( v2 ) )
  12408. with expansion:
  12409. { 1, 2, 3 } Contains: { 1, 2 }
  12410. Matchers.tests.cpp:<line number>: PASSED:
  12411. CHECK_THAT( v, Contains<int>( { 1, 2 } ) )
  12412. with expansion:
  12413. { 1, 2, 3 } Contains: { 1, 2 }
  12414. Matchers.tests.cpp:<line number>: PASSED:
  12415. CHECK_THAT( v5, ( Contains<int, std::allocator<int>, CustomAllocator<int>>( v2 ) ) )
  12416. with expansion:
  12417. { 1, 2, 3 } Contains: { 1, 2 }
  12418. Matchers.tests.cpp:<line number>: PASSED:
  12419. CHECK_THAT( v, Contains( v2 ) )
  12420. with expansion:
  12421. { 1, 2, 3 } Contains: { 1, 2, 3 }
  12422. Matchers.tests.cpp:<line number>: PASSED:
  12423. CHECK_THAT( v, Contains( empty ) )
  12424. with expansion:
  12425. { 1, 2, 3 } Contains: { }
  12426. Matchers.tests.cpp:<line number>: PASSED:
  12427. CHECK_THAT( empty, Contains( empty ) )
  12428. with expansion:
  12429. { } Contains: { }
  12430. Matchers.tests.cpp:<line number>: PASSED:
  12431. CHECK_THAT( v5, ( Contains<int, std::allocator<int>, CustomAllocator<int>>( v2 ) ) )
  12432. with expansion:
  12433. { 1, 2, 3 } Contains: { 1, 2, 3 }
  12434. Matchers.tests.cpp:<line number>: PASSED:
  12435. CHECK_THAT( v5, Contains( v6 ) )
  12436. with expansion:
  12437. { 1, 2, 3 } Contains: { 1, 2 }
  12438. -------------------------------------------------------------------------------
  12439. Vector matchers
  12440. Contains (element), composed
  12441. -------------------------------------------------------------------------------
  12442. Matchers.tests.cpp:<line number>
  12443. ...............................................................................
  12444. Matchers.tests.cpp:<line number>: PASSED:
  12445. CHECK_THAT( v, VectorContains( 1 ) && VectorContains( 2 ) )
  12446. with expansion:
  12447. { 1, 2, 3 } ( Contains: 1 and Contains: 2 )
  12448. -------------------------------------------------------------------------------
  12449. Vector matchers
  12450. Equals
  12451. -------------------------------------------------------------------------------
  12452. Matchers.tests.cpp:<line number>
  12453. ...............................................................................
  12454. Matchers.tests.cpp:<line number>: PASSED:
  12455. CHECK_THAT( v, Equals( v ) )
  12456. with expansion:
  12457. { 1, 2, 3 } Equals: { 1, 2, 3 }
  12458. Matchers.tests.cpp:<line number>: PASSED:
  12459. CHECK_THAT( empty, Equals( empty ) )
  12460. with expansion:
  12461. { } Equals: { }
  12462. Matchers.tests.cpp:<line number>: PASSED:
  12463. CHECK_THAT( v, Equals<int>( { 1, 2, 3 } ) )
  12464. with expansion:
  12465. { 1, 2, 3 } Equals: { 1, 2, 3 }
  12466. Matchers.tests.cpp:<line number>: PASSED:
  12467. CHECK_THAT( v, Equals( v2 ) )
  12468. with expansion:
  12469. { 1, 2, 3 } Equals: { 1, 2, 3 }
  12470. Matchers.tests.cpp:<line number>: PASSED:
  12471. CHECK_THAT( v5, ( Equals<int, std::allocator<int>, CustomAllocator<int>>( v2 ) ) )
  12472. with expansion:
  12473. { 1, 2, 3 } Equals: { 1, 2, 3 }
  12474. Matchers.tests.cpp:<line number>: PASSED:
  12475. CHECK_THAT( v5, Equals( v6 ) )
  12476. with expansion:
  12477. { 1, 2, 3 } Equals: { 1, 2, 3 }
  12478. -------------------------------------------------------------------------------
  12479. Vector matchers
  12480. UnorderedEquals
  12481. -------------------------------------------------------------------------------
  12482. Matchers.tests.cpp:<line number>
  12483. ...............................................................................
  12484. Matchers.tests.cpp:<line number>: PASSED:
  12485. CHECK_THAT( v, UnorderedEquals( v ) )
  12486. with expansion:
  12487. { 1, 2, 3 } UnorderedEquals: { 1, 2, 3 }
  12488. Matchers.tests.cpp:<line number>: PASSED:
  12489. CHECK_THAT( v, UnorderedEquals<int>( { 3, 2, 1 } ) )
  12490. with expansion:
  12491. { 1, 2, 3 } UnorderedEquals: { 3, 2, 1 }
  12492. Matchers.tests.cpp:<line number>: PASSED:
  12493. CHECK_THAT( empty, UnorderedEquals( empty ) )
  12494. with expansion:
  12495. { } UnorderedEquals: { }
  12496. Matchers.tests.cpp:<line number>: PASSED:
  12497. REQUIRE_THAT( permuted, UnorderedEquals( v ) )
  12498. with expansion:
  12499. { 1, 3, 2 } UnorderedEquals: { 1, 2, 3 }
  12500. Matchers.tests.cpp:<line number>: PASSED:
  12501. REQUIRE_THAT( permuted, UnorderedEquals( v ) )
  12502. with expansion:
  12503. { 2, 3, 1 } UnorderedEquals: { 1, 2, 3 }
  12504. Matchers.tests.cpp:<line number>: PASSED:
  12505. CHECK_THAT( v5, ( UnorderedEquals<int, std::allocator<int>, CustomAllocator<int>>( permuted ) ) )
  12506. with expansion:
  12507. { 1, 2, 3 } UnorderedEquals: { 2, 3, 1 }
  12508. Matchers.tests.cpp:<line number>: PASSED:
  12509. CHECK_THAT( v5_permuted, UnorderedEquals( v5 ) )
  12510. with expansion:
  12511. { 1, 3, 2 } UnorderedEquals: { 1, 2, 3 }
  12512. -------------------------------------------------------------------------------
  12513. Vector matchers that fail
  12514. Contains (element)
  12515. -------------------------------------------------------------------------------
  12516. Matchers.tests.cpp:<line number>
  12517. ...............................................................................
  12518. Matchers.tests.cpp:<line number>: FAILED:
  12519. CHECK_THAT( v, VectorContains( -1 ) )
  12520. with expansion:
  12521. { 1, 2, 3 } Contains: -1
  12522. Matchers.tests.cpp:<line number>: FAILED:
  12523. CHECK_THAT( empty, VectorContains( 1 ) )
  12524. with expansion:
  12525. { } Contains: 1
  12526. -------------------------------------------------------------------------------
  12527. Vector matchers that fail
  12528. Contains (vector)
  12529. -------------------------------------------------------------------------------
  12530. Matchers.tests.cpp:<line number>
  12531. ...............................................................................
  12532. Matchers.tests.cpp:<line number>: FAILED:
  12533. CHECK_THAT( empty, Contains( v ) )
  12534. with expansion:
  12535. { } Contains: { 1, 2, 3 }
  12536. Matchers.tests.cpp:<line number>: FAILED:
  12537. CHECK_THAT( v, Contains( v2 ) )
  12538. with expansion:
  12539. { 1, 2, 3 } Contains: { 1, 2, 4 }
  12540. -------------------------------------------------------------------------------
  12541. Vector matchers that fail
  12542. Equals
  12543. -------------------------------------------------------------------------------
  12544. Matchers.tests.cpp:<line number>
  12545. ...............................................................................
  12546. Matchers.tests.cpp:<line number>: FAILED:
  12547. CHECK_THAT( v, Equals( v2 ) )
  12548. with expansion:
  12549. { 1, 2, 3 } Equals: { 1, 2 }
  12550. Matchers.tests.cpp:<line number>: FAILED:
  12551. CHECK_THAT( v2, Equals( v ) )
  12552. with expansion:
  12553. { 1, 2 } Equals: { 1, 2, 3 }
  12554. Matchers.tests.cpp:<line number>: FAILED:
  12555. CHECK_THAT( empty, Equals( v ) )
  12556. with expansion:
  12557. { } Equals: { 1, 2, 3 }
  12558. Matchers.tests.cpp:<line number>: FAILED:
  12559. CHECK_THAT( v, Equals( empty ) )
  12560. with expansion:
  12561. { 1, 2, 3 } Equals: { }
  12562. -------------------------------------------------------------------------------
  12563. Vector matchers that fail
  12564. UnorderedEquals
  12565. -------------------------------------------------------------------------------
  12566. Matchers.tests.cpp:<line number>
  12567. ...............................................................................
  12568. Matchers.tests.cpp:<line number>: FAILED:
  12569. CHECK_THAT( v, UnorderedEquals( empty ) )
  12570. with expansion:
  12571. { 1, 2, 3 } UnorderedEquals: { }
  12572. Matchers.tests.cpp:<line number>: FAILED:
  12573. CHECK_THAT( empty, UnorderedEquals( v ) )
  12574. with expansion:
  12575. { } UnorderedEquals: { 1, 2, 3 }
  12576. Matchers.tests.cpp:<line number>: FAILED:
  12577. CHECK_THAT( permuted, UnorderedEquals( v ) )
  12578. with expansion:
  12579. { 1, 3 } UnorderedEquals: { 1, 2, 3 }
  12580. Matchers.tests.cpp:<line number>: FAILED:
  12581. CHECK_THAT( permuted, UnorderedEquals( v ) )
  12582. with expansion:
  12583. { 3, 1 } UnorderedEquals: { 1, 2, 3 }
  12584. -------------------------------------------------------------------------------
  12585. When checked exceptions are thrown they can be expected or unexpected
  12586. -------------------------------------------------------------------------------
  12587. Exception.tests.cpp:<line number>
  12588. ...............................................................................
  12589. Exception.tests.cpp:<line number>: PASSED:
  12590. REQUIRE_THROWS_AS( thisThrows(), std::domain_error )
  12591. Exception.tests.cpp:<line number>: PASSED:
  12592. REQUIRE_NOTHROW( thisDoesntThrow() )
  12593. Exception.tests.cpp:<line number>: PASSED:
  12594. REQUIRE_THROWS( thisThrows() )
  12595. -------------------------------------------------------------------------------
  12596. When unchecked exceptions are thrown directly they are always failures
  12597. -------------------------------------------------------------------------------
  12598. Exception.tests.cpp:<line number>
  12599. ...............................................................................
  12600. Exception.tests.cpp:<line number>: FAILED:
  12601. due to unexpected exception with message:
  12602. unexpected exception
  12603. -------------------------------------------------------------------------------
  12604. When unchecked exceptions are thrown during a CHECK the test should continue
  12605. -------------------------------------------------------------------------------
  12606. Exception.tests.cpp:<line number>
  12607. ...............................................................................
  12608. Exception.tests.cpp:<line number>: FAILED:
  12609. CHECK( thisThrows() == 0 )
  12610. due to unexpected exception with message:
  12611. expected exception
  12612. -------------------------------------------------------------------------------
  12613. When unchecked exceptions are thrown during a REQUIRE the test should abort
  12614. fail
  12615. -------------------------------------------------------------------------------
  12616. Exception.tests.cpp:<line number>
  12617. ...............................................................................
  12618. Exception.tests.cpp:<line number>: FAILED:
  12619. REQUIRE( thisThrows() == 0 )
  12620. due to unexpected exception with message:
  12621. expected exception
  12622. -------------------------------------------------------------------------------
  12623. When unchecked exceptions are thrown from functions they are always failures
  12624. -------------------------------------------------------------------------------
  12625. Exception.tests.cpp:<line number>
  12626. ...............................................................................
  12627. Exception.tests.cpp:<line number>: FAILED:
  12628. CHECK( thisThrows() == 0 )
  12629. due to unexpected exception with message:
  12630. expected exception
  12631. -------------------------------------------------------------------------------
  12632. When unchecked exceptions are thrown from sections they are always failures
  12633. section name
  12634. -------------------------------------------------------------------------------
  12635. Exception.tests.cpp:<line number>
  12636. ...............................................................................
  12637. Exception.tests.cpp:<line number>: FAILED:
  12638. due to unexpected exception with message:
  12639. unexpected exception
  12640. -------------------------------------------------------------------------------
  12641. When unchecked exceptions are thrown, but caught, they do not affect the test
  12642. -------------------------------------------------------------------------------
  12643. Exception.tests.cpp:<line number>
  12644. ...............................................................................
  12645. No assertions in test case 'When unchecked exceptions are thrown, but caught, they do not affect the test'
  12646. -------------------------------------------------------------------------------
  12647. X/level/0/a
  12648. -------------------------------------------------------------------------------
  12649. Tricky.tests.cpp:<line number>
  12650. ...............................................................................
  12651. Tricky.tests.cpp:<line number>: PASSED:
  12652. -------------------------------------------------------------------------------
  12653. X/level/0/b
  12654. -------------------------------------------------------------------------------
  12655. Tricky.tests.cpp:<line number>
  12656. ...............................................................................
  12657. Tricky.tests.cpp:<line number>: PASSED:
  12658. -------------------------------------------------------------------------------
  12659. X/level/1/a
  12660. -------------------------------------------------------------------------------
  12661. Tricky.tests.cpp:<line number>
  12662. ...............................................................................
  12663. Tricky.tests.cpp:<line number>: PASSED:
  12664. -------------------------------------------------------------------------------
  12665. X/level/1/b
  12666. -------------------------------------------------------------------------------
  12667. Tricky.tests.cpp:<line number>
  12668. ...............................................................................
  12669. Tricky.tests.cpp:<line number>: PASSED:
  12670. -------------------------------------------------------------------------------
  12671. XmlEncode
  12672. normal string
  12673. -------------------------------------------------------------------------------
  12674. Xml.tests.cpp:<line number>
  12675. ...............................................................................
  12676. Xml.tests.cpp:<line number>: PASSED:
  12677. REQUIRE( encode( "normal string" ) == "normal string" )
  12678. with expansion:
  12679. "normal string" == "normal string"
  12680. -------------------------------------------------------------------------------
  12681. XmlEncode
  12682. empty string
  12683. -------------------------------------------------------------------------------
  12684. Xml.tests.cpp:<line number>
  12685. ...............................................................................
  12686. Xml.tests.cpp:<line number>: PASSED:
  12687. REQUIRE( encode( "" ) == "" )
  12688. with expansion:
  12689. "" == ""
  12690. -------------------------------------------------------------------------------
  12691. XmlEncode
  12692. string with ampersand
  12693. -------------------------------------------------------------------------------
  12694. Xml.tests.cpp:<line number>
  12695. ...............................................................................
  12696. Xml.tests.cpp:<line number>: PASSED:
  12697. REQUIRE( encode( "smith & jones" ) == "smith &amp; jones" )
  12698. with expansion:
  12699. "smith &amp; jones" == "smith &amp; jones"
  12700. -------------------------------------------------------------------------------
  12701. XmlEncode
  12702. string with less-than
  12703. -------------------------------------------------------------------------------
  12704. Xml.tests.cpp:<line number>
  12705. ...............................................................................
  12706. Xml.tests.cpp:<line number>: PASSED:
  12707. REQUIRE( encode( "smith < jones" ) == "smith &lt; jones" )
  12708. with expansion:
  12709. "smith &lt; jones" == "smith &lt; jones"
  12710. -------------------------------------------------------------------------------
  12711. XmlEncode
  12712. string with greater-than
  12713. -------------------------------------------------------------------------------
  12714. Xml.tests.cpp:<line number>
  12715. ...............................................................................
  12716. Xml.tests.cpp:<line number>: PASSED:
  12717. REQUIRE( encode( "smith > jones" ) == "smith > jones" )
  12718. with expansion:
  12719. "smith > jones" == "smith > jones"
  12720. Xml.tests.cpp:<line number>: PASSED:
  12721. REQUIRE( encode( "smith ]]> jones" ) == "smith ]]&gt; jones" )
  12722. with expansion:
  12723. "smith ]]&gt; jones"
  12724. ==
  12725. "smith ]]&gt; jones"
  12726. -------------------------------------------------------------------------------
  12727. XmlEncode
  12728. string with quotes
  12729. -------------------------------------------------------------------------------
  12730. Xml.tests.cpp:<line number>
  12731. ...............................................................................
  12732. Xml.tests.cpp:<line number>: PASSED:
  12733. REQUIRE( encode( stringWithQuotes ) == stringWithQuotes )
  12734. with expansion:
  12735. "don't "quote" me on that"
  12736. ==
  12737. "don't "quote" me on that"
  12738. Xml.tests.cpp:<line number>: PASSED:
  12739. REQUIRE( encode( stringWithQuotes, Catch::XmlEncode::ForAttributes ) == "don't &quot;quote&quot; me on that" )
  12740. with expansion:
  12741. "don't &quot;quote&quot; me on that"
  12742. ==
  12743. "don't &quot;quote&quot; me on that"
  12744. -------------------------------------------------------------------------------
  12745. XmlEncode
  12746. string with control char (1)
  12747. -------------------------------------------------------------------------------
  12748. Xml.tests.cpp:<line number>
  12749. ...............................................................................
  12750. Xml.tests.cpp:<line number>: PASSED:
  12751. REQUIRE( encode( "[\x01]" ) == "[\\x01]" )
  12752. with expansion:
  12753. "[\x01]" == "[\x01]"
  12754. -------------------------------------------------------------------------------
  12755. XmlEncode
  12756. string with control char (x7F)
  12757. -------------------------------------------------------------------------------
  12758. Xml.tests.cpp:<line number>
  12759. ...............................................................................
  12760. Xml.tests.cpp:<line number>: PASSED:
  12761. REQUIRE( encode( "[\x7F]" ) == "[\\x7F]" )
  12762. with expansion:
  12763. "[\x7F]" == "[\x7F]"
  12764. -------------------------------------------------------------------------------
  12765. XmlWriter writes boolean attributes as true/false
  12766. -------------------------------------------------------------------------------
  12767. Xml.tests.cpp:<line number>
  12768. ...............................................................................
  12769. Xml.tests.cpp:<line number>: PASSED:
  12770. REQUIRE_THAT( stream.str(), ContainsSubstring(R"(attr1="true")") && ContainsSubstring(R"(attr2="false")") )
  12771. with expansion:
  12772. "<?xml version="1.0" encoding="UTF-8"?>
  12773. <Element1 attr1="true" attr2="false"/>
  12774. " ( contains: "attr1="true"" and contains: "attr2="false"" )
  12775. -------------------------------------------------------------------------------
  12776. analyse no analysis
  12777. -------------------------------------------------------------------------------
  12778. InternalBenchmark.tests.cpp:<line number>
  12779. ...............................................................................
  12780. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12781. CHECK( analysis.mean.point.count() == 23 )
  12782. with expansion:
  12783. 23.0 == 23
  12784. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12785. CHECK( analysis.mean.lower_bound.count() == 23 )
  12786. with expansion:
  12787. 23.0 == 23
  12788. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12789. CHECK( analysis.mean.upper_bound.count() == 23 )
  12790. with expansion:
  12791. 23.0 == 23
  12792. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12793. CHECK( analysis.standard_deviation.point.count() == 0 )
  12794. with expansion:
  12795. 0.0 == 0
  12796. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12797. CHECK( analysis.standard_deviation.lower_bound.count() == 0 )
  12798. with expansion:
  12799. 0.0 == 0
  12800. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12801. CHECK( analysis.standard_deviation.upper_bound.count() == 0 )
  12802. with expansion:
  12803. 0.0 == 0
  12804. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12805. CHECK( analysis.outliers.total() == 0 )
  12806. with expansion:
  12807. 0 == 0
  12808. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12809. CHECK( analysis.outliers.low_mild == 0 )
  12810. with expansion:
  12811. 0 == 0
  12812. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12813. CHECK( analysis.outliers.low_severe == 0 )
  12814. with expansion:
  12815. 0 == 0
  12816. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12817. CHECK( analysis.outliers.high_mild == 0 )
  12818. with expansion:
  12819. 0 == 0
  12820. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12821. CHECK( analysis.outliers.high_severe == 0 )
  12822. with expansion:
  12823. 0 == 0
  12824. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12825. CHECK( analysis.outliers.samples_seen == 0 )
  12826. with expansion:
  12827. 0 == 0
  12828. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12829. CHECK( analysis.outlier_variance == 0 )
  12830. with expansion:
  12831. 0.0 == 0
  12832. -------------------------------------------------------------------------------
  12833. array<int, N> -> toString
  12834. -------------------------------------------------------------------------------
  12835. ToStringVector.tests.cpp:<line number>
  12836. ...............................................................................
  12837. ToStringVector.tests.cpp:<line number>: PASSED:
  12838. REQUIRE( Catch::Detail::stringify( empty ) == "{ }" )
  12839. with expansion:
  12840. "{ }" == "{ }"
  12841. ToStringVector.tests.cpp:<line number>: PASSED:
  12842. REQUIRE( Catch::Detail::stringify( oneValue ) == "{ 42 }" )
  12843. with expansion:
  12844. "{ 42 }" == "{ 42 }"
  12845. ToStringVector.tests.cpp:<line number>: PASSED:
  12846. REQUIRE( Catch::Detail::stringify( twoValues ) == "{ 42, 250 }" )
  12847. with expansion:
  12848. "{ 42, 250 }" == "{ 42, 250 }"
  12849. -------------------------------------------------------------------------------
  12850. benchmark function call
  12851. without chronometer
  12852. -------------------------------------------------------------------------------
  12853. InternalBenchmark.tests.cpp:<line number>
  12854. ...............................................................................
  12855. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12856. CHECK( model.started == 1 )
  12857. with expansion:
  12858. 1 == 1
  12859. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12860. CHECK( model.finished == 0 )
  12861. with expansion:
  12862. 0 == 0
  12863. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12864. CHECK( model.started == 1 )
  12865. with expansion:
  12866. 1 == 1
  12867. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12868. CHECK( model.finished == 1 )
  12869. with expansion:
  12870. 1 == 1
  12871. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12872. CHECK( called == 1 )
  12873. with expansion:
  12874. 1 == 1
  12875. -------------------------------------------------------------------------------
  12876. benchmark function call
  12877. with chronometer
  12878. -------------------------------------------------------------------------------
  12879. InternalBenchmark.tests.cpp:<line number>
  12880. ...............................................................................
  12881. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12882. CHECK( model.started == 0 )
  12883. with expansion:
  12884. 0 == 0
  12885. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12886. CHECK( model.finished == 0 )
  12887. with expansion:
  12888. 0 == 0
  12889. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12890. CHECK( model.started == 0 )
  12891. with expansion:
  12892. 0 == 0
  12893. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12894. CHECK( model.finished == 0 )
  12895. with expansion:
  12896. 0 == 0
  12897. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12898. CHECK( called == 1 )
  12899. with expansion:
  12900. 1 == 1
  12901. -------------------------------------------------------------------------------
  12902. boolean member
  12903. -------------------------------------------------------------------------------
  12904. Tricky.tests.cpp:<line number>
  12905. ...............................................................................
  12906. Tricky.tests.cpp:<line number>: PASSED:
  12907. REQUIRE( obj.prop != 0 )
  12908. with expansion:
  12909. 0x<hex digits> != 0
  12910. -------------------------------------------------------------------------------
  12911. checkedElse
  12912. -------------------------------------------------------------------------------
  12913. Misc.tests.cpp:<line number>
  12914. ...............................................................................
  12915. Misc.tests.cpp:<line number>: PASSED:
  12916. CHECKED_ELSE( flag )
  12917. with expansion:
  12918. true
  12919. Misc.tests.cpp:<line number>: PASSED:
  12920. REQUIRE( testCheckedElse( true ) )
  12921. with expansion:
  12922. true
  12923. -------------------------------------------------------------------------------
  12924. checkedElse, failing
  12925. -------------------------------------------------------------------------------
  12926. Misc.tests.cpp:<line number>
  12927. ...............................................................................
  12928. Misc.tests.cpp:<line number>: FAILED - but was ok:
  12929. CHECKED_ELSE( flag )
  12930. with expansion:
  12931. false
  12932. Misc.tests.cpp:<line number>: FAILED:
  12933. REQUIRE( testCheckedElse( false ) )
  12934. with expansion:
  12935. false
  12936. -------------------------------------------------------------------------------
  12937. checkedIf
  12938. -------------------------------------------------------------------------------
  12939. Misc.tests.cpp:<line number>
  12940. ...............................................................................
  12941. Misc.tests.cpp:<line number>: PASSED:
  12942. CHECKED_IF( flag )
  12943. with expansion:
  12944. true
  12945. Misc.tests.cpp:<line number>: PASSED:
  12946. REQUIRE( testCheckedIf( true ) )
  12947. with expansion:
  12948. true
  12949. -------------------------------------------------------------------------------
  12950. checkedIf, failing
  12951. -------------------------------------------------------------------------------
  12952. Misc.tests.cpp:<line number>
  12953. ...............................................................................
  12954. Misc.tests.cpp:<line number>: FAILED - but was ok:
  12955. CHECKED_IF( flag )
  12956. with expansion:
  12957. false
  12958. Misc.tests.cpp:<line number>: FAILED:
  12959. REQUIRE( testCheckedIf( false ) )
  12960. with expansion:
  12961. false
  12962. -------------------------------------------------------------------------------
  12963. classify_outliers
  12964. none
  12965. -------------------------------------------------------------------------------
  12966. InternalBenchmark.tests.cpp:<line number>
  12967. ...............................................................................
  12968. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12969. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  12970. with expansion:
  12971. 6 == 6
  12972. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12973. REQUIRE( o.low_severe == los )
  12974. with expansion:
  12975. 0 == 0
  12976. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12977. REQUIRE( o.low_mild == lom )
  12978. with expansion:
  12979. 0 == 0
  12980. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12981. REQUIRE( o.high_mild == him )
  12982. with expansion:
  12983. 0 == 0
  12984. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12985. REQUIRE( o.high_severe == his )
  12986. with expansion:
  12987. 0 == 0
  12988. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12989. REQUIRE( o.total() == los + lom + him + his )
  12990. with expansion:
  12991. 0 == 0
  12992. -------------------------------------------------------------------------------
  12993. classify_outliers
  12994. low severe
  12995. -------------------------------------------------------------------------------
  12996. InternalBenchmark.tests.cpp:<line number>
  12997. ...............................................................................
  12998. InternalBenchmark.tests.cpp:<line number>: PASSED:
  12999. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  13000. with expansion:
  13001. 6 == 6
  13002. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13003. REQUIRE( o.low_severe == los )
  13004. with expansion:
  13005. 1 == 1
  13006. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13007. REQUIRE( o.low_mild == lom )
  13008. with expansion:
  13009. 0 == 0
  13010. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13011. REQUIRE( o.high_mild == him )
  13012. with expansion:
  13013. 0 == 0
  13014. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13015. REQUIRE( o.high_severe == his )
  13016. with expansion:
  13017. 0 == 0
  13018. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13019. REQUIRE( o.total() == los + lom + him + his )
  13020. with expansion:
  13021. 1 == 1
  13022. -------------------------------------------------------------------------------
  13023. classify_outliers
  13024. low mild
  13025. -------------------------------------------------------------------------------
  13026. InternalBenchmark.tests.cpp:<line number>
  13027. ...............................................................................
  13028. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13029. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  13030. with expansion:
  13031. 6 == 6
  13032. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13033. REQUIRE( o.low_severe == los )
  13034. with expansion:
  13035. 0 == 0
  13036. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13037. REQUIRE( o.low_mild == lom )
  13038. with expansion:
  13039. 1 == 1
  13040. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13041. REQUIRE( o.high_mild == him )
  13042. with expansion:
  13043. 0 == 0
  13044. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13045. REQUIRE( o.high_severe == his )
  13046. with expansion:
  13047. 0 == 0
  13048. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13049. REQUIRE( o.total() == los + lom + him + his )
  13050. with expansion:
  13051. 1 == 1
  13052. -------------------------------------------------------------------------------
  13053. classify_outliers
  13054. high mild
  13055. -------------------------------------------------------------------------------
  13056. InternalBenchmark.tests.cpp:<line number>
  13057. ...............................................................................
  13058. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13059. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  13060. with expansion:
  13061. 6 == 6
  13062. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13063. REQUIRE( o.low_severe == los )
  13064. with expansion:
  13065. 0 == 0
  13066. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13067. REQUIRE( o.low_mild == lom )
  13068. with expansion:
  13069. 0 == 0
  13070. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13071. REQUIRE( o.high_mild == him )
  13072. with expansion:
  13073. 1 == 1
  13074. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13075. REQUIRE( o.high_severe == his )
  13076. with expansion:
  13077. 0 == 0
  13078. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13079. REQUIRE( o.total() == los + lom + him + his )
  13080. with expansion:
  13081. 1 == 1
  13082. -------------------------------------------------------------------------------
  13083. classify_outliers
  13084. high severe
  13085. -------------------------------------------------------------------------------
  13086. InternalBenchmark.tests.cpp:<line number>
  13087. ...............................................................................
  13088. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13089. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  13090. with expansion:
  13091. 6 == 6
  13092. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13093. REQUIRE( o.low_severe == los )
  13094. with expansion:
  13095. 0 == 0
  13096. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13097. REQUIRE( o.low_mild == lom )
  13098. with expansion:
  13099. 0 == 0
  13100. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13101. REQUIRE( o.high_mild == him )
  13102. with expansion:
  13103. 0 == 0
  13104. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13105. REQUIRE( o.high_severe == his )
  13106. with expansion:
  13107. 1 == 1
  13108. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13109. REQUIRE( o.total() == los + lom + him + his )
  13110. with expansion:
  13111. 1 == 1
  13112. -------------------------------------------------------------------------------
  13113. classify_outliers
  13114. mixed
  13115. -------------------------------------------------------------------------------
  13116. InternalBenchmark.tests.cpp:<line number>
  13117. ...............................................................................
  13118. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13119. REQUIRE( o.samples_seen == static_cast<int>(x.size()) )
  13120. with expansion:
  13121. 6 == 6
  13122. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13123. REQUIRE( o.low_severe == los )
  13124. with expansion:
  13125. 1 == 1
  13126. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13127. REQUIRE( o.low_mild == lom )
  13128. with expansion:
  13129. 0 == 0
  13130. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13131. REQUIRE( o.high_mild == him )
  13132. with expansion:
  13133. 1 == 1
  13134. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13135. REQUIRE( o.high_severe == his )
  13136. with expansion:
  13137. 0 == 0
  13138. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13139. REQUIRE( o.total() == los + lom + him + his )
  13140. with expansion:
  13141. 2 == 2
  13142. -------------------------------------------------------------------------------
  13143. comparisons between const int variables
  13144. -------------------------------------------------------------------------------
  13145. Condition.tests.cpp:<line number>
  13146. ...............................................................................
  13147. Condition.tests.cpp:<line number>: PASSED:
  13148. REQUIRE( unsigned_char_var == 1 )
  13149. with expansion:
  13150. 1 == 1
  13151. Condition.tests.cpp:<line number>: PASSED:
  13152. REQUIRE( unsigned_short_var == 1 )
  13153. with expansion:
  13154. 1 == 1
  13155. Condition.tests.cpp:<line number>: PASSED:
  13156. REQUIRE( unsigned_int_var == 1 )
  13157. with expansion:
  13158. 1 == 1
  13159. Condition.tests.cpp:<line number>: PASSED:
  13160. REQUIRE( unsigned_long_var == 1 )
  13161. with expansion:
  13162. 1 == 1
  13163. -------------------------------------------------------------------------------
  13164. comparisons between int variables
  13165. -------------------------------------------------------------------------------
  13166. Condition.tests.cpp:<line number>
  13167. ...............................................................................
  13168. Condition.tests.cpp:<line number>: PASSED:
  13169. REQUIRE( long_var == unsigned_char_var )
  13170. with expansion:
  13171. 1 == 1
  13172. Condition.tests.cpp:<line number>: PASSED:
  13173. REQUIRE( long_var == unsigned_short_var )
  13174. with expansion:
  13175. 1 == 1
  13176. Condition.tests.cpp:<line number>: PASSED:
  13177. REQUIRE( long_var == unsigned_int_var )
  13178. with expansion:
  13179. 1 == 1
  13180. Condition.tests.cpp:<line number>: PASSED:
  13181. REQUIRE( long_var == unsigned_long_var )
  13182. with expansion:
  13183. 1 == 1
  13184. -------------------------------------------------------------------------------
  13185. convertToBits
  13186. -------------------------------------------------------------------------------
  13187. FloatingPoint.tests.cpp:<line number>
  13188. ...............................................................................
  13189. FloatingPoint.tests.cpp:<line number>: PASSED:
  13190. CHECK( convertToBits( 0.f ) == 0 )
  13191. with expansion:
  13192. 0 == 0
  13193. FloatingPoint.tests.cpp:<line number>: PASSED:
  13194. CHECK( convertToBits( -0.f ) == ( 1ULL << 31 ) )
  13195. with expansion:
  13196. 2147483648 (0x<hex digits>)
  13197. ==
  13198. 2147483648 (0x<hex digits>)
  13199. FloatingPoint.tests.cpp:<line number>: PASSED:
  13200. CHECK( convertToBits( 0. ) == 0 )
  13201. with expansion:
  13202. 0 == 0
  13203. FloatingPoint.tests.cpp:<line number>: PASSED:
  13204. CHECK( convertToBits( -0. ) == ( 1ULL << 63 ) )
  13205. with expansion:
  13206. 9223372036854775808 (0x<hex digits>)
  13207. ==
  13208. 9223372036854775808 (0x<hex digits>)
  13209. FloatingPoint.tests.cpp:<line number>: PASSED:
  13210. CHECK( convertToBits( std::numeric_limits<float>::denorm_min() ) == 1 )
  13211. with expansion:
  13212. 1 == 1
  13213. FloatingPoint.tests.cpp:<line number>: PASSED:
  13214. CHECK( convertToBits( std::numeric_limits<double>::denorm_min() ) == 1 )
  13215. with expansion:
  13216. 1 == 1
  13217. -------------------------------------------------------------------------------
  13218. empty tags are not allowed
  13219. -------------------------------------------------------------------------------
  13220. Tag.tests.cpp:<line number>
  13221. ...............................................................................
  13222. Tag.tests.cpp:<line number>: PASSED:
  13223. REQUIRE_THROWS( Catch::TestCaseInfo("", { "test with an empty tag", "[]" }, dummySourceLineInfo) )
  13224. -------------------------------------------------------------------------------
  13225. erfc_inv
  13226. -------------------------------------------------------------------------------
  13227. InternalBenchmark.tests.cpp:<line number>
  13228. ...............................................................................
  13229. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13230. CHECK( erfc_inv(1.103560) == Approx(-0.09203687623843015) )
  13231. with expansion:
  13232. -0.0920368762 == Approx( -0.0920368762 )
  13233. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13234. CHECK( erfc_inv(1.067400) == Approx(-0.05980291115763361) )
  13235. with expansion:
  13236. -0.0598029112 == Approx( -0.0598029112 )
  13237. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13238. CHECK( erfc_inv(0.050000) == Approx(1.38590382434967796) )
  13239. with expansion:
  13240. 1.3859038243 == Approx( 1.3859038243 )
  13241. -------------------------------------------------------------------------------
  13242. estimate_clock_resolution
  13243. -------------------------------------------------------------------------------
  13244. InternalBenchmark.tests.cpp:<line number>
  13245. ...............................................................................
  13246. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13247. REQUIRE( res.mean.count() == rate )
  13248. with expansion:
  13249. 2000.0 == 2000 (0x<hex digits>)
  13250. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13251. REQUIRE( res.outliers.total() == 0 )
  13252. with expansion:
  13253. 0 == 0
  13254. -------------------------------------------------------------------------------
  13255. even more nested SECTION tests
  13256. c
  13257. d (leaf)
  13258. -------------------------------------------------------------------------------
  13259. Misc.tests.cpp:<line number>
  13260. ...............................................................................
  13261. Misc.tests.cpp:<line number>: PASSED:
  13262. -------------------------------------------------------------------------------
  13263. even more nested SECTION tests
  13264. c
  13265. e (leaf)
  13266. -------------------------------------------------------------------------------
  13267. Misc.tests.cpp:<line number>
  13268. ...............................................................................
  13269. Misc.tests.cpp:<line number>: PASSED:
  13270. -------------------------------------------------------------------------------
  13271. even more nested SECTION tests
  13272. f (leaf)
  13273. -------------------------------------------------------------------------------
  13274. Misc.tests.cpp:<line number>
  13275. ...............................................................................
  13276. Misc.tests.cpp:<line number>: PASSED:
  13277. -------------------------------------------------------------------------------
  13278. first tag
  13279. -------------------------------------------------------------------------------
  13280. Misc.tests.cpp:<line number>
  13281. ...............................................................................
  13282. No assertions in test case 'first tag'
  13283. -------------------------------------------------------------------------------
  13284. has printf
  13285. -------------------------------------------------------------------------------
  13286. Tricky.tests.cpp:<line number>
  13287. ...............................................................................
  13288. No assertions in test case 'has printf'
  13289. -------------------------------------------------------------------------------
  13290. is_unary_function
  13291. -------------------------------------------------------------------------------
  13292. Clara.tests.cpp:<line number>
  13293. ...............................................................................
  13294. Clara.tests.cpp:<line number>: PASSED:
  13295. with message:
  13296. Catch::Clara::Detail::is_unary_function<decltype(unary1)>::value
  13297. Clara.tests.cpp:<line number>: PASSED:
  13298. with message:
  13299. Catch::Clara::Detail::is_unary_function<decltype(unary2)>::value
  13300. Clara.tests.cpp:<line number>: PASSED:
  13301. with message:
  13302. Catch::Clara::Detail::is_unary_function<decltype(unary3)>::value
  13303. Clara.tests.cpp:<line number>: PASSED:
  13304. with message:
  13305. Catch::Clara::Detail::is_unary_function<decltype(unary4)>::value
  13306. Clara.tests.cpp:<line number>: PASSED:
  13307. with message:
  13308. Catch::Clara::Detail::is_unary_function<decltype(unary5)>::value
  13309. Clara.tests.cpp:<line number>: PASSED:
  13310. with message:
  13311. Catch::Clara::Detail::is_unary_function<decltype(unary6)>::value
  13312. Clara.tests.cpp:<line number>: PASSED:
  13313. with message:
  13314. !(Catch::Clara::Detail::is_unary_function<decltype(binary1)>::value)
  13315. Clara.tests.cpp:<line number>: PASSED:
  13316. with message:
  13317. !(Catch::Clara::Detail::is_unary_function<decltype(binary2)>::value)
  13318. Clara.tests.cpp:<line number>: PASSED:
  13319. with message:
  13320. !(Catch::Clara::Detail::is_unary_function<decltype(nullary1)>::value)
  13321. Clara.tests.cpp:<line number>: PASSED:
  13322. with message:
  13323. !(Catch::Clara::Detail::is_unary_function<decltype(nullary2)>::value)
  13324. Clara.tests.cpp:<line number>: PASSED:
  13325. with message:
  13326. !(Catch::Clara::Detail::is_unary_function<int>::value)
  13327. Clara.tests.cpp:<line number>: PASSED:
  13328. with message:
  13329. !(Catch::Clara::Detail::is_unary_function<std::string const&>::value)
  13330. -------------------------------------------------------------------------------
  13331. just failure
  13332. -------------------------------------------------------------------------------
  13333. Message.tests.cpp:<line number>
  13334. ...............................................................................
  13335. Message.tests.cpp:<line number>: FAILED:
  13336. explicitly with message:
  13337. Previous info should not be seen
  13338. -------------------------------------------------------------------------------
  13339. just failure after unscoped info
  13340. -------------------------------------------------------------------------------
  13341. Message.tests.cpp:<line number>
  13342. ...............................................................................
  13343. Message.tests.cpp:<line number>: FAILED:
  13344. explicitly with message:
  13345. previous unscoped info SHOULD not be seen
  13346. -------------------------------------------------------------------------------
  13347. just info
  13348. -------------------------------------------------------------------------------
  13349. Message.tests.cpp:<line number>
  13350. ...............................................................................
  13351. No assertions in test case 'just info'
  13352. -------------------------------------------------------------------------------
  13353. just unscoped info
  13354. -------------------------------------------------------------------------------
  13355. Message.tests.cpp:<line number>
  13356. ...............................................................................
  13357. No assertions in test case 'just unscoped info'
  13358. -------------------------------------------------------------------------------
  13359. long long
  13360. -------------------------------------------------------------------------------
  13361. Misc.tests.cpp:<line number>
  13362. ...............................................................................
  13363. Misc.tests.cpp:<line number>: PASSED:
  13364. REQUIRE( l == std::numeric_limits<long long>::max() )
  13365. with expansion:
  13366. 9223372036854775807 (0x<hex digits>)
  13367. ==
  13368. 9223372036854775807 (0x<hex digits>)
  13369. -------------------------------------------------------------------------------
  13370. looped SECTION tests
  13371. b is currently: 0
  13372. -------------------------------------------------------------------------------
  13373. Misc.tests.cpp:<line number>
  13374. ...............................................................................
  13375. Misc.tests.cpp:<line number>: FAILED:
  13376. CHECK( b > a )
  13377. with expansion:
  13378. 0 > 1
  13379. -------------------------------------------------------------------------------
  13380. looped SECTION tests
  13381. b is currently: 1
  13382. -------------------------------------------------------------------------------
  13383. Misc.tests.cpp:<line number>
  13384. ...............................................................................
  13385. Misc.tests.cpp:<line number>: FAILED:
  13386. CHECK( b > a )
  13387. with expansion:
  13388. 1 > 1
  13389. -------------------------------------------------------------------------------
  13390. looped SECTION tests
  13391. b is currently: 2
  13392. -------------------------------------------------------------------------------
  13393. Misc.tests.cpp:<line number>
  13394. ...............................................................................
  13395. Misc.tests.cpp:<line number>: PASSED:
  13396. CHECK( b > a )
  13397. with expansion:
  13398. 2 > 1
  13399. -------------------------------------------------------------------------------
  13400. looped SECTION tests
  13401. b is currently: 3
  13402. -------------------------------------------------------------------------------
  13403. Misc.tests.cpp:<line number>
  13404. ...............................................................................
  13405. Misc.tests.cpp:<line number>: PASSED:
  13406. CHECK( b > a )
  13407. with expansion:
  13408. 3 > 1
  13409. -------------------------------------------------------------------------------
  13410. looped SECTION tests
  13411. b is currently: 4
  13412. -------------------------------------------------------------------------------
  13413. Misc.tests.cpp:<line number>
  13414. ...............................................................................
  13415. Misc.tests.cpp:<line number>: PASSED:
  13416. CHECK( b > a )
  13417. with expansion:
  13418. 4 > 1
  13419. -------------------------------------------------------------------------------
  13420. looped SECTION tests
  13421. b is currently: 5
  13422. -------------------------------------------------------------------------------
  13423. Misc.tests.cpp:<line number>
  13424. ...............................................................................
  13425. Misc.tests.cpp:<line number>: PASSED:
  13426. CHECK( b > a )
  13427. with expansion:
  13428. 5 > 1
  13429. -------------------------------------------------------------------------------
  13430. looped SECTION tests
  13431. b is currently: 6
  13432. -------------------------------------------------------------------------------
  13433. Misc.tests.cpp:<line number>
  13434. ...............................................................................
  13435. Misc.tests.cpp:<line number>: PASSED:
  13436. CHECK( b > a )
  13437. with expansion:
  13438. 6 > 1
  13439. -------------------------------------------------------------------------------
  13440. looped SECTION tests
  13441. b is currently: 7
  13442. -------------------------------------------------------------------------------
  13443. Misc.tests.cpp:<line number>
  13444. ...............................................................................
  13445. Misc.tests.cpp:<line number>: PASSED:
  13446. CHECK( b > a )
  13447. with expansion:
  13448. 7 > 1
  13449. -------------------------------------------------------------------------------
  13450. looped SECTION tests
  13451. b is currently: 8
  13452. -------------------------------------------------------------------------------
  13453. Misc.tests.cpp:<line number>
  13454. ...............................................................................
  13455. Misc.tests.cpp:<line number>: PASSED:
  13456. CHECK( b > a )
  13457. with expansion:
  13458. 8 > 1
  13459. -------------------------------------------------------------------------------
  13460. looped SECTION tests
  13461. b is currently: 9
  13462. -------------------------------------------------------------------------------
  13463. Misc.tests.cpp:<line number>
  13464. ...............................................................................
  13465. Misc.tests.cpp:<line number>: PASSED:
  13466. CHECK( b > a )
  13467. with expansion:
  13468. 9 > 1
  13469. -------------------------------------------------------------------------------
  13470. looped tests
  13471. -------------------------------------------------------------------------------
  13472. Misc.tests.cpp:<line number>
  13473. ...............................................................................
  13474. Misc.tests.cpp:<line number>: FAILED:
  13475. CHECK( ( fib[i] % 2 ) == 0 )
  13476. with expansion:
  13477. 1 == 0
  13478. with message:
  13479. Testing if fib[0] (1) is even
  13480. Misc.tests.cpp:<line number>: FAILED:
  13481. CHECK( ( fib[i] % 2 ) == 0 )
  13482. with expansion:
  13483. 1 == 0
  13484. with message:
  13485. Testing if fib[1] (1) is even
  13486. Misc.tests.cpp:<line number>: PASSED:
  13487. CHECK( ( fib[i] % 2 ) == 0 )
  13488. with expansion:
  13489. 0 == 0
  13490. with message:
  13491. Testing if fib[2] (2) is even
  13492. Misc.tests.cpp:<line number>: FAILED:
  13493. CHECK( ( fib[i] % 2 ) == 0 )
  13494. with expansion:
  13495. 1 == 0
  13496. with message:
  13497. Testing if fib[3] (3) is even
  13498. Misc.tests.cpp:<line number>: FAILED:
  13499. CHECK( ( fib[i] % 2 ) == 0 )
  13500. with expansion:
  13501. 1 == 0
  13502. with message:
  13503. Testing if fib[4] (5) is even
  13504. Misc.tests.cpp:<line number>: PASSED:
  13505. CHECK( ( fib[i] % 2 ) == 0 )
  13506. with expansion:
  13507. 0 == 0
  13508. with message:
  13509. Testing if fib[5] (8) is even
  13510. Misc.tests.cpp:<line number>: FAILED:
  13511. CHECK( ( fib[i] % 2 ) == 0 )
  13512. with expansion:
  13513. 1 == 0
  13514. with message:
  13515. Testing if fib[6] (13) is even
  13516. Misc.tests.cpp:<line number>: FAILED:
  13517. CHECK( ( fib[i] % 2 ) == 0 )
  13518. with expansion:
  13519. 1 == 0
  13520. with message:
  13521. Testing if fib[7] (21) is even
  13522. -------------------------------------------------------------------------------
  13523. makeStream recognizes %debug stream name
  13524. -------------------------------------------------------------------------------
  13525. Stream.tests.cpp:<line number>
  13526. ...............................................................................
  13527. Stream.tests.cpp:<line number>: PASSED:
  13528. REQUIRE_NOTHROW( Catch::makeStream( "%debug" ) )
  13529. -------------------------------------------------------------------------------
  13530. make_unique reimplementation
  13531. From lvalue copies
  13532. -------------------------------------------------------------------------------
  13533. UniquePtr.tests.cpp:<line number>
  13534. ...............................................................................
  13535. UniquePtr.tests.cpp:<line number>: PASSED:
  13536. REQUIRE_FALSE( lval.has_moved )
  13537. with expansion:
  13538. !false
  13539. -------------------------------------------------------------------------------
  13540. make_unique reimplementation
  13541. From rvalue moves
  13542. -------------------------------------------------------------------------------
  13543. UniquePtr.tests.cpp:<line number>
  13544. ...............................................................................
  13545. UniquePtr.tests.cpp:<line number>: PASSED:
  13546. REQUIRE( rval.has_moved )
  13547. with expansion:
  13548. true
  13549. -------------------------------------------------------------------------------
  13550. make_unique reimplementation
  13551. Variadic constructor
  13552. -------------------------------------------------------------------------------
  13553. UniquePtr.tests.cpp:<line number>
  13554. ...............................................................................
  13555. UniquePtr.tests.cpp:<line number>: PASSED:
  13556. REQUIRE( *ptr == std::tuple<int, double, int>{1, 2., 3} )
  13557. with expansion:
  13558. {?} == {?}
  13559. -------------------------------------------------------------------------------
  13560. mean
  13561. -------------------------------------------------------------------------------
  13562. InternalBenchmark.tests.cpp:<line number>
  13563. ...............................................................................
  13564. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13565. REQUIRE( m == 19. )
  13566. with expansion:
  13567. 19.0 == 19.0
  13568. -------------------------------------------------------------------------------
  13569. measure
  13570. -------------------------------------------------------------------------------
  13571. InternalBenchmark.tests.cpp:<line number>
  13572. ...............................................................................
  13573. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13574. CHECK( x == 17 )
  13575. with expansion:
  13576. 17 == 17
  13577. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13578. CHECK( x == 23 )
  13579. with expansion:
  13580. 23 == 23
  13581. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13582. CHECK( r.elapsed.count() == 42 )
  13583. with expansion:
  13584. 42 == 42
  13585. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13586. CHECK( r.result == 23 )
  13587. with expansion:
  13588. 23 == 23
  13589. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13590. CHECK( r.iterations == 1 )
  13591. with expansion:
  13592. 1 == 1
  13593. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13594. CHECK( s.elapsed.count() == 69 )
  13595. with expansion:
  13596. 69 == 69
  13597. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13598. CHECK( s.result == 17 )
  13599. with expansion:
  13600. 17 == 17
  13601. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13602. CHECK( s.iterations == 1 )
  13603. with expansion:
  13604. 1 == 1
  13605. -------------------------------------------------------------------------------
  13606. mix info, unscoped info and warning
  13607. -------------------------------------------------------------------------------
  13608. Message.tests.cpp:<line number>
  13609. ...............................................................................
  13610. Message.tests.cpp:<line number>: warning:
  13611. info
  13612. unscoped info
  13613. and warn may mix
  13614. Message.tests.cpp:<line number>: warning:
  13615. info
  13616. unscoped info
  13617. they are not cleared after warnings
  13618. No assertions in test case 'mix info, unscoped info and warning'
  13619. -------------------------------------------------------------------------------
  13620. more nested SECTION tests
  13621. doesn't equal
  13622. equal
  13623. -------------------------------------------------------------------------------
  13624. Misc.tests.cpp:<line number>
  13625. ...............................................................................
  13626. Misc.tests.cpp:<line number>: FAILED:
  13627. REQUIRE( a == b )
  13628. with expansion:
  13629. 1 == 2
  13630. -------------------------------------------------------------------------------
  13631. more nested SECTION tests
  13632. doesn't equal
  13633. not equal
  13634. -------------------------------------------------------------------------------
  13635. Misc.tests.cpp:<line number>
  13636. ...............................................................................
  13637. Misc.tests.cpp:<line number>: PASSED:
  13638. REQUIRE( a != b )
  13639. with expansion:
  13640. 1 != 2
  13641. -------------------------------------------------------------------------------
  13642. more nested SECTION tests
  13643. doesn't equal
  13644. less than
  13645. -------------------------------------------------------------------------------
  13646. Misc.tests.cpp:<line number>
  13647. ...............................................................................
  13648. Misc.tests.cpp:<line number>: PASSED:
  13649. REQUIRE( a < b )
  13650. with expansion:
  13651. 1 < 2
  13652. -------------------------------------------------------------------------------
  13653. nested SECTION tests
  13654. doesn't equal
  13655. -------------------------------------------------------------------------------
  13656. Misc.tests.cpp:<line number>
  13657. ...............................................................................
  13658. Misc.tests.cpp:<line number>: PASSED:
  13659. REQUIRE( a != b )
  13660. with expansion:
  13661. 1 != 2
  13662. Misc.tests.cpp:<line number>: PASSED:
  13663. REQUIRE( b != a )
  13664. with expansion:
  13665. 2 != 1
  13666. -------------------------------------------------------------------------------
  13667. nested SECTION tests
  13668. doesn't equal
  13669. not equal
  13670. -------------------------------------------------------------------------------
  13671. Misc.tests.cpp:<line number>
  13672. ...............................................................................
  13673. Misc.tests.cpp:<line number>: PASSED:
  13674. REQUIRE( a != b )
  13675. with expansion:
  13676. 1 != 2
  13677. -------------------------------------------------------------------------------
  13678. non streamable - with conv. op
  13679. -------------------------------------------------------------------------------
  13680. Tricky.tests.cpp:<line number>
  13681. ...............................................................................
  13682. Tricky.tests.cpp:<line number>: PASSED:
  13683. REQUIRE( s == "7" )
  13684. with expansion:
  13685. "7" == "7"
  13686. -------------------------------------------------------------------------------
  13687. non-copyable objects
  13688. -------------------------------------------------------------------------------
  13689. Tricky.tests.cpp:<line number>
  13690. ...............................................................................
  13691. Tricky.tests.cpp:<line number>: PASSED:
  13692. CHECK( ti == typeid(int) )
  13693. with expansion:
  13694. {?} == {?}
  13695. -------------------------------------------------------------------------------
  13696. normal_cdf
  13697. -------------------------------------------------------------------------------
  13698. InternalBenchmark.tests.cpp:<line number>
  13699. ...............................................................................
  13700. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13701. CHECK( normal_cdf(0.000000) == Approx(0.50000000000000000) )
  13702. with expansion:
  13703. 0.5 == Approx( 0.5 )
  13704. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13705. CHECK( normal_cdf(1.000000) == Approx(0.84134474606854293) )
  13706. with expansion:
  13707. 0.8413447461 == Approx( 0.8413447461 )
  13708. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13709. CHECK( normal_cdf(-1.000000) == Approx(0.15865525393145705) )
  13710. with expansion:
  13711. 0.1586552539 == Approx( 0.1586552539 )
  13712. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13713. CHECK( normal_cdf(2.809729) == Approx(0.99752083845315409) )
  13714. with expansion:
  13715. 0.9975208385 == Approx( 0.9975208385 )
  13716. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13717. CHECK( normal_cdf(-1.352570) == Approx(0.08809652095066035) )
  13718. with expansion:
  13719. 0.088096521 == Approx( 0.088096521 )
  13720. -------------------------------------------------------------------------------
  13721. normal_quantile
  13722. -------------------------------------------------------------------------------
  13723. InternalBenchmark.tests.cpp:<line number>
  13724. ...............................................................................
  13725. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13726. CHECK( normal_quantile(0.551780) == Approx(0.13015979861484198) )
  13727. with expansion:
  13728. 0.1301597986 == Approx( 0.1301597986 )
  13729. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13730. CHECK( normal_quantile(0.533700) == Approx(0.08457408802851875) )
  13731. with expansion:
  13732. 0.084574088 == Approx( 0.084574088 )
  13733. InternalBenchmark.tests.cpp:<line number>: PASSED:
  13734. CHECK( normal_quantile(0.025000) == Approx(-1.95996398454005449) )
  13735. with expansion:
  13736. -1.9599639845 == Approx( -1.9599639845 )
  13737. -------------------------------------------------------------------------------
  13738. not allowed
  13739. -------------------------------------------------------------------------------
  13740. Misc.tests.cpp:<line number>
  13741. ...............................................................................
  13742. Misc.tests.cpp:<line number>: PASSED:
  13743. -------------------------------------------------------------------------------
  13744. not prints unscoped info from previous failures
  13745. -------------------------------------------------------------------------------
  13746. Message.tests.cpp:<line number>
  13747. ...............................................................................
  13748. Message.tests.cpp:<line number>: PASSED:
  13749. REQUIRE( true )
  13750. with message:
  13751. this MAY be seen only for the FIRST assertion IF info is printed for passing
  13752. assertions
  13753. Message.tests.cpp:<line number>: PASSED:
  13754. REQUIRE( true )
  13755. with message:
  13756. this MAY be seen only for the SECOND assertion IF info is printed for passing
  13757. assertions
  13758. Message.tests.cpp:<line number>: FAILED:
  13759. REQUIRE( false )
  13760. with message:
  13761. this SHOULD be seen
  13762. -------------------------------------------------------------------------------
  13763. null strings
  13764. -------------------------------------------------------------------------------
  13765. Misc.tests.cpp:<line number>
  13766. ...............................................................................
  13767. Misc.tests.cpp:<line number>: PASSED:
  13768. REQUIRE( makeString( false ) != static_cast<char*>(0) )
  13769. with expansion:
  13770. "valid string" != {null string}
  13771. Misc.tests.cpp:<line number>: PASSED:
  13772. REQUIRE( makeString( true ) == static_cast<char*>(0) )
  13773. with expansion:
  13774. {null string} == {null string}
  13775. -------------------------------------------------------------------------------
  13776. null_ptr
  13777. -------------------------------------------------------------------------------
  13778. Tricky.tests.cpp:<line number>
  13779. ...............................................................................
  13780. Tricky.tests.cpp:<line number>: PASSED:
  13781. REQUIRE( ptr.get() == 0 )
  13782. with expansion:
  13783. 0 == 0
  13784. -------------------------------------------------------------------------------
  13785. pair<pair<int,const char *,pair<std::string,int> > -> toString
  13786. -------------------------------------------------------------------------------
  13787. ToStringPair.tests.cpp:<line number>
  13788. ...............................................................................
  13789. ToStringPair.tests.cpp:<line number>: PASSED:
  13790. REQUIRE( ::Catch::Detail::stringify( pair ) == "{ { 42, \"Arthur\" }, { \"Ford\", 24 } }" )
  13791. with expansion:
  13792. "{ { 42, "Arthur" }, { "Ford", 24 } }"
  13793. ==
  13794. "{ { 42, "Arthur" }, { "Ford", 24 } }"
  13795. -------------------------------------------------------------------------------
  13796. parseEnums
  13797. No enums
  13798. -------------------------------------------------------------------------------
  13799. ToString.tests.cpp:<line number>
  13800. ...............................................................................
  13801. ToString.tests.cpp:<line number>: PASSED:
  13802. CHECK_THAT( parseEnums( "" ), Equals( std::vector<Catch::StringRef>{} ) )
  13803. with expansion:
  13804. { } Equals: { }
  13805. -------------------------------------------------------------------------------
  13806. parseEnums
  13807. One enum value
  13808. -------------------------------------------------------------------------------
  13809. ToString.tests.cpp:<line number>
  13810. ...............................................................................
  13811. ToString.tests.cpp:<line number>: PASSED:
  13812. CHECK_THAT( parseEnums( "ClassName::EnumName::Value1" ), Equals(std::vector<Catch::StringRef>{"Value1"} ) )
  13813. with expansion:
  13814. { Value1 } Equals: { Value1 }
  13815. ToString.tests.cpp:<line number>: PASSED:
  13816. CHECK_THAT( parseEnums( "Value1" ), Equals( std::vector<Catch::StringRef>{"Value1"} ) )
  13817. with expansion:
  13818. { Value1 } Equals: { Value1 }
  13819. ToString.tests.cpp:<line number>: PASSED:
  13820. CHECK_THAT( parseEnums( "EnumName::Value1" ), Equals(std::vector<Catch::StringRef>{"Value1"} ) )
  13821. with expansion:
  13822. { Value1 } Equals: { Value1 }
  13823. -------------------------------------------------------------------------------
  13824. parseEnums
  13825. Multiple enum values
  13826. -------------------------------------------------------------------------------
  13827. ToString.tests.cpp:<line number>
  13828. ...............................................................................
  13829. ToString.tests.cpp:<line number>: PASSED:
  13830. CHECK_THAT( parseEnums( "ClassName::EnumName::Value1, ClassName::EnumName::Value2" ), Equals( std::vector<Catch::StringRef>{"Value1", "Value2"} ) )
  13831. with expansion:
  13832. { Value1, Value2 } Equals: { Value1, Value2 }
  13833. ToString.tests.cpp:<line number>: PASSED:
  13834. CHECK_THAT( parseEnums( "ClassName::EnumName::Value1, ClassName::EnumName::Value2, ClassName::EnumName::Value3" ), Equals( std::vector<Catch::StringRef>{"Value1", "Value2", "Value3"} ) )
  13835. with expansion:
  13836. { Value1, Value2, Value3 } Equals: { Value1, Value2, Value3 }
  13837. ToString.tests.cpp:<line number>: PASSED:
  13838. CHECK_THAT( parseEnums( "ClassName::EnumName::Value1,ClassName::EnumName::Value2 , ClassName::EnumName::Value3" ), Equals( std::vector<Catch::StringRef>{"Value1", "Value2", "Value3"} ) )
  13839. with expansion:
  13840. { Value1, Value2, Value3 } Equals: { Value1, Value2, Value3 }
  13841. -------------------------------------------------------------------------------
  13842. pointer to class
  13843. -------------------------------------------------------------------------------
  13844. Tricky.tests.cpp:<line number>
  13845. ...............................................................................
  13846. Tricky.tests.cpp:<line number>: PASSED:
  13847. REQUIRE( p == 0 )
  13848. with expansion:
  13849. 0 == 0
  13850. -------------------------------------------------------------------------------
  13851. print unscoped info if passing unscoped info is printed
  13852. -------------------------------------------------------------------------------
  13853. Message.tests.cpp:<line number>
  13854. ...............................................................................
  13855. Message.tests.cpp:<line number>: PASSED:
  13856. REQUIRE( true )
  13857. with message:
  13858. this MAY be seen IF info is printed for passing assertions
  13859. -------------------------------------------------------------------------------
  13860. prints unscoped info on failure
  13861. -------------------------------------------------------------------------------
  13862. Message.tests.cpp:<line number>
  13863. ...............................................................................
  13864. Message.tests.cpp:<line number>: FAILED:
  13865. REQUIRE( false )
  13866. with messages:
  13867. this SHOULD be seen
  13868. this SHOULD also be seen
  13869. -------------------------------------------------------------------------------
  13870. prints unscoped info only for the first assertion
  13871. -------------------------------------------------------------------------------
  13872. Message.tests.cpp:<line number>
  13873. ...............................................................................
  13874. Message.tests.cpp:<line number>: FAILED:
  13875. CHECK( false )
  13876. with message:
  13877. this SHOULD be seen only ONCE
  13878. Message.tests.cpp:<line number>: PASSED:
  13879. CHECK( true )
  13880. Message.tests.cpp:<line number>: PASSED:
  13881. CHECK( true )
  13882. with message:
  13883. this MAY also be seen only ONCE IF info is printed for passing assertions
  13884. Message.tests.cpp:<line number>: PASSED:
  13885. CHECK( true )
  13886. -------------------------------------------------------------------------------
  13887. random SECTION tests
  13888. doesn't equal
  13889. -------------------------------------------------------------------------------
  13890. Misc.tests.cpp:<line number>
  13891. ...............................................................................
  13892. Misc.tests.cpp:<line number>: PASSED:
  13893. REQUIRE( a != b )
  13894. with expansion:
  13895. 1 != 2
  13896. Misc.tests.cpp:<line number>: PASSED:
  13897. REQUIRE( b != a )
  13898. with expansion:
  13899. 2 != 1
  13900. -------------------------------------------------------------------------------
  13901. random SECTION tests
  13902. not equal
  13903. -------------------------------------------------------------------------------
  13904. Misc.tests.cpp:<line number>
  13905. ...............................................................................
  13906. Misc.tests.cpp:<line number>: PASSED:
  13907. REQUIRE( a != b )
  13908. with expansion:
  13909. 1 != 2
  13910. -------------------------------------------------------------------------------
  13911. replaceInPlace
  13912. replace single char
  13913. -------------------------------------------------------------------------------
  13914. StringManip.tests.cpp:<line number>
  13915. ...............................................................................
  13916. StringManip.tests.cpp:<line number>: PASSED:
  13917. CHECK( Catch::replaceInPlace(letters, "b", "z") )
  13918. with expansion:
  13919. true
  13920. StringManip.tests.cpp:<line number>: PASSED:
  13921. CHECK( letters == "azcdefcg" )
  13922. with expansion:
  13923. "azcdefcg" == "azcdefcg"
  13924. -------------------------------------------------------------------------------
  13925. replaceInPlace
  13926. replace two chars
  13927. -------------------------------------------------------------------------------
  13928. StringManip.tests.cpp:<line number>
  13929. ...............................................................................
  13930. StringManip.tests.cpp:<line number>: PASSED:
  13931. CHECK( Catch::replaceInPlace(letters, "c", "z") )
  13932. with expansion:
  13933. true
  13934. StringManip.tests.cpp:<line number>: PASSED:
  13935. CHECK( letters == "abzdefzg" )
  13936. with expansion:
  13937. "abzdefzg" == "abzdefzg"
  13938. -------------------------------------------------------------------------------
  13939. replaceInPlace
  13940. replace first char
  13941. -------------------------------------------------------------------------------
  13942. StringManip.tests.cpp:<line number>
  13943. ...............................................................................
  13944. StringManip.tests.cpp:<line number>: PASSED:
  13945. CHECK( Catch::replaceInPlace(letters, "a", "z") )
  13946. with expansion:
  13947. true
  13948. StringManip.tests.cpp:<line number>: PASSED:
  13949. CHECK( letters == "zbcdefcg" )
  13950. with expansion:
  13951. "zbcdefcg" == "zbcdefcg"
  13952. -------------------------------------------------------------------------------
  13953. replaceInPlace
  13954. replace last char
  13955. -------------------------------------------------------------------------------
  13956. StringManip.tests.cpp:<line number>
  13957. ...............................................................................
  13958. StringManip.tests.cpp:<line number>: PASSED:
  13959. CHECK( Catch::replaceInPlace(letters, "g", "z") )
  13960. with expansion:
  13961. true
  13962. StringManip.tests.cpp:<line number>: PASSED:
  13963. CHECK( letters == "abcdefcz" )
  13964. with expansion:
  13965. "abcdefcz" == "abcdefcz"
  13966. -------------------------------------------------------------------------------
  13967. replaceInPlace
  13968. replace all chars
  13969. -------------------------------------------------------------------------------
  13970. StringManip.tests.cpp:<line number>
  13971. ...............................................................................
  13972. StringManip.tests.cpp:<line number>: PASSED:
  13973. CHECK( Catch::replaceInPlace(letters, letters, "replaced") )
  13974. with expansion:
  13975. true
  13976. StringManip.tests.cpp:<line number>: PASSED:
  13977. CHECK( letters == "replaced" )
  13978. with expansion:
  13979. "replaced" == "replaced"
  13980. -------------------------------------------------------------------------------
  13981. replaceInPlace
  13982. replace no chars
  13983. -------------------------------------------------------------------------------
  13984. StringManip.tests.cpp:<line number>
  13985. ...............................................................................
  13986. StringManip.tests.cpp:<line number>: PASSED:
  13987. CHECK_FALSE( Catch::replaceInPlace(letters, "x", "z") )
  13988. with expansion:
  13989. !false
  13990. StringManip.tests.cpp:<line number>: PASSED:
  13991. CHECK( letters == letters )
  13992. with expansion:
  13993. "abcdefcg" == "abcdefcg"
  13994. -------------------------------------------------------------------------------
  13995. replaceInPlace
  13996. escape '
  13997. -------------------------------------------------------------------------------
  13998. StringManip.tests.cpp:<line number>
  13999. ...............................................................................
  14000. StringManip.tests.cpp:<line number>: PASSED:
  14001. CHECK( Catch::replaceInPlace(s, "'", "|'") )
  14002. with expansion:
  14003. true
  14004. StringManip.tests.cpp:<line number>: PASSED:
  14005. CHECK( s == "didn|'t" )
  14006. with expansion:
  14007. "didn|'t" == "didn|'t"
  14008. -------------------------------------------------------------------------------
  14009. request an unknown %-starting stream fails
  14010. -------------------------------------------------------------------------------
  14011. Stream.tests.cpp:<line number>
  14012. ...............................................................................
  14013. Stream.tests.cpp:<line number>: PASSED:
  14014. REQUIRE_THROWS( Catch::makeStream( "%somestream" ) )
  14015. -------------------------------------------------------------------------------
  14016. resolution
  14017. -------------------------------------------------------------------------------
  14018. InternalBenchmark.tests.cpp:<line number>
  14019. ...............................................................................
  14020. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14021. REQUIRE( res.size() == count )
  14022. with expansion:
  14023. 10 == 10
  14024. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14025. REQUIRE( res[i] == rate )
  14026. with expansion:
  14027. 1000.0 == 1000 (0x<hex digits>)
  14028. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14029. REQUIRE( res[i] == rate )
  14030. with expansion:
  14031. 1000.0 == 1000 (0x<hex digits>)
  14032. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14033. REQUIRE( res[i] == rate )
  14034. with expansion:
  14035. 1000.0 == 1000 (0x<hex digits>)
  14036. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14037. REQUIRE( res[i] == rate )
  14038. with expansion:
  14039. 1000.0 == 1000 (0x<hex digits>)
  14040. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14041. REQUIRE( res[i] == rate )
  14042. with expansion:
  14043. 1000.0 == 1000 (0x<hex digits>)
  14044. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14045. REQUIRE( res[i] == rate )
  14046. with expansion:
  14047. 1000.0 == 1000 (0x<hex digits>)
  14048. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14049. REQUIRE( res[i] == rate )
  14050. with expansion:
  14051. 1000.0 == 1000 (0x<hex digits>)
  14052. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14053. REQUIRE( res[i] == rate )
  14054. with expansion:
  14055. 1000.0 == 1000 (0x<hex digits>)
  14056. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14057. REQUIRE( res[i] == rate )
  14058. with expansion:
  14059. 1000.0 == 1000 (0x<hex digits>)
  14060. -------------------------------------------------------------------------------
  14061. run_for_at_least, chronometer
  14062. -------------------------------------------------------------------------------
  14063. InternalBenchmark.tests.cpp:<line number>
  14064. ...............................................................................
  14065. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14066. CHECK( meter.runs() >= old_runs )
  14067. with expansion:
  14068. 1 >= 1
  14069. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14070. CHECK( meter.runs() >= old_runs )
  14071. with expansion:
  14072. 2 >= 1
  14073. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14074. CHECK( meter.runs() >= old_runs )
  14075. with expansion:
  14076. 4 >= 2
  14077. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14078. CHECK( meter.runs() >= old_runs )
  14079. with expansion:
  14080. 8 >= 4
  14081. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14082. CHECK( meter.runs() >= old_runs )
  14083. with expansion:
  14084. 16 >= 8
  14085. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14086. CHECK( meter.runs() >= old_runs )
  14087. with expansion:
  14088. 32 >= 16
  14089. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14090. CHECK( meter.runs() >= old_runs )
  14091. with expansion:
  14092. 64 >= 32
  14093. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14094. CHECK( meter.runs() >= old_runs )
  14095. with expansion:
  14096. 128 >= 64
  14097. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14098. REQUIRE( Timing.elapsed >= time )
  14099. with expansion:
  14100. 128 ns >= 100 ns
  14101. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14102. REQUIRE( Timing.result == Timing.iterations + 17 )
  14103. with expansion:
  14104. 145 == 145
  14105. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14106. REQUIRE( Timing.iterations >= time.count() )
  14107. with expansion:
  14108. 128 >= 100
  14109. -------------------------------------------------------------------------------
  14110. run_for_at_least, int
  14111. -------------------------------------------------------------------------------
  14112. InternalBenchmark.tests.cpp:<line number>
  14113. ...............................................................................
  14114. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14115. CHECK( x >= old_x )
  14116. with expansion:
  14117. 1 >= 1
  14118. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14119. CHECK( x >= old_x )
  14120. with expansion:
  14121. 2 >= 1
  14122. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14123. CHECK( x >= old_x )
  14124. with expansion:
  14125. 4 >= 2
  14126. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14127. CHECK( x >= old_x )
  14128. with expansion:
  14129. 8 >= 4
  14130. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14131. CHECK( x >= old_x )
  14132. with expansion:
  14133. 16 >= 8
  14134. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14135. CHECK( x >= old_x )
  14136. with expansion:
  14137. 32 >= 16
  14138. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14139. CHECK( x >= old_x )
  14140. with expansion:
  14141. 64 >= 32
  14142. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14143. CHECK( x >= old_x )
  14144. with expansion:
  14145. 128 >= 64
  14146. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14147. REQUIRE( Timing.elapsed >= time )
  14148. with expansion:
  14149. 128 ns >= 100 ns
  14150. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14151. REQUIRE( Timing.result == Timing.iterations + 17 )
  14152. with expansion:
  14153. 145 == 145
  14154. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14155. REQUIRE( Timing.iterations >= time.count() )
  14156. with expansion:
  14157. 128 >= 100
  14158. -------------------------------------------------------------------------------
  14159. second tag
  14160. -------------------------------------------------------------------------------
  14161. Misc.tests.cpp:<line number>
  14162. ...............................................................................
  14163. No assertions in test case 'second tag'
  14164. -------------------------------------------------------------------------------
  14165. send a single char to INFO
  14166. -------------------------------------------------------------------------------
  14167. Misc.tests.cpp:<line number>
  14168. ...............................................................................
  14169. Misc.tests.cpp:<line number>: FAILED:
  14170. REQUIRE( false )
  14171. with message:
  14172. 3
  14173. -------------------------------------------------------------------------------
  14174. sends information to INFO
  14175. -------------------------------------------------------------------------------
  14176. Message.tests.cpp:<line number>
  14177. ...............................................................................
  14178. Message.tests.cpp:<line number>: FAILED:
  14179. REQUIRE( false )
  14180. with messages:
  14181. hi
  14182. i := 7
  14183. -------------------------------------------------------------------------------
  14184. shortened hide tags are split apart
  14185. -------------------------------------------------------------------------------
  14186. Tag.tests.cpp:<line number>
  14187. ...............................................................................
  14188. Tag.tests.cpp:<line number>: PASSED:
  14189. REQUIRE_THAT( testcase.tags, VectorContains( Tag( "magic-tag" ) ) && VectorContains( Tag( "."_catch_sr ) ) )
  14190. with expansion:
  14191. { {?}, {?} } ( Contains: {?} and Contains: {?} )
  14192. -------------------------------------------------------------------------------
  14193. splitString
  14194. -------------------------------------------------------------------------------
  14195. StringManip.tests.cpp:<line number>
  14196. ...............................................................................
  14197. StringManip.tests.cpp:<line number>: PASSED:
  14198. CHECK_THAT( splitStringRef("", ','), Equals(std::vector<StringRef>()) )
  14199. with expansion:
  14200. { } Equals: { }
  14201. StringManip.tests.cpp:<line number>: PASSED:
  14202. CHECK_THAT( splitStringRef("abc", ','), Equals(std::vector<StringRef>{"abc"}) )
  14203. with expansion:
  14204. { abc } Equals: { abc }
  14205. StringManip.tests.cpp:<line number>: PASSED:
  14206. CHECK_THAT( splitStringRef("abc,def", ','), Equals(std::vector<StringRef>{"abc", "def"}) )
  14207. with expansion:
  14208. { abc, def } Equals: { abc, def }
  14209. -------------------------------------------------------------------------------
  14210. stacks unscoped info in loops
  14211. -------------------------------------------------------------------------------
  14212. Message.tests.cpp:<line number>
  14213. ...............................................................................
  14214. Message.tests.cpp:<line number>: FAILED:
  14215. CHECK( false )
  14216. with messages:
  14217. Count 1 to 3...
  14218. 1
  14219. 2
  14220. 3
  14221. Message.tests.cpp:<line number>: FAILED:
  14222. CHECK( false )
  14223. with messages:
  14224. Count 4 to 6...
  14225. 4
  14226. 5
  14227. 6
  14228. -------------------------------------------------------------------------------
  14229. startsWith
  14230. -------------------------------------------------------------------------------
  14231. StringManip.tests.cpp:<line number>
  14232. ...............................................................................
  14233. StringManip.tests.cpp:<line number>: PASSED:
  14234. CHECK_FALSE( startsWith("", 'c') )
  14235. with expansion:
  14236. !false
  14237. StringManip.tests.cpp:<line number>: PASSED:
  14238. CHECK( startsWith(std::string("abc"), 'a') )
  14239. with expansion:
  14240. true
  14241. StringManip.tests.cpp:<line number>: PASSED:
  14242. CHECK( startsWith("def"_catch_sr, 'd') )
  14243. with expansion:
  14244. true
  14245. -------------------------------------------------------------------------------
  14246. std::map is convertible string
  14247. empty
  14248. -------------------------------------------------------------------------------
  14249. ToStringGeneral.tests.cpp:<line number>
  14250. ...............................................................................
  14251. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14252. REQUIRE( Catch::Detail::stringify( emptyMap ) == "{ }" )
  14253. with expansion:
  14254. "{ }" == "{ }"
  14255. -------------------------------------------------------------------------------
  14256. std::map is convertible string
  14257. single item
  14258. -------------------------------------------------------------------------------
  14259. ToStringGeneral.tests.cpp:<line number>
  14260. ...............................................................................
  14261. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14262. REQUIRE( Catch::Detail::stringify( map ) == "{ { \"one\", 1 } }" )
  14263. with expansion:
  14264. "{ { "one", 1 } }" == "{ { "one", 1 } }"
  14265. -------------------------------------------------------------------------------
  14266. std::map is convertible string
  14267. several items
  14268. -------------------------------------------------------------------------------
  14269. ToStringGeneral.tests.cpp:<line number>
  14270. ...............................................................................
  14271. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14272. REQUIRE( Catch::Detail::stringify( map ) == "{ { \"abc\", 1 }, { \"def\", 2 }, { \"ghi\", 3 } }" )
  14273. with expansion:
  14274. "{ { "abc", 1 }, { "def", 2 }, { "ghi", 3 } }"
  14275. ==
  14276. "{ { "abc", 1 }, { "def", 2 }, { "ghi", 3 } }"
  14277. -------------------------------------------------------------------------------
  14278. std::pair<int,const std::string> -> toString
  14279. -------------------------------------------------------------------------------
  14280. ToStringPair.tests.cpp:<line number>
  14281. ...............................................................................
  14282. ToStringPair.tests.cpp:<line number>: PASSED:
  14283. REQUIRE( ::Catch::Detail::stringify(value) == "{ 34, \"xyzzy\" }" )
  14284. with expansion:
  14285. "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
  14286. -------------------------------------------------------------------------------
  14287. std::pair<int,std::string> -> toString
  14288. -------------------------------------------------------------------------------
  14289. ToStringPair.tests.cpp:<line number>
  14290. ...............................................................................
  14291. ToStringPair.tests.cpp:<line number>: PASSED:
  14292. REQUIRE( ::Catch::Detail::stringify( value ) == "{ 34, \"xyzzy\" }" )
  14293. with expansion:
  14294. "{ 34, "xyzzy" }" == "{ 34, "xyzzy" }"
  14295. -------------------------------------------------------------------------------
  14296. std::set is convertible string
  14297. empty
  14298. -------------------------------------------------------------------------------
  14299. ToStringGeneral.tests.cpp:<line number>
  14300. ...............................................................................
  14301. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14302. REQUIRE( Catch::Detail::stringify( emptySet ) == "{ }" )
  14303. with expansion:
  14304. "{ }" == "{ }"
  14305. -------------------------------------------------------------------------------
  14306. std::set is convertible string
  14307. single item
  14308. -------------------------------------------------------------------------------
  14309. ToStringGeneral.tests.cpp:<line number>
  14310. ...............................................................................
  14311. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14312. REQUIRE( Catch::Detail::stringify( set ) == "{ \"one\" }" )
  14313. with expansion:
  14314. "{ "one" }" == "{ "one" }"
  14315. -------------------------------------------------------------------------------
  14316. std::set is convertible string
  14317. several items
  14318. -------------------------------------------------------------------------------
  14319. ToStringGeneral.tests.cpp:<line number>
  14320. ...............................................................................
  14321. ToStringGeneral.tests.cpp:<line number>: PASSED:
  14322. REQUIRE( Catch::Detail::stringify( set ) == "{ \"abc\", \"def\", \"ghi\" }" )
  14323. with expansion:
  14324. "{ "abc", "def", "ghi" }"
  14325. ==
  14326. "{ "abc", "def", "ghi" }"
  14327. -------------------------------------------------------------------------------
  14328. std::vector<std::pair<std::string,int> > -> toString
  14329. -------------------------------------------------------------------------------
  14330. ToStringPair.tests.cpp:<line number>
  14331. ...............................................................................
  14332. ToStringPair.tests.cpp:<line number>: PASSED:
  14333. REQUIRE( ::Catch::Detail::stringify( pr ) == "{ { \"green\", 55 } }" )
  14334. with expansion:
  14335. "{ { "green", 55 } }"
  14336. ==
  14337. "{ { "green", 55 } }"
  14338. -------------------------------------------------------------------------------
  14339. stdout and stderr streams have %-starting name
  14340. -------------------------------------------------------------------------------
  14341. Stream.tests.cpp:<line number>
  14342. ...............................................................................
  14343. Stream.tests.cpp:<line number>: PASSED:
  14344. REQUIRE( Catch::makeStream( "%stderr" )->isConsole() )
  14345. with expansion:
  14346. true
  14347. Stream.tests.cpp:<line number>: PASSED:
  14348. REQUIRE( Catch::makeStream( "%stdout" )->isConsole() )
  14349. with expansion:
  14350. true
  14351. -------------------------------------------------------------------------------
  14352. stringify ranges
  14353. -------------------------------------------------------------------------------
  14354. ToStringWhich.tests.cpp:<line number>
  14355. ...............................................................................
  14356. ToStringWhich.tests.cpp:<line number>: PASSED:
  14357. REQUIRE( ::Catch::Detail::stringify(streamable_range{}) == "op<<(streamable_range)" )
  14358. with expansion:
  14359. "op<<(streamable_range)"
  14360. ==
  14361. "op<<(streamable_range)"
  14362. ToStringWhich.tests.cpp:<line number>: PASSED:
  14363. REQUIRE( ::Catch::Detail::stringify(stringmaker_range{}) == "stringmaker(streamable_range)" )
  14364. with expansion:
  14365. "stringmaker(streamable_range)"
  14366. ==
  14367. "stringmaker(streamable_range)"
  14368. ToStringWhich.tests.cpp:<line number>: PASSED:
  14369. REQUIRE( ::Catch::Detail::stringify(just_range{}) == "{ 1, 2, 3, 4 }" )
  14370. with expansion:
  14371. "{ 1, 2, 3, 4 }" == "{ 1, 2, 3, 4 }"
  14372. ToStringWhich.tests.cpp:<line number>: PASSED:
  14373. REQUIRE( ::Catch::Detail::stringify(disabled_range{}) == "{?}" )
  14374. with expansion:
  14375. "{?}" == "{?}"
  14376. -------------------------------------------------------------------------------
  14377. stringify( has_maker )
  14378. -------------------------------------------------------------------------------
  14379. ToStringWhich.tests.cpp:<line number>
  14380. ...............................................................................
  14381. ToStringWhich.tests.cpp:<line number>: PASSED:
  14382. REQUIRE( ::Catch::Detail::stringify( item ) == "StringMaker<has_maker>" )
  14383. with expansion:
  14384. "StringMaker<has_maker>"
  14385. ==
  14386. "StringMaker<has_maker>"
  14387. -------------------------------------------------------------------------------
  14388. stringify( has_maker_and_operator )
  14389. -------------------------------------------------------------------------------
  14390. ToStringWhich.tests.cpp:<line number>
  14391. ...............................................................................
  14392. ToStringWhich.tests.cpp:<line number>: PASSED:
  14393. REQUIRE( ::Catch::Detail::stringify( item ) == "StringMaker<has_maker_and_operator>" )
  14394. with expansion:
  14395. "StringMaker<has_maker_and_operator>"
  14396. ==
  14397. "StringMaker<has_maker_and_operator>"
  14398. -------------------------------------------------------------------------------
  14399. stringify( has_neither )
  14400. -------------------------------------------------------------------------------
  14401. ToStringWhich.tests.cpp:<line number>
  14402. ...............................................................................
  14403. ToStringWhich.tests.cpp:<line number>: PASSED:
  14404. REQUIRE( ::Catch::Detail::stringify(item) == "{?}" )
  14405. with expansion:
  14406. "{?}" == "{?}"
  14407. -------------------------------------------------------------------------------
  14408. stringify( has_operator )
  14409. -------------------------------------------------------------------------------
  14410. ToStringWhich.tests.cpp:<line number>
  14411. ...............................................................................
  14412. ToStringWhich.tests.cpp:<line number>: PASSED:
  14413. REQUIRE( ::Catch::Detail::stringify( item ) == "operator<<( has_operator )" )
  14414. with expansion:
  14415. "operator<<( has_operator )"
  14416. ==
  14417. "operator<<( has_operator )"
  14418. -------------------------------------------------------------------------------
  14419. stringify( has_template_operator )
  14420. -------------------------------------------------------------------------------
  14421. ToStringWhich.tests.cpp:<line number>
  14422. ...............................................................................
  14423. ToStringWhich.tests.cpp:<line number>: PASSED:
  14424. REQUIRE( ::Catch::Detail::stringify( item ) == "operator<<( has_template_operator )" )
  14425. with expansion:
  14426. "operator<<( has_template_operator )"
  14427. ==
  14428. "operator<<( has_template_operator )"
  14429. -------------------------------------------------------------------------------
  14430. stringify( vectors<has_maker> )
  14431. -------------------------------------------------------------------------------
  14432. ToStringWhich.tests.cpp:<line number>
  14433. ...............................................................................
  14434. ToStringWhich.tests.cpp:<line number>: PASSED:
  14435. REQUIRE( ::Catch::Detail::stringify( v ) == "{ StringMaker<has_maker> }" )
  14436. with expansion:
  14437. "{ StringMaker<has_maker> }"
  14438. ==
  14439. "{ StringMaker<has_maker> }"
  14440. -------------------------------------------------------------------------------
  14441. stringify( vectors<has_maker_and_operator> )
  14442. -------------------------------------------------------------------------------
  14443. ToStringWhich.tests.cpp:<line number>
  14444. ...............................................................................
  14445. ToStringWhich.tests.cpp:<line number>: PASSED:
  14446. REQUIRE( ::Catch::Detail::stringify( v ) == "{ StringMaker<has_maker_and_operator> }" )
  14447. with expansion:
  14448. "{ StringMaker<has_maker_and_operator> }"
  14449. ==
  14450. "{ StringMaker<has_maker_and_operator> }"
  14451. -------------------------------------------------------------------------------
  14452. stringify( vectors<has_operator> )
  14453. -------------------------------------------------------------------------------
  14454. ToStringWhich.tests.cpp:<line number>
  14455. ...............................................................................
  14456. ToStringWhich.tests.cpp:<line number>: PASSED:
  14457. REQUIRE( ::Catch::Detail::stringify( v ) == "{ operator<<( has_operator ) }" )
  14458. with expansion:
  14459. "{ operator<<( has_operator ) }"
  14460. ==
  14461. "{ operator<<( has_operator ) }"
  14462. -------------------------------------------------------------------------------
  14463. strlen3
  14464. -------------------------------------------------------------------------------
  14465. Generators.tests.cpp:<line number>
  14466. ...............................................................................
  14467. Generators.tests.cpp:<line number>: PASSED:
  14468. REQUIRE( data.str.size() == data.len )
  14469. with expansion:
  14470. 3 == 3
  14471. -------------------------------------------------------------------------------
  14472. strlen3
  14473. -------------------------------------------------------------------------------
  14474. Generators.tests.cpp:<line number>
  14475. ...............................................................................
  14476. Generators.tests.cpp:<line number>: PASSED:
  14477. REQUIRE( data.str.size() == data.len )
  14478. with expansion:
  14479. 3 == 3
  14480. -------------------------------------------------------------------------------
  14481. strlen3
  14482. -------------------------------------------------------------------------------
  14483. Generators.tests.cpp:<line number>
  14484. ...............................................................................
  14485. Generators.tests.cpp:<line number>: PASSED:
  14486. REQUIRE( data.str.size() == data.len )
  14487. with expansion:
  14488. 5 == 5
  14489. -------------------------------------------------------------------------------
  14490. strlen3
  14491. -------------------------------------------------------------------------------
  14492. Generators.tests.cpp:<line number>
  14493. ...............................................................................
  14494. Generators.tests.cpp:<line number>: PASSED:
  14495. REQUIRE( data.str.size() == data.len )
  14496. with expansion:
  14497. 4 == 4
  14498. -------------------------------------------------------------------------------
  14499. tables
  14500. -------------------------------------------------------------------------------
  14501. Generators.tests.cpp:<line number>
  14502. ...............................................................................
  14503. Generators.tests.cpp:<line number>: PASSED:
  14504. REQUIRE( strlen(std::get<0>(data)) == static_cast<size_t>(std::get<1>(data)) )
  14505. with expansion:
  14506. 5 == 5
  14507. -------------------------------------------------------------------------------
  14508. tables
  14509. -------------------------------------------------------------------------------
  14510. Generators.tests.cpp:<line number>
  14511. ...............................................................................
  14512. Generators.tests.cpp:<line number>: PASSED:
  14513. REQUIRE( strlen(std::get<0>(data)) == static_cast<size_t>(std::get<1>(data)) )
  14514. with expansion:
  14515. 6 == 6
  14516. -------------------------------------------------------------------------------
  14517. tables
  14518. -------------------------------------------------------------------------------
  14519. Generators.tests.cpp:<line number>
  14520. ...............................................................................
  14521. Generators.tests.cpp:<line number>: PASSED:
  14522. REQUIRE( strlen(std::get<0>(data)) == static_cast<size_t>(std::get<1>(data)) )
  14523. with expansion:
  14524. 5 == 5
  14525. -------------------------------------------------------------------------------
  14526. tables
  14527. -------------------------------------------------------------------------------
  14528. Generators.tests.cpp:<line number>
  14529. ...............................................................................
  14530. Generators.tests.cpp:<line number>: PASSED:
  14531. REQUIRE( strlen(std::get<0>(data)) == static_cast<size_t>(std::get<1>(data)) )
  14532. with expansion:
  14533. 6 == 6
  14534. -------------------------------------------------------------------------------
  14535. tags with dots in later positions are not parsed as hidden
  14536. -------------------------------------------------------------------------------
  14537. Tag.tests.cpp:<line number>
  14538. ...............................................................................
  14539. Tag.tests.cpp:<line number>: PASSED:
  14540. REQUIRE( testcase.tags.size() == 1 )
  14541. with expansion:
  14542. 1 == 1
  14543. Tag.tests.cpp:<line number>: PASSED:
  14544. REQUIRE( testcase.tags[0].original == "magic.tag"_catch_sr )
  14545. with expansion:
  14546. magic.tag == magic.tag
  14547. -------------------------------------------------------------------------------
  14548. thrown std::strings are translated
  14549. -------------------------------------------------------------------------------
  14550. Exception.tests.cpp:<line number>
  14551. ...............................................................................
  14552. Exception.tests.cpp:<line number>: FAILED:
  14553. due to unexpected exception with message:
  14554. Why would you throw a std::string?
  14555. -------------------------------------------------------------------------------
  14556. toString on const wchar_t const pointer returns the string contents
  14557. -------------------------------------------------------------------------------
  14558. Misc.tests.cpp:<line number>
  14559. ...............................................................................
  14560. Misc.tests.cpp:<line number>: PASSED:
  14561. CHECK( result == "\"wide load\"" )
  14562. with expansion:
  14563. ""wide load"" == ""wide load""
  14564. -------------------------------------------------------------------------------
  14565. toString on const wchar_t pointer returns the string contents
  14566. -------------------------------------------------------------------------------
  14567. Misc.tests.cpp:<line number>
  14568. ...............................................................................
  14569. Misc.tests.cpp:<line number>: PASSED:
  14570. CHECK( result == "\"wide load\"" )
  14571. with expansion:
  14572. ""wide load"" == ""wide load""
  14573. -------------------------------------------------------------------------------
  14574. toString on wchar_t const pointer returns the string contents
  14575. -------------------------------------------------------------------------------
  14576. Misc.tests.cpp:<line number>
  14577. ...............................................................................
  14578. Misc.tests.cpp:<line number>: PASSED:
  14579. CHECK( result == "\"wide load\"" )
  14580. with expansion:
  14581. ""wide load"" == ""wide load""
  14582. -------------------------------------------------------------------------------
  14583. toString on wchar_t returns the string contents
  14584. -------------------------------------------------------------------------------
  14585. Misc.tests.cpp:<line number>
  14586. ...............................................................................
  14587. Misc.tests.cpp:<line number>: PASSED:
  14588. CHECK( result == "\"wide load\"" )
  14589. with expansion:
  14590. ""wide load"" == ""wide load""
  14591. -------------------------------------------------------------------------------
  14592. toString(enum class w/operator<<)
  14593. -------------------------------------------------------------------------------
  14594. EnumToString.tests.cpp:<line number>
  14595. ...............................................................................
  14596. EnumToString.tests.cpp:<line number>: PASSED:
  14597. CHECK( ::Catch::Detail::stringify(e0) == "E2/V0" )
  14598. with expansion:
  14599. "E2/V0" == "E2/V0"
  14600. EnumToString.tests.cpp:<line number>: PASSED:
  14601. CHECK( ::Catch::Detail::stringify(e1) == "E2/V1" )
  14602. with expansion:
  14603. "E2/V1" == "E2/V1"
  14604. EnumToString.tests.cpp:<line number>: PASSED:
  14605. CHECK( ::Catch::Detail::stringify(e3) == "Unknown enum value 10" )
  14606. with expansion:
  14607. "Unknown enum value 10"
  14608. ==
  14609. "Unknown enum value 10"
  14610. -------------------------------------------------------------------------------
  14611. toString(enum class)
  14612. -------------------------------------------------------------------------------
  14613. EnumToString.tests.cpp:<line number>
  14614. ...............................................................................
  14615. EnumToString.tests.cpp:<line number>: PASSED:
  14616. CHECK( ::Catch::Detail::stringify(e0) == "0" )
  14617. with expansion:
  14618. "0" == "0"
  14619. EnumToString.tests.cpp:<line number>: PASSED:
  14620. CHECK( ::Catch::Detail::stringify(e1) == "1" )
  14621. with expansion:
  14622. "1" == "1"
  14623. -------------------------------------------------------------------------------
  14624. toString(enum w/operator<<)
  14625. -------------------------------------------------------------------------------
  14626. EnumToString.tests.cpp:<line number>
  14627. ...............................................................................
  14628. EnumToString.tests.cpp:<line number>: PASSED:
  14629. CHECK( ::Catch::Detail::stringify(e0) == "E2{0}" )
  14630. with expansion:
  14631. "E2{0}" == "E2{0}"
  14632. EnumToString.tests.cpp:<line number>: PASSED:
  14633. CHECK( ::Catch::Detail::stringify(e1) == "E2{1}" )
  14634. with expansion:
  14635. "E2{1}" == "E2{1}"
  14636. -------------------------------------------------------------------------------
  14637. toString(enum)
  14638. -------------------------------------------------------------------------------
  14639. EnumToString.tests.cpp:<line number>
  14640. ...............................................................................
  14641. EnumToString.tests.cpp:<line number>: PASSED:
  14642. CHECK( ::Catch::Detail::stringify(e0) == "0" )
  14643. with expansion:
  14644. "0" == "0"
  14645. EnumToString.tests.cpp:<line number>: PASSED:
  14646. CHECK( ::Catch::Detail::stringify(e1) == "1" )
  14647. with expansion:
  14648. "1" == "1"
  14649. -------------------------------------------------------------------------------
  14650. tuple<>
  14651. -------------------------------------------------------------------------------
  14652. ToStringTuple.tests.cpp:<line number>
  14653. ...............................................................................
  14654. ToStringTuple.tests.cpp:<line number>: PASSED:
  14655. CHECK( "{ }" == ::Catch::Detail::stringify(type{}) )
  14656. with expansion:
  14657. "{ }" == "{ }"
  14658. ToStringTuple.tests.cpp:<line number>: PASSED:
  14659. CHECK( "{ }" == ::Catch::Detail::stringify(value) )
  14660. with expansion:
  14661. "{ }" == "{ }"
  14662. -------------------------------------------------------------------------------
  14663. tuple<float,int>
  14664. -------------------------------------------------------------------------------
  14665. ToStringTuple.tests.cpp:<line number>
  14666. ...............................................................................
  14667. ToStringTuple.tests.cpp:<line number>: PASSED:
  14668. CHECK( "1.2f" == ::Catch::Detail::stringify(float(1.2)) )
  14669. with expansion:
  14670. "1.2f" == "1.2f"
  14671. ToStringTuple.tests.cpp:<line number>: PASSED:
  14672. CHECK( "{ 1.2f, 0 }" == ::Catch::Detail::stringify(type{1.2f,0}) )
  14673. with expansion:
  14674. "{ 1.2f, 0 }" == "{ 1.2f, 0 }"
  14675. -------------------------------------------------------------------------------
  14676. tuple<int>
  14677. -------------------------------------------------------------------------------
  14678. ToStringTuple.tests.cpp:<line number>
  14679. ...............................................................................
  14680. ToStringTuple.tests.cpp:<line number>: PASSED:
  14681. CHECK( "{ 0 }" == ::Catch::Detail::stringify(type{0}) )
  14682. with expansion:
  14683. "{ 0 }" == "{ 0 }"
  14684. -------------------------------------------------------------------------------
  14685. tuple<string,string>
  14686. -------------------------------------------------------------------------------
  14687. ToStringTuple.tests.cpp:<line number>
  14688. ...............................................................................
  14689. ToStringTuple.tests.cpp:<line number>: PASSED:
  14690. CHECK( "{ \"hello\", \"world\" }" == ::Catch::Detail::stringify(type{"hello","world"}) )
  14691. with expansion:
  14692. "{ "hello", "world" }"
  14693. ==
  14694. "{ "hello", "world" }"
  14695. -------------------------------------------------------------------------------
  14696. tuple<tuple<int>,tuple<>,float>
  14697. -------------------------------------------------------------------------------
  14698. ToStringTuple.tests.cpp:<line number>
  14699. ...............................................................................
  14700. ToStringTuple.tests.cpp:<line number>: PASSED:
  14701. CHECK( "{ { 42 }, { }, 1.2f }" == ::Catch::Detail::stringify(value) )
  14702. with expansion:
  14703. "{ { 42 }, { }, 1.2f }"
  14704. ==
  14705. "{ { 42 }, { }, 1.2f }"
  14706. -------------------------------------------------------------------------------
  14707. uniform samples
  14708. -------------------------------------------------------------------------------
  14709. InternalBenchmark.tests.cpp:<line number>
  14710. ...............................................................................
  14711. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14712. CHECK( e.point == 23 )
  14713. with expansion:
  14714. 23.0 == 23
  14715. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14716. CHECK( e.upper_bound == 23 )
  14717. with expansion:
  14718. 23.0 == 23
  14719. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14720. CHECK( e.lower_bound == 23 )
  14721. with expansion:
  14722. 23.0 == 23
  14723. InternalBenchmark.tests.cpp:<line number>: PASSED:
  14724. CHECK( e.confidence_interval == 0.95 )
  14725. with expansion:
  14726. 0.95 == 0.95
  14727. -------------------------------------------------------------------------------
  14728. unique_ptr reimplementation: basic functionality
  14729. Default constructed unique_ptr is empty
  14730. -------------------------------------------------------------------------------
  14731. UniquePtr.tests.cpp:<line number>
  14732. ...............................................................................
  14733. UniquePtr.tests.cpp:<line number>: PASSED:
  14734. REQUIRE_FALSE( ptr )
  14735. with expansion:
  14736. !{?}
  14737. UniquePtr.tests.cpp:<line number>: PASSED:
  14738. REQUIRE( ptr.get() == 0 )
  14739. with expansion:
  14740. 0 == 0
  14741. -------------------------------------------------------------------------------
  14742. unique_ptr reimplementation: basic functionality
  14743. Take ownership of allocation
  14744. -------------------------------------------------------------------------------
  14745. UniquePtr.tests.cpp:<line number>
  14746. ...............................................................................
  14747. UniquePtr.tests.cpp:<line number>: PASSED:
  14748. REQUIRE( ptr )
  14749. with expansion:
  14750. {?}
  14751. UniquePtr.tests.cpp:<line number>: PASSED:
  14752. REQUIRE( *ptr == 0 )
  14753. with expansion:
  14754. 0 == 0
  14755. UniquePtr.tests.cpp:<line number>: PASSED:
  14756. REQUIRE( ptr.get() == naked_ptr )
  14757. with expansion:
  14758. 0x<hex digits> == 0x<hex digits>
  14759. -------------------------------------------------------------------------------
  14760. unique_ptr reimplementation: basic functionality
  14761. Take ownership of allocation
  14762. Plain reset deallocates
  14763. -------------------------------------------------------------------------------
  14764. UniquePtr.tests.cpp:<line number>
  14765. ...............................................................................
  14766. UniquePtr.tests.cpp:<line number>: PASSED:
  14767. REQUIRE_FALSE( ptr )
  14768. with expansion:
  14769. !{?}
  14770. UniquePtr.tests.cpp:<line number>: PASSED:
  14771. REQUIRE( ptr.get() == 0 )
  14772. with expansion:
  14773. 0 == 0
  14774. -------------------------------------------------------------------------------
  14775. unique_ptr reimplementation: basic functionality
  14776. Take ownership of allocation
  14777. -------------------------------------------------------------------------------
  14778. UniquePtr.tests.cpp:<line number>
  14779. ...............................................................................
  14780. UniquePtr.tests.cpp:<line number>: PASSED:
  14781. REQUIRE( ptr )
  14782. with expansion:
  14783. {?}
  14784. UniquePtr.tests.cpp:<line number>: PASSED:
  14785. REQUIRE( *ptr == 0 )
  14786. with expansion:
  14787. 0 == 0
  14788. UniquePtr.tests.cpp:<line number>: PASSED:
  14789. REQUIRE( ptr.get() == naked_ptr )
  14790. with expansion:
  14791. 0x<hex digits> == 0x<hex digits>
  14792. -------------------------------------------------------------------------------
  14793. unique_ptr reimplementation: basic functionality
  14794. Take ownership of allocation
  14795. Reset replaces ownership
  14796. -------------------------------------------------------------------------------
  14797. UniquePtr.tests.cpp:<line number>
  14798. ...............................................................................
  14799. UniquePtr.tests.cpp:<line number>: PASSED:
  14800. REQUIRE( ptr )
  14801. with expansion:
  14802. {?}
  14803. UniquePtr.tests.cpp:<line number>: PASSED:
  14804. REQUIRE( ptr.get() != 0 )
  14805. with expansion:
  14806. 0x<hex digits> != 0
  14807. UniquePtr.tests.cpp:<line number>: PASSED:
  14808. REQUIRE( *ptr == 2 )
  14809. with expansion:
  14810. 2 == 2
  14811. -------------------------------------------------------------------------------
  14812. unique_ptr reimplementation: basic functionality
  14813. Release releases ownership
  14814. -------------------------------------------------------------------------------
  14815. UniquePtr.tests.cpp:<line number>
  14816. ...............................................................................
  14817. UniquePtr.tests.cpp:<line number>: PASSED:
  14818. CHECK_FALSE( ptr )
  14819. with expansion:
  14820. !{?}
  14821. UniquePtr.tests.cpp:<line number>: PASSED:
  14822. CHECK( ptr.get() == 0 )
  14823. with expansion:
  14824. 0 == 0
  14825. -------------------------------------------------------------------------------
  14826. unique_ptr reimplementation: basic functionality
  14827. Move constructor
  14828. -------------------------------------------------------------------------------
  14829. UniquePtr.tests.cpp:<line number>
  14830. ...............................................................................
  14831. UniquePtr.tests.cpp:<line number>: PASSED:
  14832. REQUIRE_FALSE( ptr1 )
  14833. with expansion:
  14834. !{?}
  14835. UniquePtr.tests.cpp:<line number>: PASSED:
  14836. REQUIRE( ptr2 )
  14837. with expansion:
  14838. {?}
  14839. UniquePtr.tests.cpp:<line number>: PASSED:
  14840. REQUIRE( *ptr2 == 1 )
  14841. with expansion:
  14842. 1 == 1
  14843. -------------------------------------------------------------------------------
  14844. unique_ptr reimplementation: basic functionality
  14845. Move assignment
  14846. -------------------------------------------------------------------------------
  14847. UniquePtr.tests.cpp:<line number>
  14848. ...............................................................................
  14849. UniquePtr.tests.cpp:<line number>: PASSED:
  14850. REQUIRE_FALSE( ptr2 )
  14851. with expansion:
  14852. !{?}
  14853. UniquePtr.tests.cpp:<line number>: PASSED:
  14854. REQUIRE( ptr1 )
  14855. with expansion:
  14856. {?}
  14857. UniquePtr.tests.cpp:<line number>: PASSED:
  14858. REQUIRE( *ptr1 == 2 )
  14859. with expansion:
  14860. 2 == 2
  14861. -------------------------------------------------------------------------------
  14862. unique_ptr reimplementation: basic functionality
  14863. free swap
  14864. -------------------------------------------------------------------------------
  14865. UniquePtr.tests.cpp:<line number>
  14866. ...............................................................................
  14867. UniquePtr.tests.cpp:<line number>: PASSED:
  14868. REQUIRE( *ptr1 == 2 )
  14869. with expansion:
  14870. 2 == 2
  14871. UniquePtr.tests.cpp:<line number>: PASSED:
  14872. REQUIRE( *ptr2 == 1 )
  14873. with expansion:
  14874. 1 == 1
  14875. -------------------------------------------------------------------------------
  14876. vec<vec<string,alloc>> -> toString
  14877. -------------------------------------------------------------------------------
  14878. ToStringVector.tests.cpp:<line number>
  14879. ...............................................................................
  14880. ToStringVector.tests.cpp:<line number>: PASSED:
  14881. REQUIRE( ::Catch::Detail::stringify(v) == "{ }" )
  14882. with expansion:
  14883. "{ }" == "{ }"
  14884. ToStringVector.tests.cpp:<line number>: PASSED:
  14885. REQUIRE( ::Catch::Detail::stringify(v) == "{ { \"hello\" }, { \"world\" } }" )
  14886. with expansion:
  14887. "{ { "hello" }, { "world" } }"
  14888. ==
  14889. "{ { "hello" }, { "world" } }"
  14890. -------------------------------------------------------------------------------
  14891. vector<bool> -> toString
  14892. -------------------------------------------------------------------------------
  14893. ToStringVector.tests.cpp:<line number>
  14894. ...............................................................................
  14895. ToStringVector.tests.cpp:<line number>: PASSED:
  14896. REQUIRE( ::Catch::Detail::stringify(bools) == "{ }" )
  14897. with expansion:
  14898. "{ }" == "{ }"
  14899. ToStringVector.tests.cpp:<line number>: PASSED:
  14900. REQUIRE( ::Catch::Detail::stringify(bools) == "{ true }" )
  14901. with expansion:
  14902. "{ true }" == "{ true }"
  14903. ToStringVector.tests.cpp:<line number>: PASSED:
  14904. REQUIRE( ::Catch::Detail::stringify(bools) == "{ true, false }" )
  14905. with expansion:
  14906. "{ true, false }" == "{ true, false }"
  14907. -------------------------------------------------------------------------------
  14908. vector<int,allocator> -> toString
  14909. -------------------------------------------------------------------------------
  14910. ToStringVector.tests.cpp:<line number>
  14911. ...............................................................................
  14912. ToStringVector.tests.cpp:<line number>: PASSED:
  14913. REQUIRE( ::Catch::Detail::stringify(vv) == "{ }" )
  14914. with expansion:
  14915. "{ }" == "{ }"
  14916. ToStringVector.tests.cpp:<line number>: PASSED:
  14917. REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42 }" )
  14918. with expansion:
  14919. "{ 42 }" == "{ 42 }"
  14920. ToStringVector.tests.cpp:<line number>: PASSED:
  14921. REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" )
  14922. with expansion:
  14923. "{ 42, 250 }" == "{ 42, 250 }"
  14924. -------------------------------------------------------------------------------
  14925. vector<int> -> toString
  14926. -------------------------------------------------------------------------------
  14927. ToStringVector.tests.cpp:<line number>
  14928. ...............................................................................
  14929. ToStringVector.tests.cpp:<line number>: PASSED:
  14930. REQUIRE( ::Catch::Detail::stringify(vv) == "{ }" )
  14931. with expansion:
  14932. "{ }" == "{ }"
  14933. ToStringVector.tests.cpp:<line number>: PASSED:
  14934. REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42 }" )
  14935. with expansion:
  14936. "{ 42 }" == "{ 42 }"
  14937. ToStringVector.tests.cpp:<line number>: PASSED:
  14938. REQUIRE( ::Catch::Detail::stringify(vv) == "{ 42, 250 }" )
  14939. with expansion:
  14940. "{ 42, 250 }" == "{ 42, 250 }"
  14941. -------------------------------------------------------------------------------
  14942. vector<string> -> toString
  14943. -------------------------------------------------------------------------------
  14944. ToStringVector.tests.cpp:<line number>
  14945. ...............................................................................
  14946. ToStringVector.tests.cpp:<line number>: PASSED:
  14947. REQUIRE( ::Catch::Detail::stringify(vv) == "{ }" )
  14948. with expansion:
  14949. "{ }" == "{ }"
  14950. ToStringVector.tests.cpp:<line number>: PASSED:
  14951. REQUIRE( ::Catch::Detail::stringify(vv) == "{ \"hello\" }" )
  14952. with expansion:
  14953. "{ "hello" }" == "{ "hello" }"
  14954. ToStringVector.tests.cpp:<line number>: PASSED:
  14955. REQUIRE( ::Catch::Detail::stringify(vv) == "{ \"hello\", \"world\" }" )
  14956. with expansion:
  14957. "{ "hello", "world" }"
  14958. ==
  14959. "{ "hello", "world" }"
  14960. -------------------------------------------------------------------------------
  14961. vectors can be sized and resized
  14962. -------------------------------------------------------------------------------
  14963. Misc.tests.cpp:<line number>
  14964. ...............................................................................
  14965. Misc.tests.cpp:<line number>: PASSED:
  14966. REQUIRE( v.size() == 5 )
  14967. with expansion:
  14968. 5 == 5
  14969. Misc.tests.cpp:<line number>: PASSED:
  14970. REQUIRE( v.capacity() >= 5 )
  14971. with expansion:
  14972. 5 >= 5
  14973. -------------------------------------------------------------------------------
  14974. vectors can be sized and resized
  14975. resizing bigger changes size and capacity
  14976. -------------------------------------------------------------------------------
  14977. Misc.tests.cpp:<line number>
  14978. ...............................................................................
  14979. Misc.tests.cpp:<line number>: PASSED:
  14980. REQUIRE( v.size() == 10 )
  14981. with expansion:
  14982. 10 == 10
  14983. Misc.tests.cpp:<line number>: PASSED:
  14984. REQUIRE( v.capacity() >= 10 )
  14985. with expansion:
  14986. 10 >= 10
  14987. -------------------------------------------------------------------------------
  14988. vectors can be sized and resized
  14989. -------------------------------------------------------------------------------
  14990. Misc.tests.cpp:<line number>
  14991. ...............................................................................
  14992. Misc.tests.cpp:<line number>: PASSED:
  14993. REQUIRE( v.size() == 5 )
  14994. with expansion:
  14995. 5 == 5
  14996. Misc.tests.cpp:<line number>: PASSED:
  14997. REQUIRE( v.capacity() >= 5 )
  14998. with expansion:
  14999. 5 >= 5
  15000. -------------------------------------------------------------------------------
  15001. vectors can be sized and resized
  15002. resizing smaller changes size but not capacity
  15003. -------------------------------------------------------------------------------
  15004. Misc.tests.cpp:<line number>
  15005. ...............................................................................
  15006. Misc.tests.cpp:<line number>: PASSED:
  15007. REQUIRE( v.size() == 0 )
  15008. with expansion:
  15009. 0 == 0
  15010. Misc.tests.cpp:<line number>: PASSED:
  15011. REQUIRE( v.capacity() >= 5 )
  15012. with expansion:
  15013. 5 >= 5
  15014. -------------------------------------------------------------------------------
  15015. vectors can be sized and resized
  15016. resizing smaller changes size but not capacity
  15017. We can use the 'swap trick' to reset the capacity
  15018. -------------------------------------------------------------------------------
  15019. Misc.tests.cpp:<line number>
  15020. ...............................................................................
  15021. Misc.tests.cpp:<line number>: PASSED:
  15022. REQUIRE( v.capacity() == 0 )
  15023. with expansion:
  15024. 0 == 0
  15025. -------------------------------------------------------------------------------
  15026. vectors can be sized and resized
  15027. -------------------------------------------------------------------------------
  15028. Misc.tests.cpp:<line number>
  15029. ...............................................................................
  15030. Misc.tests.cpp:<line number>: PASSED:
  15031. REQUIRE( v.size() == 5 )
  15032. with expansion:
  15033. 5 == 5
  15034. Misc.tests.cpp:<line number>: PASSED:
  15035. REQUIRE( v.capacity() >= 5 )
  15036. with expansion:
  15037. 5 >= 5
  15038. -------------------------------------------------------------------------------
  15039. vectors can be sized and resized
  15040. reserving bigger changes capacity but not size
  15041. -------------------------------------------------------------------------------
  15042. Misc.tests.cpp:<line number>
  15043. ...............................................................................
  15044. Misc.tests.cpp:<line number>: PASSED:
  15045. REQUIRE( v.size() == 5 )
  15046. with expansion:
  15047. 5 == 5
  15048. Misc.tests.cpp:<line number>: PASSED:
  15049. REQUIRE( v.capacity() >= 10 )
  15050. with expansion:
  15051. 10 >= 10
  15052. -------------------------------------------------------------------------------
  15053. vectors can be sized and resized
  15054. -------------------------------------------------------------------------------
  15055. Misc.tests.cpp:<line number>
  15056. ...............................................................................
  15057. Misc.tests.cpp:<line number>: PASSED:
  15058. REQUIRE( v.size() == 5 )
  15059. with expansion:
  15060. 5 == 5
  15061. Misc.tests.cpp:<line number>: PASSED:
  15062. REQUIRE( v.capacity() >= 5 )
  15063. with expansion:
  15064. 5 >= 5
  15065. -------------------------------------------------------------------------------
  15066. vectors can be sized and resized
  15067. reserving smaller does not change size or capacity
  15068. -------------------------------------------------------------------------------
  15069. Misc.tests.cpp:<line number>
  15070. ...............................................................................
  15071. Misc.tests.cpp:<line number>: PASSED:
  15072. REQUIRE( v.size() == 5 )
  15073. with expansion:
  15074. 5 == 5
  15075. Misc.tests.cpp:<line number>: PASSED:
  15076. REQUIRE( v.capacity() >= 5 )
  15077. with expansion:
  15078. 5 >= 5
  15079. -------------------------------------------------------------------------------
  15080. warmup
  15081. -------------------------------------------------------------------------------
  15082. InternalBenchmark.tests.cpp:<line number>
  15083. ...............................................................................
  15084. InternalBenchmark.tests.cpp:<line number>: PASSED:
  15085. REQUIRE( (iterations * rate) > Catch::Benchmark::Detail::warmup_time.count() )
  15086. with expansion:
  15087. 160000000 (0x<hex digits>) > 100
  15088. InternalBenchmark.tests.cpp:<line number>: PASSED:
  15089. REQUIRE( (end - start) > Catch::Benchmark::Detail::warmup_time )
  15090. with expansion:
  15091. 310016000 ns > 100 ms
  15092. -------------------------------------------------------------------------------
  15093. weighted_average_quantile
  15094. -------------------------------------------------------------------------------
  15095. InternalBenchmark.tests.cpp:<line number>
  15096. ...............................................................................
  15097. InternalBenchmark.tests.cpp:<line number>: PASSED:
  15098. REQUIRE( q1 == 14.5 )
  15099. with expansion:
  15100. 14.5 == 14.5
  15101. InternalBenchmark.tests.cpp:<line number>: PASSED:
  15102. REQUIRE( med == 18. )
  15103. with expansion:
  15104. 18.0 == 18.0
  15105. InternalBenchmark.tests.cpp:<line number>: PASSED:
  15106. REQUIRE( q3 == 23. )
  15107. with expansion:
  15108. 23.0 == 23.0
  15109. -------------------------------------------------------------------------------
  15110. xmlentitycheck
  15111. embedded xml: <test>it should be possible to embed xml characters, such as <,
  15112. " or &, or even whole <xml>documents</xml> within an attribute
  15113. </test>
  15114. -------------------------------------------------------------------------------
  15115. Misc.tests.cpp:<line number>
  15116. ...............................................................................
  15117. Misc.tests.cpp:<line number>: PASSED:
  15118. -------------------------------------------------------------------------------
  15119. xmlentitycheck
  15120. encoded chars: these should all be encoded: &&&"""<<<&"<<&"
  15121. -------------------------------------------------------------------------------
  15122. Misc.tests.cpp:<line number>
  15123. ...............................................................................
  15124. Misc.tests.cpp:<line number>: PASSED:
  15125. ===============================================================================
  15126. test cases: 394 | 304 passed | 83 failed | 7 failed as expected
  15127. assertions: 2299 | 2129 passed | 143 failed | 27 failed as expected