{$mode objfpc} unit garrayutilstest; interface uses fpcunit, testregistry, gvector, garrayutils, gutil; type vectorlli=specialize TVector; lesslli=specialize TLess; sortlli=specialize TOrderingArrayUtils; type TGArrayUtilsTest = class(TTestCase) Published procedure SortRandomTest; procedure SortZeroOneTest; procedure NextPermutationTest1; procedure NextPermutationTest2; procedure NextPermutationTest3; procedure NextPermutationTest4; public procedure Setup;override; private data:vectorlli; end; implementation procedure TGArrayUtilsTest.SortRandomTest; var i:longint; begin for i:=0 to 5000 do data.pushBack(random(10000)); sortlli.sort(data, 5001); for i:=0 to 4999 do AssertEquals('Wrong order', false, data[i+1]