public void ByteStreamToStringTest() { string expected = "0000 000F"; byte[] b = new byte[] { 0x00, 0x00, 0x00, 0x0F }; string result = PaletteHelper.ByteStreamToString(b); Assert.AreEqual(expected, result); expected = "0500 0007 0800 2A02"; b = new byte[] { 0x05, 0x00, 0x00, 0x07, 0x08, 0x00, 0x2A, 0x02 }; result = PaletteHelper.ByteStreamToString(b); Assert.AreEqual(expected, result); }
public void WriteByteStreamBasicTest() { // test #1 // check that a bis0sprite's byte representation is what we expect string s_expected = PaletteHelper.ByteStreamToString(CharacterConfig.GetSpriteResourceFromRom(CharacterConfig.CHARACTERS.Dictator, CharacterConfig.BUTTONS.lp)); var data_expected = PaletteHelper.StringToByteStream(s_expected); var d = Character.CreateDefaultCharacter(CharacterConfig.CHARACTERS.Dictator, CharacterConfig.BUTTONS.lp); var s = d.sprite; var data_result = s.ToByteStream(); for (int i = 0; i < data_expected.Length; i++) { if (s.unusedOffsets.Contains(i)) { continue; } Assert.AreEqual(data_expected[i], data_result[i]); } }
public void WriteByteStreamChangeFieldsTest() { var d = Character.CreateDefaultCharacter(CharacterConfig.CHARACTERS.Dictator, CharacterConfig.BUTTONS.lp); var sprite = d.sprite; string s_expected = PaletteHelper.ByteStreamToString(CharacterConfig.GetSpriteResourceFromRom(CharacterConfig.CHARACTERS.Dictator, CharacterConfig.BUTTONS.lp)); var data_expected = PaletteHelper.StringToByteStream(s_expected); // test #2 // modify a few fields, check that results are what we expect // pads 5 data_expected[0] = 0x23; data_expected[1] = 0x01; data_expected[0 + 3 * 32] = 0x23; data_expected[1 + 3 * 32] = 0x01; data_expected[0 + 4 * 32] = 0x23; data_expected[1 + 4 * 32] = 0x01; // costume 5 data_expected[2] = 0x12; data_expected[3] = 0x03; data_expected[2 + 3 * 32] = 0x12; data_expected[3 + 3 * 32] = 0x03; data_expected[2 + 4 * 32] = 0x12; data_expected[3 + 4 * 32] = 0x03; sprite.SetColor("pads5", Color.FromArgb(0, 17, 34, 51)); sprite.SetColor("costume5", Color.FromArgb(0, 51, 17, 34)); var data_result = sprite.ToByteStream(); for (int i = 0; i < data_expected.Length; i++) { if (sprite.unusedOffsets.Contains(i)) { continue; } Assert.AreEqual(data_expected[i], data_result[i]); } }