-
Notifications
You must be signed in to change notification settings - Fork 260
/
Test_Executive.cpp
62 lines (52 loc) · 1.85 KB
/
Test_Executive.cpp
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
55
56
57
58
59
60
61
62
#include "Test.h"
#include "Executive.h"
#include "ObjectVolume.h"
using namespace pymol;
#define TEST_SETUP \
PyMOLInstance pymol; \
auto G = pymol.G(); \
[[maybe_unused]] \
bool quiet = true;
#define TEST_SETUP_OBJ_ATOMLESS \
TEST_SETUP \
auto obj = new ObjectMolecule(G, false); \
obj->setName("M1"); \
ExecutiveManageObject(G, obj, false, quiet);
#define TEST_SETUP_OBJ \
TEST_SETUP \
ExecutivePseudoatom(G, "M1", "", "PS1", "PSD", "1", "P", "PSDO", \
"PS", -1.0f, 1, 0.0, 0.0, "", nullptr, -1, -3, 2, 1); \
auto obj = ExecutiveFindObjectByName(G, "M1");
// TEST_CASE("ExecutiveManageObject", "[Executive]")
// {
// TEST_SETUP
// auto obj = new ObjectMolecule(G, false);
// obj->setName("M1");
// ExecutiveManageObject(G, obj, false, quiet);
// REQUIRE(true);
// }
// TEST_CASE("ExecutiveFindObjectByName", "[Executive]")
// {
// TEST_SETUP_OBJ_ATOMLESS
// auto find = ExecutiveFindObjectByName(G, obj->Name);
// REQUIRE(find == obj);
// }
// TEST_CASE("ExecutiveFindObject", "[Executive]")
// {
// TEST_SETUP_OBJ_ATOMLESS
// auto find = ExecutiveFindObject<ObjectMolecule>(G, obj->Name);
// REQUIRE(find == obj);
// auto bad_find = ExecutiveFindObject<ObjectVolume>(G, obj->Name);
// REQUIRE(bad_find == nullptr);
// }
// TEST_CASE("ExecutiveGetNames", "[Executive]")
// {
// TEST_SETUP_OBJ
// auto type = 1; //objects
// auto enabled_only = false;
// auto selection = obj->Name;
// auto names_result = ExecutiveGetNames(G, type, enabled_only, selection);
// const auto& names = *names_result;
// REQUIRE(names.size() == 1u);
// REQUIRE(pymol::zstring_view(names[0]) == obj->Name);
// }