disassembler: 100% line coverage
This commit is contained in:
parent
cc3bc3a7fe
commit
c1f457814d
@ -6,7 +6,7 @@ use owo_colors::{OwoColorize, Style};
|
|||||||
use std::fmt::Display;
|
use std::fmt::Display;
|
||||||
|
|
||||||
#[allow(non_camel_case_types, non_snake_case, missing_docs)]
|
#[allow(non_camel_case_types, non_snake_case, missing_docs)]
|
||||||
#[derive(Clone, Copy, InstructionSet)]
|
#[derive(Clone, Copy, Debug, InstructionSet, PartialEq, Eq)]
|
||||||
/// Implements a Disassembler using imperative_rs
|
/// Implements a Disassembler using imperative_rs
|
||||||
pub enum Insn {
|
pub enum Insn {
|
||||||
/// | 00e0 | Clear screen memory to 0s
|
/// | 00e0 | Clear screen memory to 0s
|
||||||
|
@ -189,6 +189,22 @@ mod cpu {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mod dis {
|
||||||
|
use chirp::cpu::disassembler::Insn;
|
||||||
|
use imperative_rs::InstructionSet;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn clone() {
|
||||||
|
let opcode = Insn::decode(&[0xeF, 0xa1]).unwrap().1; // random valid opcode
|
||||||
|
let clone = opcode.clone();
|
||||||
|
assert_eq!(opcode, clone);
|
||||||
|
}
|
||||||
|
#[test]
|
||||||
|
fn debug() {
|
||||||
|
println!("{:?}", Insn::decode(b"AA")) // "sne #41, v1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn error() {
|
fn error() {
|
||||||
let error = chirp::error::Error::MissingRegion { region: Screen };
|
let error = chirp::error::Error::MissingRegion { region: Screen };
|
||||||
|
Loading…
Reference in New Issue
Block a user