1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
/*******************************************************************************
* Copyright (c) 2016 protos software gmbh (http://www.protos.de).
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* CONTRIBUTORS:
* Jan Belle (initial contribution)
*
*******************************************************************************/
#include "MSCLoggerTest.h"
#include "common/debugging/MSCLogger.h"
#include "etUnit/etUnit.h"
using namespace etRuntime;
void MSCLoggerTest::testLogger() {
MSCLogger logger;
logger.setMSC("MSCTest", "log/");
logger.open();
logger.addMessageAsyncOut("Source", "Target", "MessageAsync");
logger.addMessageAsyncIn("Source", "Target", "MessageAsync");
logger.addMessageSyncCall("Source", "Target", "MessageSyncCall");
logger.addMessageSyncReturn("Source", "Target", "MessageSyncReturn");
logger.addMessageActorCreate("Source", "Target");
logger.addMessageActorDestroy("Source", "Target");
logger.addNote("Actor", "Note");
logger.addMessageCreate("Source", "Target");
logger.addActorState("Actor", "State");
logger.addVisibleComment("This is a comment");
logger.close();
const char* failMsg = "MSCLoggerTest failed";
Vector<String>& result = logger.getCommandList();
Vector<String>::iterator it = result.begin();
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource >-- Target MessageAsync"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource --> Target MessageAsync"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource ==> Target MessageSyncCall"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource <== Target MessageSyncReturn"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource (!) Target "));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource (X) Target "));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tActor note: Note"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tSource (!) Target "));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("\tActor >>> State"));
++it;
EXPECT_TRUE(m_caseId, failMsg,
!(*it).compare("# This is a comment"));
++it;
}
void MSCLoggerTest::runAllTestCases() {
ADD_TESTCASE_CPP(testLogger)
}
|