2014-12-02 20:30:52 +08:00
|
|
|
/* ----------------------------------------------------------------------------
|
|
|
|
|
2019-02-11 22:39:48 +08:00
|
|
|
* GTSAM Copyright 2010, Georgia Tech Research Corporation,
|
2014-12-02 20:30:52 +08:00
|
|
|
* Atlanta, Georgia 30332-0415
|
|
|
|
* All Rights Reserved
|
|
|
|
* Authors: Frank Dellaert, et al. (see THANKS for the full author list)
|
|
|
|
|
|
|
|
* See LICENSE for the license information
|
|
|
|
|
|
|
|
* -------------------------------------------------------------------------- */
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file testMethod.cpp
|
|
|
|
* @brief Unit test for GlobalFunction class
|
|
|
|
* @author Frank Dellaert
|
|
|
|
* @date Nov 12, 2014
|
|
|
|
**/
|
|
|
|
|
|
|
|
#include <wrap/GlobalFunction.h>
|
|
|
|
#include <CppUnitLite/TestHarness.h>
|
|
|
|
#include <iostream>
|
|
|
|
|
|
|
|
using namespace std;
|
|
|
|
using namespace wrap;
|
|
|
|
|
|
|
|
//******************************************************************************
|
|
|
|
// Constructor
|
|
|
|
TEST( GlobalFunction, Constructor ) {
|
|
|
|
GlobalFunction f;
|
|
|
|
}
|
|
|
|
|
|
|
|
//******************************************************************************
|
|
|
|
TEST( GlobalFunction, Grammar ) {
|
|
|
|
|
|
|
|
using classic::space_p;
|
|
|
|
|
|
|
|
// Create type grammar that will place result in actual
|
|
|
|
GlobalFunctions actual;
|
2014-12-02 20:49:25 +08:00
|
|
|
vector<string> namespaces;
|
2016-11-25 17:05:52 +08:00
|
|
|
std::string includeFile;
|
|
|
|
GlobalFunctionGrammar g(actual,namespaces,includeFile);
|
2014-12-02 20:30:52 +08:00
|
|
|
|
|
|
|
// a class type with namespaces
|
|
|
|
EXPECT(parse("Vector aGlobalFunction();", g, space_p).full);
|
|
|
|
EXPECT(parse("Vector overloadedGlobalFunction(int a);", g, space_p).full);
|
|
|
|
EXPECT(parse("Vector overloadedGlobalFunction(int a, double b);", g, space_p).full);
|
2014-12-02 20:41:46 +08:00
|
|
|
LONGS_EQUAL(2,actual.size());
|
2014-12-02 20:30:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
//******************************************************************************
|
|
|
|
int main() {
|
|
|
|
TestResult tr;
|
|
|
|
return TestRegistry::runAllTests(tr);
|
|
|
|
}
|
|
|
|
//******************************************************************************
|