< prev index next >
test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/IntJVMOption.java
Print this page
*** 198,210 ****
--- 198,215 ----
*/
@Override
protected List<String> getValidValues() {
List<String> validValues = new ArrayList<>();
+ if (testMinRange) {
validValues.add(min.toString());
+ }
+ if (testMaxRange) {
validValues.add(max.toString());
+ }
+ if (testMinRange) {
if ((min.compareTo(MINUS_ONE) == -1) && (max.compareTo(MINUS_ONE) == 1)) {
/*
* Add -1 as valid value if min is less than -1 and max is greater than -1
*/
validValues.add("-1");
*** 220,230 ****
--- 225,237 ----
/*
* Add 1 as valid value if min is less than 1 and max is greater than 1
*/
validValues.add("1");
}
+ }
+ if (testMaxRange) {
if ((min.compareTo(MAX_4_BYTE_INT_PLUS_ONE) == -1) && (max.compareTo(MAX_4_BYTE_INT_PLUS_ONE) == 1)) {
/*
* Check for overflow when flag is assigned to the
* 4 byte int variable
*/
*** 236,245 ****
--- 243,253 ----
* Check for overflow when flag is assigned to the
* 4 byte unsigned int variable
*/
validValues.add(MAX_4_BYTE_UNSIGNED_INT_PLUS_ONE.toString());
}
+ }
return validValues;
}
/**
*** 250,279 ****
*/
@Override
protected List<String> getInvalidValues() {
List<String> invalidValues = new ArrayList<>();
- if (withRange) {
/* Return invalid values only for options which have defined range in VM */
! if ((is32Bit && min.compareTo(MIN_4_BYTE_INT) != 0)
! || (!is32Bit && min.compareTo(MIN_LONG) != 0)) {
invalidValues.add(min.subtract(BigInteger.ONE).toString());
}
! if (!unsigned
! && ((is32Bit && (max.compareTo(MAX_4_BYTE_INT) != 0))
! || (!is32Bit && (max.compareTo(MAX_LONG) != 0)))) {
invalidValues.add(max.add(BigInteger.ONE).toString());
}
!
! if (unsigned
! && ((is32Bit && (max.compareTo(MAX_4_BYTE_UNSIGNED_INT) != 0))
! || (!is32Bit && !uint64 && (max.compareTo(MAX_UNSIGNED_LONG) != 0))
! || (uint64 && (max.compareTo(MAX_UNSIGNED_LONG_64) != 0)))) {
invalidValues.add(max.add(BigInteger.ONE).toString());
}
}
return invalidValues;
}
/**
--- 258,291 ----
*/
@Override
protected List<String> getInvalidValues() {
List<String> invalidValues = new ArrayList<>();
/* Return invalid values only for options which have defined range in VM */
! if (withRange) {
! if (unsigned) {
! /* Only add non-negative out-of-range values for unsigned options */
! if (min.compareTo(BigInteger.ZERO) == 1) {
invalidValues.add(min.subtract(BigInteger.ONE).toString());
}
! if ((is32Bit && (max.compareTo(MAX_4_BYTE_UNSIGNED_INT) != 0))
! || (!is32Bit && !uint64 && (max.compareTo(MAX_UNSIGNED_LONG) != 0))
! || (uint64 && (max.compareTo(MAX_UNSIGNED_LONG_64) != 0))) {
invalidValues.add(max.add(BigInteger.ONE).toString());
}
! } else {
! if ((is32Bit && min.compareTo(MIN_4_BYTE_INT) != 0)
! || (!is32Bit && min.compareTo(MIN_LONG) != 0)) {
! invalidValues.add(min.subtract(BigInteger.ONE).toString());
! }
! if ((is32Bit && (max.compareTo(MAX_4_BYTE_INT) != 0))
! || (!is32Bit && (max.compareTo(MAX_LONG) != 0))) {
invalidValues.add(max.add(BigInteger.ONE).toString());
}
}
+ }
return invalidValues;
}
/**
< prev index next >