1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
#include <BALL/CONCEPT/classTest.h>
///////////////////////////
#include <BALL/KERNEL/predicate.h>
#include <BALL/KERNEL/system.h>
#include <BALL/KERNEL/molecule.h>
#include <BALL/KERNEL/atom.h>
#include <BALL/KERNEL/bond.h>
#include <BALL/KERNEL/atomContainer.h>
///////////////////////////
START_TEST(KernelPredicate<T>)
/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////
using namespace BALL;
CHECK(KernelPredicate::operator () (const Composite&) const)
System S;
Molecule M;
Atom A;
M.insert(A);
S.insert(M);
KernelPredicate<System> system_predicate;
KernelPredicate<Molecule> molecule_predicate;
KernelPredicate<Atom> atom_predicate;
KernelPredicate<Bond> bond_predicate;
KernelPredicate<AtomContainer> atom_container_predicate;
TEST_EQUAL(system_predicate(S), true)
TEST_EQUAL(system_predicate(M), false)
TEST_EQUAL(system_predicate(A), false)
TEST_EQUAL(molecule_predicate(S), false)
TEST_EQUAL(molecule_predicate(M), true)
TEST_EQUAL(molecule_predicate(A), false)
TEST_EQUAL(atom_predicate(S), false)
TEST_EQUAL(atom_predicate(M), false)
TEST_EQUAL(atom_predicate(A), true)
TEST_EQUAL(bond_predicate(S), false)
TEST_EQUAL(bond_predicate(M), false)
TEST_EQUAL(bond_predicate(A), false)
TEST_EQUAL(atom_container_predicate(S), true)
TEST_EQUAL(atom_container_predicate(M), true)
TEST_EQUAL(atom_container_predicate(A), false)
RESULT
/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////
END_TEST
|