diff options
author | Marco Bubke <marco.bubke@theqtcompany.com> | 2015-08-31 16:10:36 +0200 |
---|---|---|
committer | Marco Bubke <marco.bubke@theqtcompany.com> | 2015-08-31 15:02:19 +0000 |
commit | 7eee8061f65f10babed7476e45de21088dcd6285 (patch) | |
tree | c828e314c2754263eb20e78b2fc007d40836663e /tests | |
parent | 3114780e5526934bd6d61994d9341544bf10499a (diff) | |
download | qt-creator-7eee8061f65f10babed7476e45de21088dcd6285.tar.gz |
Clang: Add unsaved files messages
We have auto generated buffers from ui files which are not open but have no
file representation. So we need to provide them as unsaved files only.
Change-Id: I48a426c18e06eeda2fa707864f32f293e17ac651
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/echoserver/echoipcserver.cpp | 12 | ||||
-rw-r--r-- | tests/unit/echoserver/echoipcserver.h | 2 | ||||
-rw-r--r-- | tests/unit/unittest/clientserverinprocesstest.cpp | 41 | ||||
-rw-r--r-- | tests/unit/unittest/mockipcserver.h | 4 | ||||
-rw-r--r-- | tests/unit/unittest/readandwritemessageblocktest.cpp | 28 |
5 files changed, 68 insertions, 19 deletions
diff --git a/tests/unit/echoserver/echoipcserver.cpp b/tests/unit/echoserver/echoipcserver.cpp index a049e0a63e..ad84f5186f 100644 --- a/tests/unit/echoserver/echoipcserver.cpp +++ b/tests/unit/echoserver/echoipcserver.cpp @@ -39,7 +39,9 @@ #include "cmbunregisterprojectsforeditormessage.h" #include "cmbunregistertranslationunitsforeditormessage.h" #include "connectionserver.h" +#include "registerunsavedfilesforeditormessage.h" #include "requestdiagnosticsmessage.h" +#include "unregisterunsavedfilesforeditormessage.h" #include <QCoreApplication> #include <QDebug> @@ -78,6 +80,16 @@ void EchoIpcServer::unregisterProjectPartsForEditor(const UnregisterProjectParts echoMessage(QVariant::fromValue(message)); } +void EchoIpcServer::registerUnsavedFilesForEditor(const RegisterUnsavedFilesForEditorMessage &message) +{ + echoMessage(QVariant::fromValue(message)); +} + +void EchoIpcServer::unregisterUnsavedFilesForEditor(const UnregisterUnsavedFilesForEditorMessage &message) +{ + echoMessage(QVariant::fromValue(message)); +} + void EchoIpcServer::completeCode(const CompleteCodeMessage &message) { echoMessage(QVariant::fromValue(message)); diff --git a/tests/unit/echoserver/echoipcserver.h b/tests/unit/echoserver/echoipcserver.h index fa15a72dee..4032004219 100644 --- a/tests/unit/echoserver/echoipcserver.h +++ b/tests/unit/echoserver/echoipcserver.h @@ -44,6 +44,8 @@ public: void unregisterTranslationUnitsForEditor(const UnregisterTranslationUnitsForEditorMessage &message) override; void registerProjectPartsForEditor(const RegisterProjectPartsForEditorMessage &message) override; void unregisterProjectPartsForEditor(const UnregisterProjectPartsForEditorMessage &message) override; + void registerUnsavedFilesForEditor(const RegisterUnsavedFilesForEditorMessage &message) override; + void unregisterUnsavedFilesForEditor(const UnregisterUnsavedFilesForEditorMessage &message) override; void completeCode(const CompleteCodeMessage &message) override; void requestDiagnostics(const RequestDiagnosticsMessage &message) override; diff --git a/tests/unit/unittest/clientserverinprocesstest.cpp b/tests/unit/unittest/clientserverinprocesstest.cpp index 198950c653..1f6ec20400 100644 --- a/tests/unit/unittest/clientserverinprocesstest.cpp +++ b/tests/unit/unittest/clientserverinprocesstest.cpp @@ -38,18 +38,20 @@ #include <cmbalivemessage.h> #include <cmbcodecompletedmessage.h> -#include <cmbmessages.h> #include <cmbcompletecodemessage.h> #include <cmbechomessage.h> #include <cmbendmessage.h> +#include <cmbmessages.h> #include <cmbregisterprojectsforeditormessage.h> #include <cmbregistertranslationunitsforeditormessage.h> #include <cmbunregisterprojectsforeditormessage.h> #include <cmbunregistertranslationunitsforeditormessage.h> #include <diagnosticschangedmessage.h> -#include <requestdiagnosticsmessage.h> #include <readmessageblock.h> +#include <registerunsavedfilesforeditormessage.h> +#include <requestdiagnosticsmessage.h> #include <translationunitdoesnotexistmessage.h> +#include <unregisterunsavedfilesforeditormessage.h> #include <writemessageblock.h> #include <QBuffer> @@ -83,6 +85,12 @@ protected: void scheduleServerMessages(); void scheduleClientMessages(); +protected: + ClangBackEnd::FileContainer fileContainer{Utf8StringLiteral(TESTDATA_DIR"/complete_extractor_function.cpp"), + Utf8StringLiteral("projectPartId"), + Utf8StringLiteral("unsaved content"), + true, + 1}; QBuffer buffer; MockIpcClient mockIpcClient; MockIpcServer mockIpcServer; @@ -111,8 +119,6 @@ TEST_F(ClientServerInProcess, SendAliveMessage) TEST_F(ClientServerInProcess, SendRegisterTranslationUnitForEditorMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral(TESTDATA_DIR"/complete_extractor_function.cpp"), - Utf8StringLiteral("projectId")); ClangBackEnd::RegisterTranslationUnitForEditorMessage message({fileContainer}); EXPECT_CALL(mockIpcServer, registerTranslationUnitsForEditor(message)) @@ -124,7 +130,6 @@ TEST_F(ClientServerInProcess, SendRegisterTranslationUnitForEditorMessage) TEST_F(ClientServerInProcess, SendUnregisterTranslationUnitsForEditorMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), Utf8StringLiteral("projectId")); ClangBackEnd::UnregisterTranslationUnitsForEditorMessage message({fileContainer}); EXPECT_CALL(mockIpcServer, unregisterTranslationUnitsForEditor(message)) @@ -134,6 +139,28 @@ TEST_F(ClientServerInProcess, SendUnregisterTranslationUnitsForEditorMessage) scheduleServerMessages(); } +TEST_F(ClientServerInProcess, SendRegisterUnsavedFilesForEditorMessage) +{ + ClangBackEnd::RegisterUnsavedFilesForEditorMessage message({fileContainer}); + + EXPECT_CALL(mockIpcServer, registerUnsavedFilesForEditor(message)) + .Times(1); + + serverProxy.registerUnsavedFilesForEditor(message); + scheduleServerMessages(); +} + +TEST_F(ClientServerInProcess, SendUnregisterUnsavedFilesForEditorMessage) +{ + ClangBackEnd::UnregisterUnsavedFilesForEditorMessage message({fileContainer}); + + EXPECT_CALL(mockIpcServer, unregisterUnsavedFilesForEditor(message)) + .Times(1); + + serverProxy.unregisterUnsavedFilesForEditor(message); + scheduleServerMessages(); +} + TEST_F(ClientServerInProcess, SendCompleteCodeMessage) { ClangBackEnd::CompleteCodeMessage message(Utf8StringLiteral("foo.cpp"), 24, 33, Utf8StringLiteral("do what I want")); @@ -195,8 +222,6 @@ TEST_F(ClientServerInProcess, SendUnregisterProjectPartsForEditorMessage) TEST_F(ClientServerInProcess, SendTranslationUnitDoesNotExistMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral(TESTDATA_DIR"/complete_extractor_function.cpp"), - Utf8StringLiteral("projectId")); ClangBackEnd::TranslationUnitDoesNotExistMessage message(fileContainer); EXPECT_CALL(mockIpcClient, translationUnitDoesNotExist(message)) @@ -220,8 +245,6 @@ TEST_F(ClientServerInProcess, SendProjectPartDoesNotExistMessage) TEST_F(ClientServerInProcess, SendDiagnosticsChangedMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), - Utf8StringLiteral("projectId")); ClangBackEnd::DiagnosticContainer container(Utf8StringLiteral("don't do that"), Utf8StringLiteral("warning"), {Utf8StringLiteral("-Wpadded"), Utf8StringLiteral("-Wno-padded")}, diff --git a/tests/unit/unittest/mockipcserver.h b/tests/unit/unittest/mockipcserver.h index daa9c15296..19ac454d1d 100644 --- a/tests/unit/unittest/mockipcserver.h +++ b/tests/unit/unittest/mockipcserver.h @@ -50,6 +50,10 @@ public: void(const ClangBackEnd::RegisterProjectPartsForEditorMessage &message)); MOCK_METHOD1(unregisterProjectPartsForEditor, void(const ClangBackEnd::UnregisterProjectPartsForEditorMessage &message)); + MOCK_METHOD1(registerUnsavedFilesForEditor, + void(const ClangBackEnd::RegisterUnsavedFilesForEditorMessage &message)); + MOCK_METHOD1(unregisterUnsavedFilesForEditor, + void(const ClangBackEnd::UnregisterUnsavedFilesForEditorMessage &message)); MOCK_METHOD1(completeCode, void(const ClangBackEnd::CompleteCodeMessage &message)); MOCK_METHOD1(requestDiagnostics, diff --git a/tests/unit/unittest/readandwritemessageblocktest.cpp b/tests/unit/unittest/readandwritemessageblocktest.cpp index 671d84d949..161a2529ba 100644 --- a/tests/unit/unittest/readandwritemessageblocktest.cpp +++ b/tests/unit/unittest/readandwritemessageblocktest.cpp @@ -40,6 +40,8 @@ #include <requestdiagnosticsmessage.h> #include <readmessageblock.h> #include <sourcelocation.h> +#include <registerunsavedfilesforeditormessage.h> +#include <unregisterunsavedfilesforeditormessage.h> #include <writemessageblock.h> #include <QBuffer> @@ -73,6 +75,11 @@ protected: void readPartialMessage(); protected: + ClangBackEnd::FileContainer fileContainer{Utf8StringLiteral("foo.cpp"), + Utf8StringLiteral("projectPartId"), + Utf8StringLiteral("unsaved content"), + true, + 1}; QBuffer buffer; ClangBackEnd::WriteMessageBlock writeMessageBlock; ClangBackEnd::ReadMessageBlock readMessageBlock; @@ -141,16 +148,11 @@ TEST_F(ReadAndWriteMessageBlock, CompareAliveMessage) TEST_F(ReadAndWriteMessageBlock, CompareRegisterTranslationUnitForEditorMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), Utf8StringLiteral("pathToProject.pro")); - QVector<ClangBackEnd::FileContainer> fileContainers({fileContainer}); - - CompareMessage(ClangBackEnd::RegisterTranslationUnitForEditorMessage(fileContainers)); + CompareMessage(ClangBackEnd::RegisterTranslationUnitForEditorMessage({fileContainer})); } TEST_F(ReadAndWriteMessageBlock, CompareUnregisterFileForEditorMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), Utf8StringLiteral("pathToProject.pro")); - CompareMessage(ClangBackEnd::UnregisterTranslationUnitsForEditorMessage({fileContainer})); } @@ -168,8 +170,6 @@ TEST_F(ReadAndWriteMessageBlock, CompareCodeCompletedMessage) TEST_F(ReadAndWriteMessageBlock, CompareDiagnosticsChangedMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), - Utf8StringLiteral("projectId")); ClangBackEnd::DiagnosticContainer container(Utf8StringLiteral("don't do that"), Utf8StringLiteral("warning"), {Utf8StringLiteral("-Wpadded"), Utf8StringLiteral("-Wno-padded")}, @@ -183,10 +183,18 @@ TEST_F(ReadAndWriteMessageBlock, CompareDiagnosticsChangedMessage) {container})); } -TEST_F(ReadAndWriteMessageBlock, RequestDiagnosticsMessage) +TEST_F(ReadAndWriteMessageBlock, CompareRegisterUnsavedFilesForEditorMessage) { - ClangBackEnd::FileContainer fileContainer(Utf8StringLiteral("foo.cpp"), Utf8StringLiteral("pathToProject.pro")); + CompareMessage(ClangBackEnd::RegisterUnsavedFilesForEditorMessage({fileContainer})); +} +TEST_F(ReadAndWriteMessageBlock, CompareUnregisterUnsavedFilesForEditorMessage) +{ + CompareMessage(ClangBackEnd::UnregisterUnsavedFilesForEditorMessage({fileContainer})); +} + +TEST_F(ReadAndWriteMessageBlock, CompareRequestDiagnosticsMessage) +{ CompareMessage(ClangBackEnd::RequestDiagnosticsMessage(fileContainer)); } |