better use of fixtures for resource allocation and

dealocation
This commit is contained in:
Karma Riuk
2025-07-08 15:45:38 +02:00
parent 83df4955d4
commit d10e5676c1
4 changed files with 27 additions and 35 deletions

View File

@@ -1,28 +1,19 @@
#include "ast/errors/error.hpp"
#include "lexer/lexer.hpp"
#include "parser/parser.hpp"
#include <doctest.h>
#include <sstream>
#include <vector>
void check_parser_errors(const std::vector<ast::error::error*>& errors);
struct ParserFixture {
std::stringstream input;
lexer::lexer* l = nullptr;
parser::parser* p = nullptr;
lexer::lexer* lexer = nullptr;
parser::parser* parser = nullptr;
ast::program* program = nullptr;
ParserFixture() = default;
void setup(std::string source) {
input << source;
l = new lexer::lexer{input};
p = new parser::parser(*l);
}
void setup(std::string);
~ParserFixture() {
delete l;
delete p;
}
~ParserFixture();
};