This allows to easily test if we're running on a buildbot slave and disable
some difficult to debug test failures there.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71634
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
// generic wxListCtrl implementation.
#if wxUSE_UIACTIONSIMULATOR && !defined(__WXGTK__)
+#ifdef __WXMSW__
// FIXME: This test fails on MSW buildbot slaves although works fine on
// development machine, no idea why. It seems to be a problem with
// wxUIActionSimulator rather the wxListCtrl control itself however.
- if ( wxGetUserId().Lower().Matches("buildslave*") )
+ if ( IsAutomaticTest() )
return;
+#endif // __WXMSW__
wxListCtrl* const list = GetList();
return online;
}
+extern bool IsAutomaticTest()
+{
+ static int s_isAutomatic = -1;
+ if ( s_isAutomatic == -1 )
+ {
+ // Allow setting an environment variable to emulate buildslave user for
+ // testing.
+ wxString username;
+ if ( !wxGetEnv("WX_TEST_USER", &username) )
+ username = wxGetUserId();
+
+ s_isAutomatic = username.Lower().Matches("buildslave*");
+ }
+
+ return s_isAutomatic == 1;
+}
+
// helper of OnRun(): gets the test with the given name, returning NULL (and
// not an empty test suite) if there is no such test
static Test *GetTestByName(const wxString& name)
extern bool IsNetworkAvailable();
+extern bool IsAutomaticTest();
+
// Helper class setting the locale to the given one for its lifetime.
class LocaleSetter
{
void NumValidatorTestCase::Interactive()
{
+#ifdef __WXMSW__
// FIXME: This test fails on MSW buildbot slaves although works fine on
// development machine, no idea why. It seems to be a problem with
// wxUIActionSimulator rather the wxListCtrl control itself however.
- if ( wxGetUserId().Lower().Matches("buildslave*") )
+ if ( IsAutomaticTest() )
return;
+#endif // __WXMSW__
// Set a locale using comma as thousands separator character.
wxLocale loc(wxLANGUAGE_ENGLISH_UK, wxLOCALE_DONT_LOAD_DEFAULT);