unit tests for scrolling selector

pull/312/head
nick black 5 years ago
parent e4dcccc409
commit be133b0105
No known key found for this signature in database
GPG Key ID: 5F43400C21CBFACC

@ -171,6 +171,30 @@ TEST_CASE("SelectorTest") {
CHECK(0 == notcurses_render(nc_));
auto sel = ncselector_selected(ncs);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
ncselector_nextitem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[1].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
ncselector_previtem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
// wrap around from the top to bottom...
ncselector_previtem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[2].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
// ...and back to the top
ncselector_nextitem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
struct ncplane* ncsp = ncselector_plane(ncs);
REQUIRE(nullptr != ncsp);
int dimy, dimx;
@ -193,6 +217,31 @@ TEST_CASE("SelectorTest") {
struct ncselector* ncs = ncselector_create(notcurses_stdplane(nc_), 0, 0, &opts);
REQUIRE(nullptr != ncs);
CHECK(0 == notcurses_render(nc_));
auto sel = ncselector_selected(ncs);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
ncselector_nextitem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[1].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
ncselector_previtem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
// wrap around from the top to bottom...
ncselector_previtem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[2].option));
free(sel);
CHECK(0 == notcurses_render(nc_));
// ...and back to the top
ncselector_nextitem(ncs, &sel);
REQUIRE(nullptr != sel);
CHECK(0 == strcmp(sel, items[0].option));
free(sel);
struct ncplane* ncsp = ncselector_plane(ncs);
REQUIRE(nullptr != ncsp);
int dimy, dimx;

Loading…
Cancel
Save