Bug 551254: Simple (disabled) test that the STL wrappers work correctly.

This commit is contained in:
Chris Jones 2010-04-02 12:58:12 -05:00
parent f4b0fe954c
commit 23b3beae10
2 changed files with 39 additions and 0 deletions

View File

@ -73,6 +73,10 @@ CPPSRCS = \
TestUnicodeArguments.cpp \
$(NULL)
ifdef WRAP_STL_INCLUDES
CPPSRCS += TestSTLWrappers.cpp
endif
SIMPLE_PROGRAMS := $(CPPSRCS:.cpp=$(BIN_SUFFIX))
CPP_UNIT_TESTS = \

View File

@ -0,0 +1,35 @@
#include <stdio.h>
#include <algorithm>
#ifndef mozilla_algorithm_h
# error "failed to wrap <algorithm>"
#endif
#include <vector>
#ifndef mozilla_vector_h
# error "failed to wrap <vector>"
#endif
// gcc errors out if we |try ... catch| with -fno-exceptions, but we
// can still test on windows
#ifdef XP_WIN
# define TRY try
# define CATCH(e) catch (e)
#else
# define TRY
# define CATCH(e) if (0)
#endif
int main() {
std::vector<int> v;
TRY {
// this should abort; NOT throw an exception
int unused = v.at(1);
} CATCH(const std::out_of_range& e) {
fputs("TEST-FAIL | TestSTLWrappers.cpp | caught an exception!\n",
stderr);
}
return 0;
}