Add simple simulator stub.

This commit is contained in:
jmsgrogan 2023-01-26 15:16:46 +00:00
parent a74dfd5f5f
commit 426ea55b3b
23 changed files with 139 additions and 11 deletions

View file

@ -2,6 +2,7 @@
list(APPEND UNIT_TEST_FILES
TestBlochSphereNode.cpp
TestQuantumCircuitParsing.cpp
TestQuantumSimulator.cpp
)
add_executable(quantum_computing_unit_tests ${CMAKE_SOURCE_DIR}/test/test_runner.cpp ${UNIT_TEST_FILES})

View file

@ -0,0 +1,27 @@
#include "TestFramework.h"
#include "TestUtils.h"
#include "TestRenderUtils.h"
#include "QuantumCircuitReader.h"
#include "QuantumCircuitNode.h"
#include "QuantumCircuit.h"
#include "QuantumState.h"
#include "QuantumSimulator.h"
#include "File.h"
TEST_CASE(TestQuantumSimulator, "quantum_computing")
{
QuantumCircuitReader reader;
auto circuit = reader.read(TestUtils::getTestDataDir() / "quantum_circuit.dat");
QuantumSimulator simulator;
simulator.setCircuit(circuit.get());
simulator.run();
auto input_state = simulator.getInputState();
File file(TestUtils::getTestOutputDir(__FILE__) / "out.dat");
file.writeText(input_state.toString());
}