public void AssertAreEqual(ICompilerPass pass, Instruction[] expected, Instruction[] passInput) { var actual = pass.Pass(new List <Instruction>(passInput)); var msg = $@" input = {GetInstructionString(passInput)} expected = {GetInstructionString(expected)} actual = {GetInstructionString(actual)} "; Assert.IsTrue(expected.SequenceEqual(actual), msg); }