From f2e87a71aed19603c7d2701f4b8a20cbf8b74ce2 Mon Sep 17 00:00:00 2001 From: patacongo Date: Fri, 14 Sep 2012 15:23:54 +0000 Subject: Update all unit tests to conform to recent naming convention changes in NuttX git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5151 42af7a65-404d-4744-a932-0658087f49c3 --- NxWidgets/UnitTests/CLatchButton/Makefile | 2 +- .../UnitTests/CLatchButton/clatchbutton_main.cxx | 199 +++++++++++++++++++++ .../UnitTests/CLatchButton/clatchbuttontest.hxx | 10 -- NxWidgets/UnitTests/CLatchButton/main.cxx | 199 --------------------- 4 files changed, 200 insertions(+), 210 deletions(-) create mode 100644 NxWidgets/UnitTests/CLatchButton/clatchbutton_main.cxx delete mode 100644 NxWidgets/UnitTests/CLatchButton/main.cxx (limited to 'NxWidgets/UnitTests/CLatchButton') diff --git a/NxWidgets/UnitTests/CLatchButton/Makefile b/NxWidgets/UnitTests/CLatchButton/Makefile index d953c3e99..7444c50be 100644 --- a/NxWidgets/UnitTests/CLatchButton/Makefile +++ b/NxWidgets/UnitTests/CLatchButton/Makefile @@ -63,7 +63,7 @@ ARCHIVER=$(TESTTOOL_DIR)/addobjs.sh ASRCS = CSRCS = -CXXSRCS = main.cxx clatchbuttontest.cxx +CXXSRCS = clatchbutton_main.cxx clatchbuttontest.cxx AOBJS = $(ASRCS:.S=$(OBJEXT)) COBJS = $(CSRCS:.c=$(OBJEXT)) diff --git a/NxWidgets/UnitTests/CLatchButton/clatchbutton_main.cxx b/NxWidgets/UnitTests/CLatchButton/clatchbutton_main.cxx new file mode 100644 index 000000000..13ed0613e --- /dev/null +++ b/NxWidgets/UnitTests/CLatchButton/clatchbutton_main.cxx @@ -0,0 +1,199 @@ +///////////////////////////////////////////////////////////////////////////// +// NxWidgets/UnitTests/CLatchButton/clatchbutton_main.cxx +// +// Copyright (C) 2012 Gregory Nutt. All rights reserved. +// Author: Gregory Nutt +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in +// the documentation and/or other materials provided with the +// distribution. +// 3. Neither the name NuttX, NxWidgets, nor the names of its contributors +// me be used to endorse or promote products derived from this software +// without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +// POSSIBILITY OF SUCH DAMAGE. +// +////////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////// +// Included Files +///////////////////////////////////////////////////////////////////////////// + +#include + +#include +#include +#include +#include + +#include + +#include "clatchbuttontest.hxx" + +///////////////////////////////////////////////////////////////////////////// +// Definitions +///////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////// +// Private Classes +///////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////// +// Private Data +///////////////////////////////////////////////////////////////////////////// + +static const char g_pushme[] = "Push Me"; + +///////////////////////////////////////////////////////////////////////////// +// Public Function Prototypes +///////////////////////////////////////////////////////////////////////////// + +// Suppress name-mangling + +extern "C" int clatchbutton_main(int argc, char *argv[]); + +///////////////////////////////////////////////////////////////////////////// +// Private Functions +///////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////// +// Name: showButtonState +///////////////////////////////////////////////////////////////////////////// + +static void showButtonState(CLatchButton *button, bool &clicked, bool &latched) +{ + bool nowClicked = button->isClicked(); + bool nowLatched = button->isLatched(); + + printf("showButtonState: Button state: %s and %s\n", + nowClicked ? "clicked" : "released", + nowLatched ? "latched" : "unlatched"); + + if (clicked != nowClicked || latched != nowLatched) + { + printf("showButtonState: ERROR: Expected %s and %s\n", + clicked ? "clicked" : "released", + latched ? "latched" : "unlatched"); + + clicked = nowClicked; + latched = nowLatched; + } +} + +///////////////////////////////////////////////////////////////////////////// +// Public Functions +///////////////////////////////////////////////////////////////////////////// + +///////////////////////////////////////////////////////////////////////////// +// user_start/nxheaders_main +///////////////////////////////////////////////////////////////////////////// + +int clatchbutton_main(int argc, char *argv[]) +{ + // Create an instance of the font test + + printf("clatchbutton_main: Create CLatchButtonTest instance\n"); + CLatchButtonTest *test = new CLatchButtonTest(); + + // Connect the NX server + + printf("clatchbutton_main: Connect the CLatchButtonTest instance to the NX server\n"); + if (!test->connect()) + { + printf("clatchbutton_main: Failed to connect the CLatchButtonTest instance to the NX server\n"); + delete test; + return 1; + } + + // Create a window to draw into + + printf("clatchbutton_main: Create a Window\n"); + if (!test->createWindow()) + { + printf("clatchbutton_main: Failed to create a window\n"); + delete test; + return 1; + } + + // Create a CLatchButton instance + + CLatchButton *button = test->createButton(g_pushme); + if (!button) + { + printf("clatchbutton_main: Failed to create a button\n"); + delete test; + return 1; + } + + // Show the button + + printf("clatchbutton_main: Show the button\n"); + test->showButton(button); + + bool clicked = false; + bool latched = false; + showButtonState(button, clicked, latched); + + // Toggle the button state a few times + + for (int i = 0; i < 8; i++) + { + // Wait two seconds, then perform a simulated mouse click on the button + + sleep(2); + printf("clatchbutton_main: Click the button\n"); + test->click(); + test->poll(button); + + // Test the button state it should be clicked with the latch state + // toggled + + clicked = true; + latched = !latched; + showButtonState(button, clicked, latched); + + // And release the button after 0.5 seconds + + usleep(500 * 1000); + printf("clatchbutton_main: Release the button\n"); + test->release(); + test->poll(button); + + // Test the button state it should be unclicked with the latch state + // unchanged + + clicked = false; + showButtonState(button, clicked, latched); + fflush(stdout); + } + + // Wait a few more seconds so that the tester can ponder the result + + sleep(3); + + // Clean up and exit + + printf("clatchbutton_main: Clean-up and exit\n"); + delete button; + delete test; + return 0; +} + diff --git a/NxWidgets/UnitTests/CLatchButton/clatchbuttontest.hxx b/NxWidgets/UnitTests/CLatchButton/clatchbuttontest.hxx index 62405ac88..783b1a57c 100644 --- a/NxWidgets/UnitTests/CLatchButton/clatchbuttontest.hxx +++ b/NxWidgets/UnitTests/CLatchButton/clatchbuttontest.hxx @@ -75,16 +75,6 @@ # define CONFIG_CLATCHBUTTONTEST_FONTCOLOR CONFIG_NXWIDGETS_DEFAULT_FONTCOLOR #endif -// What is the entry point called? - -#ifdef CONFIG_NSH_BUILTIN_APPS -# define MAIN_NAME clatchbutton_main -# define MAIN_STRING "clatchbutton_main: " -#else -# define MAIN_NAME user_start -# define MAIN_STRING "user_start: " -#endif - ///////////////////////////////////////////////////////////////////////////// // Public Classes ///////////////////////////////////////////////////////////////////////////// diff --git a/NxWidgets/UnitTests/CLatchButton/main.cxx b/NxWidgets/UnitTests/CLatchButton/main.cxx deleted file mode 100644 index d51f613c1..000000000 --- a/NxWidgets/UnitTests/CLatchButton/main.cxx +++ /dev/null @@ -1,199 +0,0 @@ -///////////////////////////////////////////////////////////////////////////// -// NxWidgets/UnitTests/CLatchButton/main.cxx -// -// Copyright (C) 2012 Gregory Nutt. All rights reserved. -// Author: Gregory Nutt -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in -// the documentation and/or other materials provided with the -// distribution. -// 3. Neither the name NuttX, NxWidgets, nor the names of its contributors -// me be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -// OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -// AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. -// -////////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// Included Files -///////////////////////////////////////////////////////////////////////////// - -#include - -#include -#include -#include -#include - -#include - -#include "clatchbuttontest.hxx" - -///////////////////////////////////////////////////////////////////////////// -// Definitions -///////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// Private Classes -///////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// Private Data -///////////////////////////////////////////////////////////////////////////// - -static const char g_pushme[] = "Push Me"; - -///////////////////////////////////////////////////////////////////////////// -// Public Function Prototypes -///////////////////////////////////////////////////////////////////////////// - -// Suppress name-mangling - -extern "C" int MAIN_NAME(int argc, char *argv[]); - -///////////////////////////////////////////////////////////////////////////// -// Private Functions -///////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// Name: showButtonState -///////////////////////////////////////////////////////////////////////////// - -static void showButtonState(CLatchButton *button, bool &clicked, bool &latched) -{ - bool nowClicked = button->isClicked(); - bool nowLatched = button->isLatched(); - - printf(MAIN_STRING "Button state: %s and %s\n", - nowClicked ? "clicked" : "released", - nowLatched ? "latched" : "unlatched"); - - if (clicked != nowClicked || latched != nowLatched) - { - printf(MAIN_STRING "ERROR: Expected %s and %s\n", - clicked ? "clicked" : "released", - latched ? "latched" : "unlatched"); - - clicked = nowClicked; - latched = nowLatched; - } -} - -///////////////////////////////////////////////////////////////////////////// -// Public Functions -///////////////////////////////////////////////////////////////////////////// - -///////////////////////////////////////////////////////////////////////////// -// user_start/nxheaders_main -///////////////////////////////////////////////////////////////////////////// - -int MAIN_NAME(int argc, char *argv[]) -{ - // Create an instance of the font test - - printf(MAIN_STRING "Create CLatchButtonTest instance\n"); - CLatchButtonTest *test = new CLatchButtonTest(); - - // Connect the NX server - - printf(MAIN_STRING "Connect the CLatchButtonTest instance to the NX server\n"); - if (!test->connect()) - { - printf(MAIN_STRING "Failed to connect the CLatchButtonTest instance to the NX server\n"); - delete test; - return 1; - } - - // Create a window to draw into - - printf(MAIN_STRING "Create a Window\n"); - if (!test->createWindow()) - { - printf(MAIN_STRING "Failed to create a window\n"); - delete test; - return 1; - } - - // Create a CLatchButton instance - - CLatchButton *button = test->createButton(g_pushme); - if (!button) - { - printf(MAIN_STRING "Failed to create a button\n"); - delete test; - return 1; - } - - // Show the button - - printf(MAIN_STRING "Show the button\n"); - test->showButton(button); - - bool clicked = false; - bool latched = false; - showButtonState(button, clicked, latched); - - // Toggle the button state a few times - - for (int i = 0; i < 8; i++) - { - // Wait two seconds, then perform a simulated mouse click on the button - - sleep(2); - printf(MAIN_STRING "Click the button\n"); - test->click(); - test->poll(button); - - // Test the button state it should be clicked with the latch state - // toggled - - clicked = true; - latched = !latched; - showButtonState(button, clicked, latched); - - // And release the button after 0.5 seconds - - usleep(500 * 1000); - printf(MAIN_STRING "Release the button\n"); - test->release(); - test->poll(button); - - // Test the button state it should be unclicked with the latch state - // unchanged - - clicked = false; - showButtonState(button, clicked, latched); - fflush(stdout); - } - - // Wait a few more seconds so that the tester can ponder the result - - sleep(3); - - // Clean up and exit - - printf(MAIN_STRING "Clean-up and exit\n"); - delete button; - delete test; - return 0; -} - -- cgit v1.2.3