public void PP_CompoundAddition()
 {
     var id = new Identifier("id", PrimitiveType.Word32, null);
     var pp = new ProcedurePrettifier(null);
     var m = new AbsynCodeEmitter(new List<AbsynStatement>());
     Assert.AreEqual("id += 2<32>;", m.Assign(id, m.IAdd(id, 2)).Accept(pp).ToString());
 }
 private void RunTest(string sExp, Action<AbsynCodeEmitter> gen)
 {
     var proc = new Procedure(new FakeArchitecture(new ServiceContainer()), "test", Address.Ptr32(0x00123400), new Frame(PrimitiveType.Ptr32));
     proc.Body = new List<AbsynStatement>();
     var m = new AbsynCodeEmitter(proc.Body);
     gen(m);
     var trrm = new ProcedurePrettifier(proc);
     trrm.Transform();
     var sw = new StringWriter();
     GenCode(proc, sw);
     if (sExp != sw.ToString())
     {
         Debug.Print("{0}", sw);
         Assert.AreEqual(sExp, sw.ToString());
     }
 }