commandline.vader 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. Include: include/setup.vader
  2. Given (fruits):
  3. apple;:;;banana::cake
  4. data;;exchange:;::format
  5. Execute (regular expression):
  6. %EasyAlign/[:;]\+/
  7. AssertEqual ':EasyAlign /[:;]\+/', g:easy_align_last_command
  8. Expect:
  9. apple ;:;; banana::cake
  10. data ;; exchange:;::format
  11. Execute (options dictionary):
  12. %EasyAlign/[:;]\+/{ 'left_margin': '<', 'right_margin': 3 }
  13. Expect:
  14. apple<;:;; banana::cake
  15. data < ;; exchange:;::format
  16. Execute (fuzzy matching):
  17. %EasyAlign/[:;]\+/{ 'l':'<', 'r': '>'}
  18. Expect:
  19. apple<;:;;>banana::cake
  20. data < ;;>exchange:;::format
  21. Execute (shorthand notation of margin):
  22. %EasyAlign/[:;]\+/l0r0
  23. Expect:
  24. apple;:;;banana::cake
  25. data ;;exchange:;::format
  26. Execute (delimiter align):
  27. %EasyAlign*/[:;]\+/l0r0dc
  28. Expect:
  29. apple;:;;banana :: cake
  30. data ;; exchange:;::format
  31. Execute (DEPRECATED: shorthand notation of mode_sequence and margin):
  32. %EasyAlign/[:;]\+/mrc*l2r2
  33. Expect:
  34. apple ;:;; banana :: cake
  35. data ;; exchange :;:: format
  36. Execute (shorthand notation of align and margin):
  37. %EasyAlign/[:;]\+/arc*l2r2
  38. Expect:
  39. apple ;:;; banana :: cake
  40. data ;; exchange :;:: format
  41. Execute (DEPRECATED: deep indentation):
  42. %EasyAlign/[:;]\+/mrc*l2r2
  43. %EasyAlign*/[:;]\+/idmrl*
  44. Expect:
  45. apple ;:;; banana :: cake
  46. data ;; exchange :;:: format
  47. Execute (deep indentation):
  48. %EasyAlign/[:;]\+/arc*l2r2
  49. %EasyAlign*/[:;]\+/idarl*
  50. Expect:
  51. apple ;:;; banana :: cake
  52. data ;; exchange :;:: format
  53. Execute (stick_to_left):
  54. %EasyAlign*/[:;]\+/stl1l0dlrm3
  55. Expect:
  56. apple;:;; banana:: cake
  57. data;; exchange:;:: format
  58. Execute (<):
  59. %EasyAlign*/[:;]\+/<l0dlrm3
  60. Expect:
  61. apple;:;; banana:: cake
  62. data;; exchange:;:: format
  63. Execute (>):
  64. %EasyAlign*/[:;]\+/l0dl<>rm3
  65. Expect:
  66. apple;:;; banana :: cake
  67. data ;; exchange:;:: format
  68. Execute (different regular expression):
  69. %EasyAlign*/../{'lm':'<','rm':'>'}
  70. Expect:
  71. ap><pl><e;><:;><;b><an><an><a:><:c><ak>e
  72. da><ta><;;><ex><ch><an><ge><:;><::><fo><rm><at
  73. Execute (merge different option notations):
  74. %EasyAlign*/../iu0 { 'l': '<', 'r': '>' }
  75. Expect:
  76. ap><pl><e;><:;><;b><an><an><a:><:c><ak>e
  77. da><ta><;;><ex><ch><an><ge><:;><::><fo> <rm><at
  78. Execute (Use current search pattern as delimiter if empty regular expression is given):
  79. /an
  80. %EasyAlign*//
  81. Expect:
  82. apple;:;;b an an a::cake
  83. data;;exch an ge:;::format
  84. Given javascript (json):
  85. var jdbc = {
  86. // JDBC driver for MySQL database:
  87. driver: "com.mysql.jdbc.Driver",
  88. /* JDBC URL for the connection (jdbc:mysql://HOSTNAME/DATABASE) */
  89. url: 'jdbc:mysql://localhost/test',
  90. database: "test",
  91. "user:pass":"r00t:pa55"
  92. };
  93. Execute (default syntax-aware alignment):
  94. %EasyAlign*:
  95. Expect javascript:
  96. var jdbc = {
  97. // JDBC driver for MySQL database:
  98. driver: "com.mysql.jdbc.Driver",
  99. /* JDBC URL for the connection (jdbc:mysql://HOSTNAME/DATABASE) */
  100. url: 'jdbc:mysql://localhost/test',
  101. database: "test",
  102. "user:pass": "r00t:pa55"
  103. };
  104. Execute (do not ignore unmatched):
  105. %EasyAlign*:iu0
  106. Expect javascript:
  107. var jdbc = {
  108. // JDBC driver for MySQL database:
  109. driver: "com.mysql.jdbc.Driver",
  110. /* JDBC URL for the connection (jdbc:mysql://HOSTNAME/DATABASE) */
  111. url: 'jdbc:mysql://localhost/test',
  112. database: "test",
  113. "user:pass": "r00t:pa55"
  114. };
  115. Execute (do not ignore any group):
  116. %EasyAlign*:ig[]iu0
  117. Expect javascript:
  118. var jdbc = {
  119. // JDBC driver for MySQL database:
  120. driver: "com.mysql.jdbc.Driver",
  121. /* JDBC URL for the connection (jdbc: mysql: //HOSTNAME/DATABASE) */
  122. url: 'jdbc: mysql: //localhost/test',
  123. database: "test",
  124. "user: pass": "r00t: pa55"
  125. };
  126. Execute (ignore only strings):
  127. %EasyAlign*:ig['String']
  128. Expect javascript:
  129. var jdbc = {
  130. // JDBC driver for MySQL database:
  131. driver: "com.mysql.jdbc.Driver",
  132. /* JDBC URL for the connection (jdbc: mysql: //HOSTNAME/DATABASE) */
  133. url: 'jdbc:mysql://localhost/test',
  134. database: "test",
  135. "user:pass": "r00t:pa55"
  136. };
  137. Execute (ignore only comments):
  138. %EasyAlign*:ig['Comment']
  139. Expect javascript:
  140. var jdbc = {
  141. // JDBC driver for MySQL database:
  142. driver: "com.mysql.jdbc.Driver",
  143. /* JDBC URL for the connection (jdbc:mysql://HOSTNAME/DATABASE) */
  144. url: 'jdbc: mysql: //localhost/test',
  145. database: "test",
  146. "user: pass": "r00t: pa55"
  147. };
  148. Include: include/teardown.vader