conformance_test/positive_tests added
[deliverable/titan.core.git] / conformance_test / positive_tests / 21_configuration_operations / 2101_connection_operations / 210101_connect_and_map_operations / NegSem_210101_connect_and_map_operations_011.ttcn
1 /******************************************************************************
2 * Copyright (c) 2000-2016 Ericsson Telecom AB
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Adrien Kirjak – initial implementation
10 *
11 ** @version 0.0.1
12 ** @purpose 1:21.1.1, violation of strong typing rules for local ports in map operations
13 ** @verdict pass reject
14 ***************************************************/
15
16 // The following requirements are tested:
17 // If the type of the component referenced in a connection operation is known (either
18 // when the component reference is a variable or value returned from a function or the
19 // type is defined in the runs on, mtc or system clause of the calling function), the
20 // referenced port declaration shall be present in this component type.
21
22 module NegSem_210101_connect_and_map_operations_011 {
23
24 type port P message {
25 inout integer;
26 } with {extension "internal"}
27
28 type component GeneralComp {
29 port P p;
30 }
31
32 type component GeneralCompEx extends GeneralComp {
33 port P p2;
34 }
35
36 function f_map() runs on GeneralComp system GeneralComp {
37 map(system:p, self:p2); // although the actual instance of self contains the p2 port,
38 // it cannot be referenced as the "runs on" clause contains the GeneralComp type and
39 // not GeneralCompEx
40 }
41
42 testcase TC_NegSem_210101_connect_and_map_operations_011() runs on GeneralCompEx system GeneralComp {
43 f_map();
44 setverdict(pass);
45 }
46
47 control{
48 execute(TC_NegSem_210101_connect_and_map_operations_011());
49 }
50 }
This page took 0.031908 seconds and 5 git commands to generate.