using smart pointers instead of normal ones for

easier setup of tests (to call setup() multiple
times without leaks)
This commit is contained in:
Karma Riuk
2025-07-11 11:16:16 +02:00
parent 826f4de77a
commit 2174781b77
7 changed files with 14 additions and 18 deletions

View File

@@ -18,8 +18,8 @@ void check_parser_errors(const std::vector<ast::error::error*>& errors) {
void ParserFixture::setup(std::string source) {
input << source;
lexer = new lexer::lexer{input};
parser = new parser::parser(*lexer);
lexer = std::make_unique<lexer::lexer>(input);
parser = std::make_unique<parser::parser>(*lexer);
program = parser->parse_program();
check_parser_errors(parser->errors);
@@ -30,9 +30,3 @@ void ParserFixture::setup(std::string source) {
"parse_program() returned a null pointer"
);
}
ParserFixture::~ParserFixture() {
delete lexer;
delete parser;
delete program;
}