Skip to content

Commit 99f7d6f

Browse files
rfe/validation_rule_art_0040
1 parent 5625f81 commit 99f7d6f

6 files changed

Lines changed: 129 additions & 68 deletions

File tree

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
protocol PROTO {
2+
in in1();
3+
out out1();
4+
};
5+
6+
capsule Top {
7+
service behavior port port1 : PROTO;
8+
unwired publish behavior port port2 : PROTO;
9+
10+
statemachine {
11+
state State, State2;
12+
initial -> State;
13+
State -> State2 on port1.rtBound, port2.rtUnbound
14+
`
15+
// Dead code here
16+
`;
17+
};
18+
};
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
group: validation
3+
steps: generate
4+
ac_output match1: WARNING[0040]|12:28|rtBound|port1
5+
ac_output match2: WARNING[0040]|12:39|rtUnbound|port2
6+
---
7+
Test validation rule `ART_0040_boundUnboundTriggerForNonNotificationPort`.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
let tc = TCF.define(TCF.ART_TO_CPP);
2+
tc.topCapsule = "Top";
3+
tc.targetFolder = 'art_0040_target';

art-comp-test/validation.code-workspace

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,12 @@
113113
{
114114
"path": "tests/art_0038"
115115
},
116-
{
116+
{
117117
"path": "tests/art_0039"
118118
},
119+
{
120+
"path": "tests/art_0040"
121+
},
119122
{
120123
"path": "tests/cpp_4000"
121124
},
@@ -172,6 +175,9 @@
172175
},
173176
{
174177
"path": "tests/tc_7015"
178+
},
179+
{
180+
"path": "tests/tc_7017"
175181
}
176182
]
177183
}

docs-sources/samples.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ This sample shows how to use [dependency injection](https://en.wikipedia.org/wik
6363
## [QtTrafficLight]({$vars.github.repo$}/tree/main/art-samples/QtTrafficLight)
6464
This application has a user interface developed with [Qt](https://www.qt.io/) which controls a realtime application that implements the logic of a traffic light that works together with a pedestrian light. Note that you need to have [Qt](https://www.qt.io/) installed to build and run this sample.
6565

66-
**Art:** [composite state with entry- and exitpoint](art-lang/index.md#hierarchical-state-machine), [external port](target-rts/integrate-with-external-code.md#external-port), [notification port](art-lang/index.md#notification-port), [internal transition](art-lang/index.md#internal-transition)
66+
**Art:** [composite state with entry- and exitpoint](art-lang/index.md#hierarchical-state-machine), [external port](target-rts/integrate-with-external-code.md#external-port), [notifying port](art-lang/index.md#notifying-port), [internal transition](art-lang/index.md#internal-transition)
6767

6868
**TargetRTS:** [RTTiming](targetrts-api/class_timing_1_1_base.html)::cancelTimer()
6969

0 commit comments

Comments
 (0)