1 /******************************************************************************
2 * Copyright (c) 2000-2014 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 // HS41022 - Titan 2.2.pl0 Wrong value for matching for 19 digit integer
12 // the number of bits this value is represented on (in this case 63) needs to be dividable by 7
13 const integer BIG_NUMBER := 9223372036854775807;
15 type port PT message {
17 } with { extension "internal" }
23 function fc_par(in integer i) runs on CT {
24 if (i == BIG_NUMBER) {
32 function fc_msg() runs on CT {
35 [] pt.receive(integer:BIG_NUMBER) { setverdict(pass); }
36 [] pt.receive(integer:?) { setverdict(fail); }
37 [] t.timeout { setverdict(inconc); }
41 // Send the number as a function parameter
42 testcase tc_big_int_par_with_2_comps() runs on CT {
43 var CT the_other_comp := CT.create;
44 connect(self:pt, the_other_comp:pt);
46 the_other_comp.start(fc_par(BIG_NUMBER));
52 // Send the number as a message on a port
53 testcase tc_big_int_msg_with_2_comps() runs on CT {
54 var CT the_other_comp := CT.create;
55 connect(self:pt, the_other_comp:pt);
57 the_other_comp.start(fc_msg());
65 execute(tc_big_int_par_with_2_comps());
66 execute(tc_big_int_msg_with_2_comps());