blob: 8e2b68e3a0932959244f7d9ddc6187859f803a3a [file] [log] [blame]
modeltype Ecore uses ecore('http://www.eclipse.org/emf/2002/Ecore');
transformation bug417996;
configuration property c1 : Dict(Integer, Integer);
configuration property c2 : List(Integer);
configuration property c3 : Tuple(name : String, size : Integer);
configuration property c4 : Sequence(Integer);
configuration property c5 : Integer;
configuration property c6 : String;
configuration property c7 : Boolean;
intermediate property EAttribute::i1 : Dict(Integer, Integer);
intermediate property EAttribute::i2 : List(Integer);
intermediate property EAttribute::i3 : Tuple(name : String, size : Integer);
intermediate property EAttribute::i4 : Sequence(Integer);
intermediate property EAttribute::i5 : Integer;
intermediate property EAttribute::i6 : String;
intermediate property EAttribute::i7 : Boolean;
property p1 : Dict(Integer, Integer);
property p2 : List(Integer);
property p3 : Tuple(name : String, size : Integer);
property p4 : Sequence(Integer);
property p5 : Integer;
property p6 : String;
property p7 : Boolean;
main() {
var v1 : Dict(Integer, Integer);
var v2 : List(Integer);
var v3 : Tuple(name : String, size : Integer);
var v4 : Sequence(Integer);
var v5 : Integer;
var v6 : String;
var v7 : Boolean;
assert fatal(v1->size() = 0);
assert fatal(v2->size() = 0);
assert fatal(v3.name = "");
assert fatal(v4->size() = 0);
assert fatal(v5 = 0);
assert fatal(v6 = "");
assert fatal(not v7);
assert fatal(c1->size() = 0);
assert fatal(c2->size() = 0);
assert fatal(c3 = null); // speecial case for undefined configuration property
assert fatal(c4->size() = 0);
assert fatal(c5 = null); // speecial case for undefined configuration property
assert fatal(c6 = null); // speecial case for undefined configuration property
assert fatal(c7 = null); // speecial case for undefined configuration property
assert fatal(p1->size() = 0);
assert fatal(p2->size() = 0);
assert fatal(p3.name = "");
assert fatal(p4->size() = 0);
assert fatal(p5 = 0);
assert fatal(p6 = "");
assert fatal(not p7);
var e = object EAttribute{};
assert fatal(e.i1->size() = 0);
assert fatal(e.i2->size() = 0);
assert fatal(e.i3.name = "");
assert fatal(e.i4->size() = 0);
assert fatal(e.i5 = 0);
assert fatal(e.i6 = "");
assert fatal(not e.i7);
}