MCPcopy Create free account
hub / github.com/OriginQ/QPanda-2 / TEST

Function TEST

test/Overall_scan/QMachine/OriginQubitPool.test.cpp:6–32  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4#include "gtest/gtest.h"
5
6USING_QPANDA
7
8TEST(OriginQubitPoolTest, test) {
9 auto qpool = OriginQubitPool::get_instance();
10 qpool->set_capacity(20);
11 EXPECT_EQ(20, qpool->get_capacity());
12
13 Qubit* q = qpool->allocateQubit();
14 EXPECT_TRUE(q->getOccupancy());
15
16 Qubit* q1 = qpool->allocateQubitThroughPhyAddress(1);
17 EXPECT_EQ(1, q1->get_phy_addr());
18 PhysicalQubit* py = q1->getPhysicalQubitPtr();
19 py->setQubitAddr(1);
20 EXPECT_EQ(1, py->getQubitAddr());
21 py->setOccupancy(true);
22 EXPECT_TRUE(py->getOccupancy());
23
24 Qubit* q2 = qpool->allocateQubitThroughVirAddress(2);
25 EXPECT_TRUE(q2->getOccupancy());
26 PhysicalQubit* py1 = q2->getPhysicalQubitPtr();
27 py1->setQubitAddr(1);
28 EXPECT_EQ(1, py1->getQubitAddr());
29 py1->setOccupancy(true);
30 EXPECT_TRUE(py1->getOccupancy());
31 qpool->qFreeAll();
32}
33
34
35TEST(QubitPoolCase,test) {

Callers

nothing calls this directly

Calls 15

HadamardQCircuitClass · 0.85
CZClass · 0.85
RYClass · 0.85
RXClass · 0.85
RZClass · 0.85
HClass · 0.85
XClass · 0.85
X1Class · 0.85
SWAPClass · 0.85
CUClass · 0.85
U4Class · 0.85
BARRIERClass · 0.85

Tested by

no test coverage detected