#ifdef TESTS_BUILD #define CATCH_CONFIG_MAIN #include #include "../src/Script.hpp" TEST_CASE( "Diagnostic invalid character", "[integration]" ) { auto script = Script::Create("1 + 1 @"); REQUIRE(script->Diagnostics -> HasErrors()); auto diags = script->Diagnostics -> GetDiagnostics(); REQUIRE(diags.size() == 1); CHECK(diags[0].GetCode() == DiagnosticCode::UnexpectedCharacter); CHECK(diags[0].GetStartPosition() == 6); CHECK(diags[0].GetLength() == 1); delete script; } TEST_CASE( "Diagnostic invalid token", "[integration]" ) { auto script = Script::Create("1 +/ 1"); REQUIRE(script->Diagnostics -> HasErrors()); auto diags = script->Diagnostics -> GetDiagnostics(); REQUIRE(diags.size() == 1); CHECK(diags[0].GetCode() == DiagnosticCode::UnexpectedToken); CHECK(diags[0].GetStartPosition() == 3); CHECK(diags[0].GetLength() == 1); delete script; } #endif