anchor.diff:                   lists:flatten(encode([#sms{text="Hello!"}]))),
                 ?assertEqual(
                    ?XML("<Sms action=\"default/sms\">Hello!</Sms>"),
  -                 lists:flatten(encode([#sms{text="Hello!", action="default/sms"}])))
  +                 lists:flatten(encode([#sms{text="Hello!",
  +                                            action="default/sms"}])))
         end},
        {"dial twiml",
         fun() ->
                 ?assertEqual(
  -                 ?XML("<Dial></Dial>"),
  +                 ?XML("<Dial/>"),
                    lists:flatten(encode([#dial{}]))),
                 ?assertEqual(
                    ?XML("<Dial action=\"/do_stuff\">1234833</Dial>"),
  -                 lists:flatten(encode([#dial{action="/do_stuff", body="1234833"}]))),
  -              ?assertEqual(
  -                 ?XML("<Dial action=\"/do_stuff\"><Number>1234833</Number></Dial>"),
  -                 lists:flatten(encode([#dial{action="/do_stuff", body=#number{number="1234833"}}]))),
  -              ?assertEqual(
  -                 ?XML("<Dial action=\"/do_stuff\"><Number sendDigits=\"9528\">1234833</Number></Dial>"),
                    lists:flatten(encode([#dial{action="/do_stuff",
  -                                             body=#number{send_digits="9528", number="1234833"}}])))
  +                                             body="1234833"}]))),
  +              ?assertEqual(
  +                 ?XML("<Dial action=\"/do_stuff\"><Number>1234833</Number>"
  +                      ++ "</Dial>"),
  +                 lists:flatten(encode([#dial{action="/do_stuff",
  +                                             body=[#number{number="1234833"}]}]))),
  +              ?assertEqual(
  +                 ?XML("<Dial action=\"/do_stuff\"><Number sendDigits=\"9528\">"
  +                      ++ "1234833</Number></Dial>"),
  +                 lists:flatten(encode([#dial{action="/do_stuff",
  +                                             body=[#number{send_digits="9528",
  +                                                          number="1234833"}]}])))
         end},
        {"composite twiml",
         fun() ->
                 ?assertEqual(
  -                 ?XML("<Say>Hello! This is a voice message</Say><Say>This is another message</Say><Dial>48321523</Dial>"),
  -                 lists:flatten(encode([#say{text="Hello! This is a voice message"},
  +                 ?XML("<Say>Hello! This is a voice message</Say>"
  +                      ++ "<Say>This is another message</Say>"
  +                      ++ "<Dial>48321523</Dial>"),
  +                 lists:flatten(encode([#say{text="Hello! This is a voice "
  +                                            ++ "message"},
                                          #say{text="This is another message"},
                                          #dial{body="48321523"}])))
         end},
  
positive.code:                  ?XML("<Record action=\"eval_reCOrd\"/>"),
                   lists:flatten(encode([#record{action="eval_reCOrd"}]))),
                ?assertEqual(
                   ?XML("<Record action=\"eval_record\" method=\"GET\" timeout=\"10\"/>"),
                   lists:flatten(encode([#record{action="eval_record", timeout=10, method='GET'}])))
        end},
       {"sms twiml",
        fun() ->
  
negative.code:     NewRank = incr(Rank2),
      % we don't want dial to terminate with a hangup
      {_, NewRank2, NewBody} = comp3(D#dial.body, nohangup, state, Fun,
                                     NewRank, []),
      NewRank3 = bump(NewRank2),
      CloseDial = Fun("Dial", NewRank3),
      NewRec = Fun(D, Rank2),
  