The Quantum Exact Simulation Toolkit v4.0.0
Loading...
Searching...
No Matches
 TEST_CASE ("initQuESTEnv", TEST_CATEGORY)
 
 TEST_CASE ("initCustomQuESTEnv", TEST_CATEGORY)
 
 TEST_CASE ("finalizeQuESTEnv", TEST_CATEGORY)
 
 TEST_CASE ("syncQuESTEnv", TEST_CATEGORY)
 
 TEST_CASE ("isQuESTEnvInit", TEST_CATEGORY)
 
 TEST_CASE ("getQuESTEnv", TEST_CATEGORY)
 

Detailed Description

Function Documentation

◆ TEST_CASE() [1/6]

TEST_CASE ( "finalizeQuESTEnv" ,
TEST_CATEGORY  )

Definition at line 79 of file environment.cpp.

79 {
80
81 SECTION( LABEL_CORRECTNESS ) {
82
83 // cannot be meaningfully tested since calling
84 // mid-tests will break subsequent testing
85 SUCCEED( );
86 }
87
88 SECTION( LABEL_VALIDATION ) {
89
90 // cannot be validated since calling it once
91 // is always valid but would break subsequent tests
92 SUCCEED( );
93 }
94}

◆ TEST_CASE() [2/6]

TEST_CASE ( "getQuESTEnv" ,
TEST_CATEGORY  )

Definition at line 130 of file environment.cpp.

130 {
131
132 SECTION( LABEL_CORRECTNESS ) {
133
134 QuESTEnv env = getQuESTEnv();
135
136 REQUIRE( (env.isMultithreaded == 0 || env.isMultithreaded == 1) );
137 REQUIRE( (env.isGpuAccelerated == 0 || env.isGpuAccelerated == 1) );
138 REQUIRE( (env.isDistributed == 0 || env.isDistributed == 1) );
139
140 REQUIRE( env.rank >= 0 );
141 REQUIRE( env.numNodes >= 0 );
142
143 if (!env.isDistributed) {
144 REQUIRE( env.rank == 0 );
145 REQUIRE( env.numNodes == 1 );
146 }
147
148 bool isNumNodesPow2 = ((env.numNodes & (env.numNodes - 1)) == 0);
149 REQUIRE( isNumNodesPow2 );
150 }
151
152 SECTION( LABEL_VALIDATION ) {
153
154 // performs no validation
155 SUCCEED( );
156 }
157}
QuESTEnv getQuESTEnv()

◆ TEST_CASE() [3/6]

TEST_CASE ( "initCustomQuESTEnv" ,
TEST_CATEGORY  )

Definition at line 61 of file environment.cpp.

61 {
62
63 SECTION( LABEL_CORRECTNESS ) {
64
65 // cannot be meaningfully tested since env already active
66 SUCCEED( );
67 }
68
69 SECTION( LABEL_VALIDATION ) {
70
71 REQUIRE_THROWS_WITH( initCustomQuESTEnv(0,0,0), ContainsSubstring( "already been initialised") );
72
73 // cannot check arguments since env-already-initialised
74 // validation is performed first
75 }
76}
void initCustomQuESTEnv(int useDistrib, int useGpuAccel, int useMultithread)

◆ TEST_CASE() [4/6]

TEST_CASE ( "initQuESTEnv" ,
TEST_CATEGORY  )

TESTS

Definition at line 46 of file environment.cpp.

46 {
47
48 SECTION( LABEL_CORRECTNESS ) {
49
50 // cannot be meaningfully tested since env already active
51 SUCCEED( );
52 }
53
54 SECTION( LABEL_VALIDATION ) {
55
56 REQUIRE_THROWS_WITH( initQuESTEnv(), ContainsSubstring( "already been initialised") );
57 }
58}
void initQuESTEnv()

◆ TEST_CASE() [5/6]

TEST_CASE ( "isQuESTEnvInit" ,
TEST_CATEGORY  )

Definition at line 114 of file environment.cpp.

114 {
115
116 SECTION( LABEL_CORRECTNESS ) {
117
118 // cannot test for other outcome
119 REQUIRE( isQuESTEnvInit() == 1 );
120 }
121
122 SECTION( LABEL_VALIDATION ) {
123
124 // performs no validation
125 SUCCEED( );
126 }
127}
int isQuESTEnvInit()

◆ TEST_CASE() [6/6]

TEST_CASE ( "syncQuESTEnv" ,
TEST_CATEGORY  )

Definition at line 97 of file environment.cpp.

97 {
98
99 SECTION( LABEL_CORRECTNESS ) {
100
101 // always legal to call
102 REQUIRE_NOTHROW( syncQuESTEnv() );
103 }
104
105 SECTION( LABEL_VALIDATION ) {
106
107 // cannot test validation (that env is already
108 // created) since we cannot call before initQuESTEnv
109 SUCCEED( );
110 }
111}
void syncQuESTEnv()