42 namespace Test {
namespace Int {
60 :
Test(
"Rel::Int::Var::XY::"+
str(irt0)+
"::"+
str(icl)+
"::"+
str(n),
73 using namespace Gecode;
85 assert(x.
size() == 2);
98 :
Test(
"Rel::Int::Var::XX::"+
str(irt0)+
"::"+
str(icl),
108 return cmp(x[0],
irt,x[0]);
129 :
Test(
"Rel::Bool::Var::XY::"+
str(irt0)+
"::"+
str(n),n+1,0,1,
135 return cmp(x[0],
irt,x[1]);
142 using namespace Gecode;
154 assert(x.
size() == 2);
155 using namespace Gecode;
170 :
Test(
"Rel::Bool::Var::XX::"+
str(irt0),1,0,1),
179 return cmp(x[0],
irt,x[0]);
210 using namespace Gecode;
219 assert(x.
size() == 1);
234 :
Test(
"Rel::Bool::Int::"+
str(irt0)+
"::"+
str(n)+
"::"+
str(c0),n,0,1,
246 using namespace Gecode;
258 assert(x.
size() == 1);
259 using namespace Gecode;
272 :
Test(
"Rel::Int::Seq::"+
str(n)+
"::"+
str(irt0)+
"::"+
str(icl),
280 for (
int i=0;
i<x.
size()-1;
i++)
285 for (
int i=0;
i<x.
size()-1;
i++)
305 :
Test(
"Rel::Int::Seq::Shared::"+
str(n)+
"::"+
str(irt0)+
"::"+
str(icl),
313 for (
int i=0;
i<x.
size()-1;
i++)
319 for (
int i=0;
i<2*n-1;
i++)
320 if (!
cmp(x[
i % n],
irt,x[(
i+1) % n]))
327 using namespace Gecode;
331 y[
i] = y[n+
i] = x[
i];
344 :
Test(
"Rel::Bool::Seq::"+
str(n)+
"::"+
str(irt0),n,0,1),
351 for (
int i=0;
i<x.
size()-1;
i++)
356 for (
int i=0;
i<x.
size()-1;
i++)
364 using namespace Gecode;
366 for (
int i=x.
size();
i--; )
380 :
Test(
"Rel::Bool::Seq::Shared::"+
str(n)+
"::"+
str(irt0),n,0,1),
387 for (
int i=0;
i<x.
size()-1;
i++)
393 for (
int i=0;
i<2*n-1;
i++)
394 if (!
cmp(x[
i % n],
irt,x[(
i+1) % n]))
401 using namespace Gecode;
418 :
Test(
"Rel::Int::Array::"+
str(irt0),6,-2,2),
irt(irt0) {}
422 for (
int i=0;
i<n;
i++)
432 using namespace Gecode;
435 for (
int i=0;
i<n;
i++) {
436 y[
i]=x[
i]; z[
i]=x[n+
i];
448 static const int n = 4;
454 :
Test(
"Rel::Int::Array::"+
str(irt0)+
"::"+
str(m)+
"::"+
str(n-m),
456 irt(irt0), n_fst(m) {
461 int n_snd = n - n_fst;
463 if (x[
i] != x[n_fst+
i])
464 return cmp(x[
i],
irt,x[n_fst+i]);
465 return cmp(n_fst,
irt,n_snd);
469 using namespace Gecode;
470 int n_snd = n - n_fst;
472 for (
int i=0;
i<n_fst;
i++) {
475 for (
int i=0;
i<n_snd;
i++) {
490 :
Test(
"Rel::Bool::Array::"+
str(irt0),10,0,1),
irt(irt0) {}
494 for (
int i=0;
i<n;
i++)
504 using namespace Gecode;
507 for (
int i=0;
i<n;
i++) {
519 using namespace Gecode;
522 (void)
new IntVarXY(irts.irt(),1,icls.icl());
523 (void)
new IntVarXY(irts.irt(),2,icls.icl());
524 (void)
new IntVarXX(irts.irt(),icls.icl());
525 (void)
new IntSeq(1,irts.irt(),icls.icl());
526 (void)
new IntSeq(2,irts.irt(),icls.icl());
527 (void)
new IntSeq(3,irts.irt(),icls.icl());
528 (void)
new IntSeq(5,irts.irt(),icls.icl());
537 (void)
new BoolSeq(1,irts.irt());
538 (void)
new BoolSeq(2,irts.irt());
539 (void)
new BoolSeq(3,irts.irt());
540 (void)
new BoolSeq(10,irts.irt());
546 for (
int c=-4;
c<=4;
c++) {
547 (void)
new IntInt(irts.irt(),1,
c);
548 (void)
new IntInt(irts.irt(),2,
c);
550 for (
int c=0;
c<=1;
c++) {
555 for (
int n_fst=0; n_fst<=4; n_fst++)