verifyResult(second.join(first), prepareBox(new IntervalValue(1, 4)));
first = getSingleBoxAndVerify(new IntervalValue(1, 2));
second = getSingleBoxAndVerify(new IntervalValue(3, 4));
verifyResult(first.join(second), prepareBox(new IntervalValue(1, 4)));
verifyResult(second.join(first), prepareBox(new IntervalValue(1, 4)));
first = getSingleBoxAndVerify(new IntervalValue(1, 2));
second = getSingleBoxAndVerify(new IntervalValue(4, 5));
verifyResult(first.join(second), prepareBox(new IntervalValue(1, 2)), prepareBox(new IntervalValue(4, 5)));
verifyResult(second.join(first), prepareBox(new IntervalValue(1, 2)), prepareBox(new IntervalValue(4, 5)));