SDL  2.0
testautomation_clipboard.c File Reference
#include <stdio.h>
#include <string.h>
#include "SDL.h"
#include "SDL_test.h"
+ Include dependency graph for testautomation_clipboard.c:

Go to the source code of this file.

Functions

int clipboard_testHasClipboardText (void *arg)
 Check call to SDL_HasClipboardText. More...
 
int clipboard_testGetClipboardText (void *arg)
 Check call to SDL_GetClipboardText. More...
 
int clipboard_testSetClipboardText (void *arg)
 Check call to SDL_SetClipboardText. More...
 
int clipboard_testClipboardTextFunctions (void *arg)
 End-to-end test of SDL_xyzClipboardText functions. More...
 

Variables

static const SDLTest_TestCaseReference clipboardTest1
 
static const SDLTest_TestCaseReference clipboardTest2
 
static const SDLTest_TestCaseReference clipboardTest3
 
static const SDLTest_TestCaseReference clipboardTest4
 
static const SDLTest_TestCaseReferenceclipboardTests []
 
SDLTest_TestSuiteReference clipboardTestSuite
 

Function Documentation

◆ clipboard_testClipboardTextFunctions()

int clipboard_testClipboardTextFunctions ( void arg)

End-to-end test of SDL_xyzClipboardText functions.

See also
http://wiki.libsdl.org/moin.cgi/SDL_HasClipboardText http://wiki.libsdl.org/moin.cgi/SDL_GetClipboardText http://wiki.libsdl.org/moin.cgi/SDL_SetClipboardText

Definition at line 86 of file testautomation_clipboard.c.

References NULL, SDL_FALSE, SDL_free, SDL_GetClipboardText, SDL_HasClipboardText, SDL_SetClipboardText, SDL_strcmp, SDL_strdup, SDL_strlen, SDL_TRUE, SDLTest_AssertCheck(), SDLTest_AssertPass(), SDLTest_RandomAsciiString(), TEST_COMPLETED, and text.

87 {
88  char *textRef = SDLTest_RandomAsciiString();
89  char *text = SDL_strdup(textRef);
90  SDL_bool boolResult;
91  int intResult;
92  char *charResult;
93 
94  /* Clear clipboard text state */
95  boolResult = SDL_HasClipboardText();
96  SDLTest_AssertPass("Call to SDL_HasClipboardText succeeded");
97  if (boolResult == SDL_TRUE) {
98  intResult = SDL_SetClipboardText((const char *)NULL);
99  SDLTest_AssertPass("Call to SDL_SetClipboardText(NULL) succeeded");
101  intResult == 0,
102  "Verify result from SDL_SetClipboardText(NULL), expected 0, got %i",
103  intResult);
104  charResult = SDL_GetClipboardText();
105  SDLTest_AssertPass("Call to SDL_GetClipboardText succeeded");
106  SDL_free(charResult);
107  boolResult = SDL_HasClipboardText();
108  SDLTest_AssertPass("Call to SDL_HasClipboardText succeeded");
110  boolResult == SDL_FALSE,
111  "Verify SDL_HasClipboardText returned SDL_FALSE, got %s",
112  (boolResult) ? "SDL_TRUE" : "SDL_FALSE");
113  }
114 
115  /* Empty clipboard */
116  charResult = SDL_GetClipboardText();
117  SDLTest_AssertPass("Call to SDL_GetClipboardText succeeded");
119  charResult != NULL,
120  "Verify SDL_GetClipboardText did not return NULL");
122  charResult[0] == '\0',
123  "Verify SDL_GetClipboardText returned string with length 0, got length %i",
124  (int) SDL_strlen(charResult));
125  intResult = SDL_SetClipboardText((const char *)text);
126  SDLTest_AssertPass("Call to SDL_SetClipboardText succeeded");
128  intResult == 0,
129  "Verify result from SDL_SetClipboardText(NULL), expected 0, got %i",
130  intResult);
132  SDL_strcmp(textRef, text) == 0,
133  "Verify SDL_SetClipboardText did not modify input string, expected '%s', got '%s'",
134  textRef, text);
135  boolResult = SDL_HasClipboardText();
136  SDLTest_AssertPass("Call to SDL_HasClipboardText succeeded");
138  boolResult == SDL_TRUE,
139  "Verify SDL_HasClipboardText returned SDL_TRUE, got %s",
140  (boolResult) ? "SDL_TRUE" : "SDL_FALSE");
141  SDL_free(charResult);
142  charResult = SDL_GetClipboardText();
143  SDLTest_AssertPass("Call to SDL_GetClipboardText succeeded");
145  SDL_strcmp(textRef, charResult) == 0,
146  "Verify SDL_GetClipboardText returned correct string, expected '%s', got '%s'",
147  textRef, charResult);
148 
149  /* Cleanup */
150  SDL_free(textRef);
151  SDL_free(text);
152  SDL_free(charResult);
153 
154  return TEST_COMPLETED;
155 }
void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(1)
Explicitly pass without checking an assertion condition. Updates assertion counter.
#define SDL_GetClipboardText
char * SDLTest_RandomAsciiString(void)
int SDLTest_AssertCheck(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(2)
Assert for test cases that logs but does not break execution flow on failures. Updates assertion coun...
#define SDL_free
#define TEST_COMPLETED
#define NULL
Definition: begin_code.h:164
SDL_bool
Definition: SDL_stdinc.h:139
static char text[MAX_TEXT_LENGTH]
Definition: testime.c:47
#define SDL_strlen
#define SDL_strdup
#define SDL_HasClipboardText
#define SDL_strcmp
#define SDL_SetClipboardText

◆ clipboard_testGetClipboardText()

int clipboard_testGetClipboardText ( void arg)

Check call to SDL_GetClipboardText.

See also
http://wiki.libsdl.org/moin.cgi/SDL_GetClipboardText

Definition at line 38 of file testautomation_clipboard.c.

References SDL_free, SDL_GetClipboardText, SDLTest_AssertPass(), and TEST_COMPLETED.

39 {
40  char *charResult;
41  charResult = SDL_GetClipboardText();
42  SDLTest_AssertPass("Call to SDL_GetClipboardText succeeded");
43 
44  SDL_free(charResult);
45 
46  return TEST_COMPLETED;
47 }
void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(1)
Explicitly pass without checking an assertion condition. Updates assertion counter.
#define SDL_GetClipboardText
#define SDL_free
#define TEST_COMPLETED

◆ clipboard_testHasClipboardText()

int clipboard_testHasClipboardText ( void arg)

Check call to SDL_HasClipboardText.

New/updated tests: aschiffler at ferzkopp dot net

See also
http://wiki.libsdl.org/moin.cgi/SDL_HasClipboardText

Definition at line 22 of file testautomation_clipboard.c.

References SDL_HasClipboardText, SDLTest_AssertPass(), and TEST_COMPLETED.

23 {
25  result = SDL_HasClipboardText();
26  SDLTest_AssertPass("Call to SDL_HasClipboardText succeeded");
27 
28  return TEST_COMPLETED;
29 }
GLuint64EXT * result
void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(1)
Explicitly pass without checking an assertion condition. Updates assertion counter.
#define TEST_COMPLETED
SDL_bool
Definition: SDL_stdinc.h:139
#define SDL_HasClipboardText

◆ clipboard_testSetClipboardText()

int clipboard_testSetClipboardText ( void arg)

Check call to SDL_SetClipboardText.

See also
http://wiki.libsdl.org/moin.cgi/SDL_SetClipboardText

Definition at line 55 of file testautomation_clipboard.c.

References SDL_free, SDL_SetClipboardText, SDL_strcmp, SDL_strdup, SDLTest_AssertCheck(), SDLTest_AssertPass(), SDLTest_RandomAsciiString(), TEST_COMPLETED, and text.

56 {
57  char *textRef = SDLTest_RandomAsciiString();
58  char *text = SDL_strdup(textRef);
59  int result;
60  result = SDL_SetClipboardText((const char *)text);
61  SDLTest_AssertPass("Call to SDL_SetClipboardText succeeded");
63  result == 0,
64  "Validate SDL_SetClipboardText result, expected 0, got %i",
65  result);
67  SDL_strcmp(textRef, text) == 0,
68  "Verify SDL_SetClipboardText did not modify input string, expected '%s', got '%s'",
69  textRef, text);
70 
71  /* Cleanup */
72  SDL_free(textRef);
73  SDL_free(text);
74 
75  return TEST_COMPLETED;
76 }
GLuint64EXT * result
void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(1)
Explicitly pass without checking an assertion condition. Updates assertion counter.
char * SDLTest_RandomAsciiString(void)
int SDLTest_AssertCheck(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *assertDescription,...) SDL_PRINTF_VARARG_FUNC(2)
Assert for test cases that logs but does not break execution flow on failures. Updates assertion coun...
#define SDL_free
#define TEST_COMPLETED
static char text[MAX_TEXT_LENGTH]
Definition: testime.c:47
#define SDL_strdup
#define SDL_strcmp
#define SDL_SetClipboardText

Variable Documentation

◆ clipboardTest1

const SDLTest_TestCaseReference clipboardTest1
static
Initial value:
=
{ (SDLTest_TestCaseFp)clipboard_testHasClipboardText, "clipboard_testHasClipboardText", "Check call to SDL_HasClipboardText", TEST_ENABLED }
int clipboard_testHasClipboardText(void *arg)
Check call to SDL_HasClipboardText.
int(* SDLTest_TestCaseFp)(void *arg)
#define TEST_ENABLED

Definition at line 161 of file testautomation_clipboard.c.

◆ clipboardTest2

const SDLTest_TestCaseReference clipboardTest2
static
Initial value:
=
{ (SDLTest_TestCaseFp)clipboard_testGetClipboardText, "clipboard_testGetClipboardText", "Check call to SDL_GetClipboardText", TEST_ENABLED }
int(* SDLTest_TestCaseFp)(void *arg)
#define TEST_ENABLED
int clipboard_testGetClipboardText(void *arg)
Check call to SDL_GetClipboardText.

Definition at line 164 of file testautomation_clipboard.c.

◆ clipboardTest3

const SDLTest_TestCaseReference clipboardTest3
static
Initial value:
=
{ (SDLTest_TestCaseFp)clipboard_testSetClipboardText, "clipboard_testSetClipboardText", "Check call to SDL_SetClipboardText", TEST_ENABLED }
int(* SDLTest_TestCaseFp)(void *arg)
int clipboard_testSetClipboardText(void *arg)
Check call to SDL_SetClipboardText.
#define TEST_ENABLED

Definition at line 167 of file testautomation_clipboard.c.

◆ clipboardTest4

const SDLTest_TestCaseReference clipboardTest4
static
Initial value:
=
{ (SDLTest_TestCaseFp)clipboard_testClipboardTextFunctions, "clipboard_testClipboardTextFunctions", "End-to-end test of SDL_xyzClipboardText functions", TEST_ENABLED }
int clipboard_testClipboardTextFunctions(void *arg)
End-to-end test of SDL_xyzClipboardText functions.
int(* SDLTest_TestCaseFp)(void *arg)
#define TEST_ENABLED

Definition at line 170 of file testautomation_clipboard.c.

◆ clipboardTests

const SDLTest_TestCaseReference* clipboardTests[]
static
Initial value:
= {
}
static const SDLTest_TestCaseReference clipboardTest4
static const SDLTest_TestCaseReference clipboardTest1
#define NULL
Definition: begin_code.h:164
static const SDLTest_TestCaseReference clipboardTest2
static const SDLTest_TestCaseReference clipboardTest3

Definition at line 174 of file testautomation_clipboard.c.

◆ clipboardTestSuite

SDLTest_TestSuiteReference clipboardTestSuite
Initial value:
= {
"Clipboard",
}
#define NULL
Definition: begin_code.h:164
static const SDLTest_TestCaseReference * clipboardTests[]

Definition at line 179 of file testautomation_clipboard.c.