Created
February 6, 2013 21:33
-
-
Save vazexqi/4726064 to your computer and use it in GitHub Desktop.
This file shows the types of checks that we perform and the types of error messages that we can report.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package edu.illinois.vlsicad.tests | |
import edu.illinois.vlsicad.core.FileFormatChecker | |
import edu.illinois.vlsicad.core.URPException | |
class FileFormatCheckerTest extends GroovyTestCase { | |
void testValidFile() { | |
// Should not have any exceptions thrown | |
FileFormatChecker checker = new FileFormatChecker(file: new File("test3.cubes")) | |
checker.checkFileFormat() | |
} | |
void testInvalidFirstLineFile() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidFirstLine.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #1 (i.e., expected number of variables) is not a number.' == msg | |
} | |
void testInvalidFirstLineFile_lessThan1() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidFirstLineLessThan1.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #1 (i.e., expected number of variables) needs to be > 0. Saw 0 instead.' == msg | |
} | |
void testInvalidSecondLine() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidSecondLine.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #2 (i.e., number of cubes) is not a number.' == msg | |
} | |
void testInvalidSecondLine_lessThan1() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidSecondLineLessThan1.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #2 (i.e., number of cubes) needs to be > 0. Saw 0 instead.' == msg | |
} | |
void testExtraWhiteSpaceLines() { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("extraWhiteSpaceLines.cubes")) | |
checker.checkFileFormat() | |
} | |
void testExtraNonWhiteSpaceLines() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("extraNonWhitespaceLines.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Some non-whitespace data still remain in the file after reading the list of cubes.' == msg | |
} | |
void testInvalidFirstCharOfCube() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidFirstCharOfCube.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'First value of line #4 is not a number. Saw % but expected a number.' == msg | |
} | |
void testInvalidFirstCharOfCube_lessThan1() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("invalidFirstCharOfCubeLessThan1.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #4 contains an invalid number of variables. Saw 0 but expected >= 0.' == msg | |
} | |
void testCubeContainsMoreVariables() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("cubeContainsMoreVariables.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'The line #4 contains more/less variables than expected. Saw 2 but expected 1.' == msg | |
} | |
void testCubeContainsLessVariables() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("cubeContainsLessVariables.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'The line #4 contains more/less variables than expected. Saw 2 but expected 3.' == msg | |
} | |
void testCubeContainsVariablesNotInRangeOver() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("cubeContainsVariablesNotInRangeOver.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #4 contains some variables that are not within the range (1..2). Saw [3].' == msg | |
} | |
void testCubeContainsVariablesNotInRangeUnder() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("cubeContainsVariablesNotInRangeUnder.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #4 contains some variables that are not within the range (1..2). Saw [0].' == msg | |
} | |
void testCubeContainsVariablesNotInRange() { | |
def msg = shouldFail(URPException) { | |
FileFormatChecker checker = new FileFormatChecker(file: new File("cubeContainsVariablesNotInRange.cubes")) | |
checker.checkFileFormat() | |
} | |
assert 'Line #4 contains some variables that are not within the range (1..2). Saw [3, 4].' == msg | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment