tests/test-command-template.t
branchstable
changeset 20663 5ab28a2e9962
parent 20662 a54c0d830499
child 20670 0084fcd5d7e2
child 20857 6eb55310fcbc
equal deleted inserted replaced
20662:a54c0d830499 20663:5ab28a2e9962
  1608   >
  1608   >
  1609   <>\n<[>
  1609   <>\n<[>
  1610   <>\n<]>
  1610   <>\n<]>
  1611   <>\n<
  1611   <>\n<
  1612 
  1612 
       
  1613 "string-escape"-ed "\x5c\x786e" becomes r"\x6e" (once) or r"n" (twice)
       
  1614 
       
  1615   $ hg log -R a -r 0 --template '{if("1", "\x5c\x786e", "NG")}\n'
       
  1616   \x6e
       
  1617   $ hg log -R a -r 0 --template '{if("1", r"\x5c\x786e", "NG")}\n'
       
  1618   \x5c\x786e
       
  1619   $ hg log -R a -r 0 --template '{if("", "NG", "\x5c\x786e")}\n'
       
  1620   \x6e
       
  1621   $ hg log -R a -r 0 --template '{if("", "NG", r"\x5c\x786e")}\n'
       
  1622   \x5c\x786e
       
  1623 
       
  1624   $ hg log -R a -r 2 --template '{ifeq("no perso\x6e", desc, "\x5c\x786e", "NG")}\n'
       
  1625   \x6e
       
  1626   $ hg log -R a -r 2 --template '{ifeq(r"no perso\x6e", desc, "NG", r"\x5c\x786e")}\n'
       
  1627   \x5c\x786e
       
  1628   $ hg log -R a -r 2 --template '{ifeq(desc, "no perso\x6e", "\x5c\x786e", "NG")}\n'
       
  1629   \x6e
       
  1630   $ hg log -R a -r 2 --template '{ifeq(desc, r"no perso\x6e", "NG", r"\x5c\x786e")}\n'
       
  1631   \x5c\x786e
       
  1632 
       
  1633   $ hg log -R a -r 8 --template '{join(files, "\n")}\n'
       
  1634   fourth
       
  1635   second
       
  1636   third
       
  1637   $ hg log -R a -r 8 --template '{join(files, r"\n")}\n'
       
  1638   fourth\nsecond\nthird
       
  1639 
       
  1640   $ hg log -R a -r 2 --template '{rstdoc("1st\n\n2nd", "htm\x6c")}'
       
  1641   <p>
       
  1642   1st
       
  1643   </p>
       
  1644   <p>
       
  1645   2nd
       
  1646   </p>
       
  1647   $ hg log -R a -r 2 --template '{rstdoc(r"1st\n\n2nd", "html")}'
       
  1648   <p>
       
  1649   1st\n\n2nd
       
  1650   </p>
       
  1651   $ hg log -R a -r 2 --template '{rstdoc("1st\n\n2nd", r"htm\x6c")}'
       
  1652   1st
       
  1653   
       
  1654   2nd
       
  1655 
       
  1656   $ hg log -R a -r 2 --template '{strip(desc, "\x6e")}\n'
       
  1657   o perso
       
  1658   $ hg log -R a -r 2 --template '{strip(desc, r"\x6e")}\n'
       
  1659   no person
       
  1660   $ hg log -R a -r 2 --template '{strip("no perso\x6e", "\x6e")}\n'
       
  1661   o perso
       
  1662   $ hg log -R a -r 2 --template '{strip(r"no perso\x6e", r"\x6e")}\n'
       
  1663   no perso
       
  1664 
       
  1665   $ hg log -R a -r 2 --template '{sub("\\x6e", "\x2d", desc)}\n'
       
  1666   -o perso-
       
  1667   $ hg log -R a -r 2 --template '{sub(r"\\x6e", "-", desc)}\n'
       
  1668   no person
       
  1669   $ hg log -R a -r 2 --template '{sub("n", r"\x2d", desc)}\n'
       
  1670   \x2do perso\x2d
       
  1671   $ hg log -R a -r 2 --template '{sub("n", "\x2d", "no perso\x6e")}\n'
       
  1672   -o perso-
       
  1673   $ hg log -R a -r 2 --template '{sub("n", r"\x2d", r"no perso\x6e")}\n'
       
  1674   \x2do perso\x6e
       
  1675 
       
  1676   $ hg log -R a -r 8 --template '{files % "{file}\n"}'
       
  1677   fourth
       
  1678   second
       
  1679   third
       
  1680   $ hg log -R a -r 8 --template '{files % r"{file}\n"}\n'
       
  1681   fourth\nsecond\nthird\n
       
  1682 
       
  1683 Test string escapeing in nested expression:
       
  1684 
       
  1685   $ hg log -R a -r 8 --template '{ifeq(r"\x6e", if("1", "\x5c\x786e"), join(files, "\x5c\x786e"))}\n'
       
  1686   fourth\x6esecond\x6ethird
       
  1687   $ hg log -R a -r 8 --template '{ifeq(if("1", r"\x6e"), "\x5c\x786e", join(files, "\x5c\x786e"))}\n'
       
  1688   fourth\x6esecond\x6ethird
       
  1689 
       
  1690   $ hg log -R a -r 8 --template '{join(files, ifeq(branch, "default", "\x5c\x786e"))}\n'
       
  1691   fourth\x6esecond\x6ethird
       
  1692   $ hg log -R a -r 8 --template '{join(files, ifeq(branch, "default", r"\x5c\x786e"))}\n'
       
  1693   fourth\x5c\x786esecond\x5c\x786ethird
       
  1694 
       
  1695   $ hg log -R a -r 3:4 --template '{rev}:{sub(if("1", "\x6e"), ifeq(branch, "foo", r"\x5c\x786e", "\x5c\x786e"), desc)}\n'
       
  1696   3:\x6eo user, \x6eo domai\x6e
       
  1697   4:\x5c\x786eew bra\x5c\x786ech
       
  1698 
  1613 Test recursive evaluation:
  1699 Test recursive evaluation:
  1614 
  1700 
  1615   $ hg init r
  1701   $ hg init r
  1616   $ cd r
  1702   $ cd r
  1617   $ echo a > a
  1703   $ echo a > a