31 lines
898 B
Kotlin
31 lines
898 B
Kotlin
package android.emu6502.nes
|
|
|
|
import com.google.common.truth.Truth.assertThat
|
|
import org.junit.After
|
|
import org.junit.Before
|
|
import org.junit.Test
|
|
import java.io.File
|
|
|
|
class INESFileParserTest {
|
|
val tempFile: File = File.createTempFile("foo", "bar")
|
|
|
|
@Before fun setUp() {
|
|
tempFile.writeBytes((0..40).map(Int::toByte).toByteArray())
|
|
}
|
|
|
|
@After fun tearDown() {
|
|
tempFile.delete()
|
|
}
|
|
|
|
@Test fun invalidHeader() {
|
|
assertThat(INESFileParser.parseFileHeader(tempFile.inputStream()).isValid()).isFalse()
|
|
}
|
|
|
|
@Test fun validHeader() {
|
|
val testRom = javaClass.classLoader.getResource("roms/testrom.nes").toURI()
|
|
val header = INESFileParser.parseFileHeader(File(testRom).inputStream())
|
|
assertThat(header).isEqualTo(INESFileHeader(
|
|
INESFileParser.INES_FILE_MAGIC, 0x10, 0x10, 0x40, 0x0, 0x0, INESFileParser.PADDING))
|
|
assertThat(header.isValid()).isTrue()
|
|
}
|
|
} |