Newer
Older
#ifndef NULLVALIDATORTEST_H_
#define NULLVALIDATORTEST_H_
#include <string>
#include <cxxtest/TestSuite.h>
#include "MantidKernel/NullValidator.h"
using namespace Mantid::Kernel;
class NullValidatorTest : public CxxTest::TestSuite {
void testConstructor() { TS_ASSERT_THROWS_NOTHING(NullValidator()); }
IValidator_sptr v = boost::make_shared<NullValidator>();
IValidator_sptr vv = v->clone();
TS_ASSERT_DIFFERS(v, vv)
TS_ASSERT(boost::dynamic_pointer_cast<NullValidator>(vv))
}
void testNullValidatorWithInts() {
NullValidator p;
Steve Williams
committed
TS_ASSERT_EQUALS(p.isValid(0), "");
TS_ASSERT_EQUALS(p.isValid(1), "");
TS_ASSERT_EQUALS(p.isValid(10), "");
TS_ASSERT_EQUALS(p.isValid(-11), "");
}
void testDoubleNullValidatorWithDoubles() {
NullValidator p;
Steve Williams
committed
TS_ASSERT_EQUALS(p.isValid(0.0), "");
TS_ASSERT_EQUALS(p.isValid(1.0), "");
TS_ASSERT_EQUALS(p.isValid(10.0), "");
TS_ASSERT_EQUALS(p.isValid(-10.1), "");
}
void testStringNullValidatorWithStrings() {
NullValidator p;
Steve Williams
committed
TS_ASSERT_EQUALS(p.isValid("AZ"), "");
TS_ASSERT_EQUALS(p.isValid("B"), "");
TS_ASSERT_EQUALS(p.isValid(""), "");
TS_ASSERT_EQUALS(p.isValid("ta"), "");
}