#include "List.h" #include #define CATCH_CONFIG_MAIN #include "catch.hpp" using Vi = std::vector; TEST_CASE ("Sort") { Vi sorted { 1, 2, 4, 7 }; Vi unsorted { 1, 4, 2, 7 }; List vals; for ( auto i : unsorted ) { vals.push_back(i); } vals.sort(); for ( size_t i {}; i < sorted.size(); ++i ) { REQUIRE ( sorted[i] == vals.at(i) ); } } TEST_CASE ("Sort 2") { Vi sorted { 1, 2, 4, 7 }; Vi unsorted { 4, 2, 1, 7 }; List vals; for ( auto i : unsorted ) { vals.push_back(i); } vals.sort(); for ( size_t i {}; i < sorted.size(); ++i ) { REQUIRE ( sorted[i] == vals.at(i) ); } } TEST_CASE ("Sort 3") { Vi sorted { 1, 2, 4, 7 }; Vi unsorted { 1, 4, 7, 2 }; List vals; for ( auto i : unsorted ) { vals.push_back(i); } vals.sort(); for ( size_t i {}; i < sorted.size(); ++i ) { REQUIRE ( sorted[i] == vals.at(i) ); } } TEST_CASE ( " Sort Empty " ) { List l; l.sort(); REQUIRE ( l.size() == 0 ); }