Commit 960070b8 authored by urbant's avatar urbant
Browse files

New tests for the section 7 and 6.3.4

Minor corrections in existing tests
Progress file update
parent 7b332fee
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -25,12 +25,12 @@ module NegSem_060304_compatibility_of_communication_operations_001
    
    type charstring MyString; // synonym
    
    testcase TC_060304_compatibility_of_communication_operations_001() runs on GeneralComp {        
    testcase TC_NegSem_060304_compatibility_of_communication_operations_001() runs on GeneralComp {        
        p.send(MyString:"abc");
        setverdict(pass);
	}
	
	control {        
		execute(TC_060304_compatibility_of_communication_operations_001());
		execute(TC_NegSem_060304_compatibility_of_communication_operations_001());
	}
}
+2 −2
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@ module NegSem_060304_compatibility_of_communication_operations_002
    
    type charstring MyString; // synonym
    
    testcase TC_060304_compatibility_of_communication_operations_002() runs on GeneralComp {        
    testcase TC_NegSem_060304_compatibility_of_communication_operations_002() runs on GeneralComp {        
        p.send(charstring:"abc");
        alt {
            []p.receive(MyString:?) {}
@@ -35,6 +35,6 @@ module NegSem_060304_compatibility_of_communication_operations_002
	}
	
	control {        
		execute(TC_060304_compatibility_of_communication_operations_002());
		execute(TC_NegSem_060304_compatibility_of_communication_operations_002());
	}
}
+2 −2
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_003
        p.raise(S, MyString:"abc");
    }
    
    testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp {        
    testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp {        
        var GeneralComp v_ptc := GeneralComp.create("PTC");
        connect(self:p, v_ptc:p);
        v_ptc.start(f_mirror());
@@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_003
	}
	
	control {        
		execute(TC_060304_compatibility_of_communication_operations_003());
		execute(TC_NegSem_060304_compatibility_of_communication_operations_003());
	}
}
+2 −2
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_004
        p.raise(S, "abc");
    }
    
    testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp {        
    testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp {        
        var GeneralComp v_ptc := GeneralComp.create("PTC");
        connect(self:p, v_ptc:p);
        v_ptc.start(f_mirror());
@@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_004
	}
	
	control {        
		execute(TC_060304_compatibility_of_communication_operations_003());
		execute(TC_NegSem_060304_compatibility_of_communication_operations_003());
	}
}
+42 −0
Original line number Diff line number Diff line
/***************************************************
 ** @author   STF 487
 ** @version  0.0.1
 ** @purpose  1:6.3.4, compatible but not strongly typed value in trigger operation
 ** @verdict  pass reject
 ***************************************************/

// The following requirement is tested:
// The communication operations (see clause 22) send, receive, trigger, call, getcall, 
// reply, getreply and raise and connection operations connect, map, disconnect and 
// unmap (see clause 21.1) are exceptions to the weaker rule of type compatibility 
// and require strong typing. The types of values or templates directly used as 
// parameters to these operations shall also be explicitly defined in the associated
// port type definition.

module NegSem_060304_compatibility_of_communication_operations_005
{
    type port P message {
        inout charstring;
    }    
    
    type component GeneralComp {
        port P p;
	}
    
    type charstring MyString; // synonym
    
    testcase TC_NegSem_060304_compatibility_of_communication_operations_005() runs on GeneralComp {        
        timer t := 2.0;
        t.start;
        p.send(charstring:"abc");
        alt {
            []p.trigger(MyString:?) {}
            []t.timeout {} // to avoid endless blocking in case the previous statement is incorrectly accepted
        }
        setverdict(pass);
	}
	
	control {        
		execute(TC_NegSem_060304_compatibility_of_communication_operations_005());
	}
}
Loading