Automated merge with http://bitbucket.org/callum_linden/viewer-tools-update-callum
commit
f7463ce46d
|
|
@ -2148,9 +2148,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>ff1ecca950d779721267ef854eb2d845</string>
|
||||
<string>253519023e73d03fcb3feb2f7a2a8835</string>
|
||||
<key>url</key>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/tut_3p-update-tut/rev/295661/arch/Linux/installer/tut-2008.11.30-common-295661.tar.bz2</string>
|
||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/tut_3p-update-tut/rev/295891/arch/Linux/installer/tut-2008.11.30-common-295891.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>common</string>
|
||||
|
|
|
|||
|
|
@ -37,29 +37,14 @@
|
|||
// associated header
|
||||
#include "../lldependencies.h"
|
||||
// other Linden headers
|
||||
#include "../test/lltut.h"
|
||||
|
||||
using boost::assign::list_of;
|
||||
|
||||
#if LL_WINDOWS
|
||||
#pragma warning (disable : 4675) // "resolved by ADL" -- just as I want!
|
||||
#endif
|
||||
|
||||
typedef LLDependencies<> StringDeps;
|
||||
typedef StringDeps::KeyList StringList;
|
||||
|
||||
// We use the very cool boost::assign::list_of() construct to specify vectors
|
||||
// of strings inline. For reasons on which I'm not entirely clear, though, it
|
||||
// needs a helper function. You can use list_of() to construct an implicit
|
||||
// StringList (std::vector<std::string>) by conversion, e.g. for a function
|
||||
// parameter -- but if you simply write StringList(list_of("etc.")), you get
|
||||
// ambiguity errors. Shrug!
|
||||
template<typename CONTAINER>
|
||||
CONTAINER make(const CONTAINER& data)
|
||||
{
|
||||
return data;
|
||||
}
|
||||
|
||||
/*****************************************************************************
|
||||
* Display helpers: must be defined BEFORE lltut.h!
|
||||
*****************************************************************************/
|
||||
// Display an arbitary value as itself...
|
||||
template<typename T>
|
||||
std::ostream& display(std::ostream& out, const T& value)
|
||||
|
|
@ -113,6 +98,31 @@ std::ostream& operator<<(std::ostream& out, const std::set<ENTRY>& set)
|
|||
return out;
|
||||
}
|
||||
|
||||
/*****************************************************************************
|
||||
* Now we can #include lltut.h
|
||||
*****************************************************************************/
|
||||
#include "../test/lltut.h"
|
||||
|
||||
/*****************************************************************************
|
||||
* Other helpers
|
||||
*****************************************************************************/
|
||||
using boost::assign::list_of;
|
||||
|
||||
typedef LLDependencies<> StringDeps;
|
||||
typedef StringDeps::KeyList StringList;
|
||||
|
||||
// We use the very cool boost::assign::list_of() construct to specify vectors
|
||||
// of strings inline. For reasons on which I'm not entirely clear, though, it
|
||||
// needs a helper function. You can use list_of() to construct an implicit
|
||||
// StringList (std::vector<std::string>) by conversion, e.g. for a function
|
||||
// parameter -- but if you simply write StringList(list_of("etc.")), you get
|
||||
// ambiguity errors. Shrug!
|
||||
template<typename CONTAINER>
|
||||
CONTAINER make(const CONTAINER& data)
|
||||
{
|
||||
return data;
|
||||
}
|
||||
|
||||
const std::string& extract_key(const LLDependencies<>::value_type& entry)
|
||||
{
|
||||
return entry.first;
|
||||
|
|
|
|||
|
|
@ -27,11 +27,11 @@
|
|||
*/
|
||||
|
||||
#include "linden_common.h"
|
||||
#include "../test/lltut.h"
|
||||
|
||||
#include <boost/assign/list_of.hpp>
|
||||
#include "../llstring.h"
|
||||
#include "StringVec.h"
|
||||
#include "StringVec.h" // must come BEFORE lltut.h
|
||||
#include "../test/lltut.h"
|
||||
|
||||
using boost::assign::list_of;
|
||||
|
||||
|
|
|
|||
|
|
@ -488,7 +488,7 @@ namespace tut
|
|||
template<> template<>
|
||||
void lllogininstance_object::test<3>()
|
||||
{
|
||||
skip();
|
||||
skip("test fails with Xcode 6, skipping");
|
||||
|
||||
set_test_name("Test Mandatory Update User Accepts");
|
||||
|
||||
|
|
@ -517,7 +517,7 @@ namespace tut
|
|||
template<> template<>
|
||||
void lllogininstance_object::test<4>()
|
||||
{
|
||||
skip();
|
||||
skip("test fails with Xcode 6, skipping");
|
||||
|
||||
set_test_name("Test Mandatory Update User Decline");
|
||||
|
||||
|
|
|
|||
|
|
@ -38,14 +38,14 @@
|
|||
|
||||
namespace tut
|
||||
{
|
||||
void ensure_equals(const char* msg, const LLDate& actual,
|
||||
void ensure_equals(const std::string& msg, const LLDate& actual,
|
||||
const LLDate& expected)
|
||||
{
|
||||
ensure_equals(msg,
|
||||
actual.secondsSinceEpoch(), expected.secondsSinceEpoch());
|
||||
}
|
||||
|
||||
void ensure_equals(const char* msg, const LLURI& actual,
|
||||
void ensure_equals(const std::string& msg, const LLURI& actual,
|
||||
const LLURI& expected)
|
||||
{
|
||||
ensure_equals(msg,
|
||||
|
|
@ -61,18 +61,12 @@ namespace tut
|
|||
// if the LLSD::Binary type ever diverges from what we expect in lltut.h,
|
||||
// that divergence will produce an error: no definition will match that
|
||||
// declaration.
|
||||
void ensure_equals(const char* msg,
|
||||
const LLSD::Binary& actual, const LLSD::Binary& expected)
|
||||
{
|
||||
ensure_equals(std::string(msg? msg : ""), actual, expected);
|
||||
}
|
||||
|
||||
void ensure_equals(const std::string& msg,
|
||||
const LLSD::Binary& actual, const LLSD::Binary& expected)
|
||||
{
|
||||
ensure_equals(msg + " size", actual.size(), expected.size());
|
||||
|
||||
std::vector<U8>::const_iterator i, j;
|
||||
LLSD::Binary::const_iterator i, j;
|
||||
int k;
|
||||
for (i = actual.begin(), j = expected.begin(), k = 0;
|
||||
i != actual.end();
|
||||
|
|
@ -82,12 +76,6 @@ namespace tut
|
|||
}
|
||||
}
|
||||
|
||||
void ensure_equals(const char* m, const LLSD& actual,
|
||||
const LLSD& expected)
|
||||
{
|
||||
ensure_equals(std::string(m? m : ""), actual, expected);
|
||||
}
|
||||
|
||||
void ensure_equals(const std::string& msg, const LLSD& actual,
|
||||
const LLSD& expected)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -38,35 +38,24 @@ class LLURI;
|
|||
|
||||
namespace tut
|
||||
{
|
||||
template <class T,class Q>
|
||||
void ensure_equals(const std::string& msg,
|
||||
const Q& actual,const T& expected)
|
||||
{ ensure_equals(msg.c_str(), actual, expected); }
|
||||
|
||||
void ensure_equals(const char* msg,
|
||||
const LLDate& actual, const LLDate& expected);
|
||||
|
||||
void ensure_equals(const char* msg,
|
||||
void ensure_equals(const std::string& msg,
|
||||
const LLURI& actual, const LLURI& expected);
|
||||
|
||||
// std::vector<U8> is the current definition of LLSD::Binary. Because
|
||||
// we're only forward-declaring LLSD in this header file, we can't
|
||||
// directly reference that nested type. If the build complains that
|
||||
// there's no definition for either of these declarations, it could be
|
||||
// that LLSD::Binary has changed, and that these declarations must be
|
||||
// adjusted to match.
|
||||
void ensure_equals(const char* msg,
|
||||
const std::vector<U8>& actual, const std::vector<U8>& expected);
|
||||
|
||||
// there's no definition for this declaration, it could be that
|
||||
// LLSD::Binary has changed, and that this declaration must be adjusted to
|
||||
// match.
|
||||
void ensure_equals(const std::string& msg,
|
||||
const std::vector<U8>& actual, const std::vector<U8>& expected);
|
||||
|
||||
void ensure_equals(const char* msg,
|
||||
const LLSD& actual, const LLSD& expected);
|
||||
|
||||
void ensure_equals(const std::string& msg,
|
||||
const LLSD& actual, const LLSD& expected);
|
||||
|
||||
|
||||
void ensure_starts_with(const std::string& msg,
|
||||
const std::string& actual, const std::string& expectedStart);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue