From 7e0191856b3c76517a2654183b52192713ff5770 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Thu, 22 Jun 2017 16:14:35 +0200 Subject: Executor: Do not convert error objects into strings Command line users do not see a difference, but for IDE users it is important that we keep error message and code location separate in the ErrorInfo objects we hand out via the API. Task-number: QBS-1151 Change-Id: I4aacf2f32ee535c2d37da3d615ab78e2777a351a Reviewed-by: Joerg Bornemann --- tests/auto/api/tst_api.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tests/auto/api/tst_api.cpp') diff --git a/tests/auto/api/tst_api.cpp b/tests/auto/api/tst_api.cpp index 99af1cf52..ef4a6e71c 100644 --- a/tests/auto/api/tst_api.cpp +++ b/tests/auto/api/tst_api.cpp @@ -253,6 +253,20 @@ void TestApi::baseProperties() VERIFY_NO_ERROR(errorInfo); } +void TestApi::buildErrorCodeLocation() +{ + const qbs::ErrorInfo errorInfo + = doBuildProject("build-error-code-location/build-error-code-location.qbs"); + QVERIFY(errorInfo.hasError()); + const qbs::ErrorItem errorItem = errorInfo.items().first(); + QCOMPARE(errorItem.description(), + QString("Rule.outputArtifacts must return an array of objects.")); + const qbs::CodeLocation errorLoc = errorItem.codeLocation(); + QCOMPARE(QFileInfo(errorLoc.filePath()).fileName(), QString("build-error-code-location.qbs")); + QCOMPARE(errorLoc.line(), 9); + QCOMPARE(errorLoc.column(), 26); +} + void TestApi::buildGraphLocking() { qbs::SetupProjectParameters setupParams -- cgit v1.2.3