rubyjobbuilderdsl 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1258) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +8 -0
  3. data/lib/rubyjobbuilderdsl/buildstep/xvfb.rb +46 -0
  4. data/lib/rubyjobbuilderdsl/freestyle.rb +8 -0
  5. data/lib/rubyjobbuilderdsl/xml_generator.rb +14 -0
  6. data/rubyjobbuilderdsl-0.0.0.gem +0 -0
  7. data/rubyjobbuilderdsl.gemspec +2 -2
  8. data/sample/local.ini +3 -3
  9. data/test/test_xvfb.rb +35 -0
  10. data/vendor/bundle/ruby/2.1.0/bin/nokogiri +23 -0
  11. data/vendor/bundle/ruby/2.1.0/bin/nokogiri.bat +6 -0
  12. data/vendor/bundle/ruby/2.1.0/bin/rake +23 -0
  13. data/vendor/bundle/ruby/2.1.0/bin/rake.bat +6 -0
  14. data/vendor/bundle/ruby/2.1.0/bin/rubocop +23 -0
  15. data/vendor/bundle/ruby/2.1.0/bin/rubocop.bat +6 -0
  16. data/vendor/bundle/ruby/2.1.0/bin/ruby-parse +23 -0
  17. data/vendor/bundle/ruby/2.1.0/bin/ruby-parse.bat +6 -0
  18. data/vendor/bundle/ruby/2.1.0/bin/ruby-rewrite +23 -0
  19. data/vendor/bundle/ruby/2.1.0/bin/ruby-rewrite.bat +6 -0
  20. data/vendor/bundle/ruby/2.1.0/cache/ast-2.0.0.gem +0 -0
  21. data/vendor/bundle/ruby/2.1.0/cache/astrolabe-1.3.0.gem +0 -0
  22. data/vendor/bundle/ruby/2.1.0/cache/builder-3.2.2.gem +0 -0
  23. data/vendor/bundle/ruby/2.1.0/cache/mini_portile-0.6.0.gem +0 -0
  24. data/vendor/bundle/ruby/2.1.0/cache/nokogiri-1.6.3.1-x64-mingw32.gem +0 -0
  25. data/vendor/bundle/ruby/2.1.0/cache/parser-2.2.0.pre.4.gem +0 -0
  26. data/vendor/bundle/ruby/2.1.0/cache/powerpack-0.0.9.gem +0 -0
  27. data/vendor/bundle/ruby/2.1.0/cache/rainbow-2.0.0.gem +0 -0
  28. data/vendor/bundle/ruby/2.1.0/cache/rake-0.9.6.gem +0 -0
  29. data/vendor/bundle/ruby/2.1.0/cache/rubocop-0.26.0.gem +0 -0
  30. data/vendor/bundle/ruby/2.1.0/cache/ruby-progressbar-1.5.1.gem +0 -0
  31. data/vendor/bundle/ruby/2.1.0/cache/slop-3.6.0.gem +0 -0
  32. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/CHANGELOG.md +9 -0
  33. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/Gemfile +4 -0
  34. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/LICENSE.MIT +20 -0
  35. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/README.YARD.md +12 -0
  36. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/README.md +23 -0
  37. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/Rakefile +19 -0
  38. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/ast.gemspec +28 -0
  39. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/lib/ast/node.rb +232 -0
  40. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/lib/ast/processor.rb +266 -0
  41. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/lib/ast/sexp.rb +30 -0
  42. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/lib/ast.rb +17 -0
  43. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/test/helper.rb +17 -0
  44. data/vendor/bundle/ruby/2.1.0/gems/ast-2.0.0/test/test_ast.rb +243 -0
  45. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/CHANGELOG.md +23 -0
  46. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/Gemfile +9 -0
  47. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/Guardfile +17 -0
  48. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/LICENSE.txt +22 -0
  49. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/README.md +130 -0
  50. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/Rakefile +24 -0
  51. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/astrolabe.gemspec +34 -0
  52. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/benchmark/benchmark_helper.rb +122 -0
  53. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/benchmark/performance_spec.rb +346 -0
  54. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/lib/astrolabe/builder.rb +28 -0
  55. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/lib/astrolabe/node.rb +270 -0
  56. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/lib/astrolabe/sexp.rb +15 -0
  57. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/lib/astrolabe/version.rb +15 -0
  58. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/lib/astrolabe.rb +4 -0
  59. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/spec/astrolabe/node_spec.rb +479 -0
  60. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/spec/astrolabe/sexp_spec.rb +25 -0
  61. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/spec/spec_helper.rb +96 -0
  62. data/vendor/bundle/ruby/2.1.0/gems/astrolabe-1.3.0/spec/support/shared_contexts.rb +17 -0
  63. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/CHANGES +107 -0
  64. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/MIT-LICENSE +20 -0
  65. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/README.md +258 -0
  66. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/Rakefile +195 -0
  67. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/doc/jamis.rb +591 -0
  68. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/doc/releases/builder-1.2.4.rdoc +31 -0
  69. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/doc/releases/builder-2.0.0.rdoc +46 -0
  70. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/doc/releases/builder-2.1.1.rdoc +58 -0
  71. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/blankslate.rb +137 -0
  72. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/blankslate.rb +23 -0
  73. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/version.rb +8 -0
  74. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/xchar.rb +197 -0
  75. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/xmlbase.rb +199 -0
  76. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/xmlevents.rb +63 -0
  77. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder/xmlmarkup.rb +339 -0
  78. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/lib/builder.rb +13 -0
  79. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/rakelib/publish.rake +17 -0
  80. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/rakelib/tags.rake +62 -0
  81. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/performance.rb +41 -0
  82. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/preload.rb +39 -0
  83. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_blankslate.rb +217 -0
  84. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_eventbuilder.rb +150 -0
  85. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_markupbuilder.rb +611 -0
  86. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_method_caching.rb +62 -0
  87. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_namecollision.rb +39 -0
  88. data/vendor/bundle/ruby/2.1.0/gems/builder-3.2.2/test/test_xchar.rb +78 -0
  89. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/History.txt +86 -0
  90. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/LICENSE.txt +20 -0
  91. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/README.rdoc +169 -0
  92. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/Rakefile +53 -0
  93. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/examples/Rakefile +113 -0
  94. data/vendor/bundle/ruby/2.1.0/gems/mini_portile-0.6.0/lib/mini_portile.rb +437 -0
  95. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/CHANGELOG.ja.rdoc +913 -0
  96. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/CHANGELOG.rdoc +922 -0
  97. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/C_CODING_STYLE.rdoc +33 -0
  98. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/Gemfile +21 -0
  99. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/Manifest.txt +377 -0
  100. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/README.ja.rdoc +111 -0
  101. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/README.rdoc +180 -0
  102. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ROADMAP.md +89 -0
  103. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/Rakefile +356 -0
  104. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/STANDARD_RESPONSES.md +47 -0
  105. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/Y_U_NO_GEMSPEC.md +155 -0
  106. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/bin/nokogiri +78 -0
  107. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/build_all +129 -0
  108. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/dependencies.yml +4 -0
  109. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/depend +358 -0
  110. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/extconf.rb +548 -0
  111. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_document.c +170 -0
  112. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_document.h +10 -0
  113. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_element_description.c +279 -0
  114. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_element_description.h +10 -0
  115. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_entity_lookup.c +32 -0
  116. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_entity_lookup.h +8 -0
  117. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_sax_parser_context.c +116 -0
  118. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_sax_parser_context.h +11 -0
  119. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_sax_push_parser.c +87 -0
  120. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/html_sax_push_parser.h +9 -0
  121. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/nokogiri.c +148 -0
  122. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/nokogiri.h +164 -0
  123. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_attr.c +94 -0
  124. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_attr.h +9 -0
  125. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_attribute_decl.c +70 -0
  126. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_attribute_decl.h +9 -0
  127. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_cdata.c +56 -0
  128. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_cdata.h +9 -0
  129. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_comment.c +54 -0
  130. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_comment.h +9 -0
  131. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_document.c +600 -0
  132. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_document.h +23 -0
  133. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_document_fragment.c +48 -0
  134. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_document_fragment.h +10 -0
  135. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_dtd.c +202 -0
  136. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_dtd.h +10 -0
  137. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_element_content.c +123 -0
  138. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_element_content.h +10 -0
  139. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_element_decl.c +69 -0
  140. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_element_decl.h +9 -0
  141. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_encoding_handler.c +79 -0
  142. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_encoding_handler.h +8 -0
  143. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_entity_decl.c +110 -0
  144. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_entity_decl.h +10 -0
  145. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_entity_reference.c +52 -0
  146. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_entity_reference.h +9 -0
  147. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_io.c +56 -0
  148. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_io.h +11 -0
  149. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_libxml2_hacks.c +112 -0
  150. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_libxml2_hacks.h +12 -0
  151. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_namespace.c +78 -0
  152. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_namespace.h +13 -0
  153. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_node.c +1603 -0
  154. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_node.h +13 -0
  155. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_node_set.c +467 -0
  156. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_node_set.h +14 -0
  157. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_processing_instruction.c +56 -0
  158. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_processing_instruction.h +9 -0
  159. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_reader.c +681 -0
  160. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_reader.h +10 -0
  161. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_relax_ng.c +161 -0
  162. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_relax_ng.h +9 -0
  163. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_parser.c +312 -0
  164. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_parser.h +39 -0
  165. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_parser_context.c +262 -0
  166. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_parser_context.h +10 -0
  167. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_push_parser.c +115 -0
  168. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_sax_push_parser.h +9 -0
  169. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_schema.c +205 -0
  170. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_schema.h +9 -0
  171. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_syntax_error.c +63 -0
  172. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_syntax_error.h +13 -0
  173. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_text.c +52 -0
  174. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_text.h +9 -0
  175. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_xpath_context.c +307 -0
  176. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xml_xpath_context.h +10 -0
  177. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xslt_stylesheet.c +270 -0
  178. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/ext/nokogiri/xslt_stylesheet.h +14 -0
  179. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/2.0/nokogiri.so +0 -0
  180. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/2.1/nokogiri.so +0 -0
  181. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/node.rb +52 -0
  182. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/parser.rb +715 -0
  183. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/parser.y +249 -0
  184. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/parser_extras.rb +91 -0
  185. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/syntax_error.rb +7 -0
  186. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/tokenizer.rb +152 -0
  187. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/tokenizer.rex +55 -0
  188. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css/xpath_visitor.rb +219 -0
  189. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/css.rb +27 -0
  190. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/decorators/slop.rb +35 -0
  191. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/builder.rb +35 -0
  192. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/document.rb +333 -0
  193. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/document_fragment.rb +41 -0
  194. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/element_description.rb +23 -0
  195. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/element_description_defaults.rb +671 -0
  196. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/entity_lookup.rb +13 -0
  197. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/sax/parser.rb +52 -0
  198. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/sax/parser_context.rb +16 -0
  199. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html/sax/push_parser.rb +16 -0
  200. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/html.rb +37 -0
  201. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/syntax_error.rb +4 -0
  202. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/version.rb +106 -0
  203. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/attr.rb +14 -0
  204. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/attribute_decl.rb +18 -0
  205. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/builder.rb +443 -0
  206. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/cdata.rb +11 -0
  207. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/character_data.rb +7 -0
  208. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/document.rb +279 -0
  209. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/document_fragment.rb +112 -0
  210. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/dtd.rb +32 -0
  211. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/element_content.rb +36 -0
  212. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/element_decl.rb +13 -0
  213. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/entity_decl.rb +19 -0
  214. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/namespace.rb +13 -0
  215. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/node/save_options.rb +61 -0
  216. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/node.rb +992 -0
  217. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/node_set.rb +355 -0
  218. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/notation.rb +6 -0
  219. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/parse_options.rb +98 -0
  220. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/pp/character_data.rb +18 -0
  221. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/pp/node.rb +56 -0
  222. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/pp.rb +2 -0
  223. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/processing_instruction.rb +8 -0
  224. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/reader.rb +112 -0
  225. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/relax_ng.rb +32 -0
  226. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/sax/document.rb +171 -0
  227. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/sax/parser.rb +123 -0
  228. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/sax/parser_context.rb +16 -0
  229. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/sax/push_parser.rb +60 -0
  230. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/sax.rb +4 -0
  231. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/schema.rb +63 -0
  232. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/syntax_error.rb +47 -0
  233. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/text.rb +9 -0
  234. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/xpath/syntax_error.rb +11 -0
  235. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/xpath.rb +10 -0
  236. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml/xpath_context.rb +16 -0
  237. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xml.rb +73 -0
  238. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xslt/stylesheet.rb +25 -0
  239. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri/xslt.rb +56 -0
  240. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/nokogiri.rb +137 -0
  241. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/lib/xsd/xmlparser/nokogiri.rb +102 -0
  242. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/suppressions/README.txt +1 -0
  243. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/suppressions/nokogiri_ree-1.8.7.358.supp +61 -0
  244. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/suppressions/nokogiri_ruby-1.8.7.370.supp +0 -0
  245. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/suppressions/nokogiri_ruby-1.9.2.320.supp +28 -0
  246. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/suppressions/nokogiri_ruby-1.9.3.327.supp +28 -0
  247. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/tasks/nokogiri.org.rb +24 -0
  248. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/tasks/test.rb +95 -0
  249. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/css/test_nthiness.rb +222 -0
  250. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/css/test_parser.rb +358 -0
  251. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/css/test_tokenizer.rb +198 -0
  252. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/css/test_xpath_visitor.rb +96 -0
  253. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/decorators/test_slop.rb +16 -0
  254. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/2ch.html +108 -0
  255. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/address_book.rlx +12 -0
  256. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/address_book.xml +10 -0
  257. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/atom.xml +344 -0
  258. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/bar/bar.xsd +4 -0
  259. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/bogus.xml +0 -0
  260. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/dont_hurt_em_why.xml +422 -0
  261. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/encoding.html +82 -0
  262. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/encoding.xhtml +84 -0
  263. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/exslt.xml +8 -0
  264. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/exslt.xslt +35 -0
  265. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/foo/foo.xsd +4 -0
  266. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/metacharset.html +10 -0
  267. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/noencoding.html +47 -0
  268. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/po.xml +32 -0
  269. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/po.xsd +66 -0
  270. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/saml/saml20assertion_schema.xsd +283 -0
  271. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/saml/saml20protocol_schema.xsd +302 -0
  272. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/saml/xenc_schema.xsd +146 -0
  273. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/saml/xmldsig_schema.xsd +318 -0
  274. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/shift_jis.html +10 -0
  275. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/shift_jis.xml +5 -0
  276. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/shift_jis_no_charset.html +9 -0
  277. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/slow-xpath.xml +25509 -0
  278. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/snuggles.xml +3 -0
  279. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/staff.dtd +10 -0
  280. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/staff.xml +59 -0
  281. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/staff.xslt +32 -0
  282. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/test_document_url/bar.xml +2 -0
  283. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/test_document_url/document.dtd +4 -0
  284. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/test_document_url/document.xml +6 -0
  285. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/tlm.html +850 -0
  286. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/to_be_xincluded.xml +2 -0
  287. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/valid_bar.xml +2 -0
  288. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/files/xinclude.xml +4 -0
  289. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/helper.rb +164 -0
  290. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/sax/test_parser.rb +141 -0
  291. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/sax/test_parser_context.rb +46 -0
  292. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_builder.rb +164 -0
  293. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_document.rb +619 -0
  294. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_document_encoding.rb +148 -0
  295. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_document_fragment.rb +267 -0
  296. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_element_description.rb +105 -0
  297. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_named_characters.rb +14 -0
  298. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_node.rb +196 -0
  299. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/html/test_node_encoding.rb +27 -0
  300. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_additional_namespaces_in_builder_doc.rb +14 -0
  301. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_aliased_default.rb +24 -0
  302. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_in_builder_doc.rb +75 -0
  303. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_in_cloned_doc.rb +31 -0
  304. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_in_created_doc.rb +75 -0
  305. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_in_parsed_doc.rb +66 -0
  306. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/namespaces/test_namespaces_preservation.rb +31 -0
  307. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_convert_xpath.rb +135 -0
  308. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_css_cache.rb +45 -0
  309. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_encoding_handler.rb +46 -0
  310. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_memory_leak.rb +156 -0
  311. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_nokogiri.rb +138 -0
  312. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_reader.rb +558 -0
  313. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_soap4r_sax.rb +52 -0
  314. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/test_xslt_transforms.rb +279 -0
  315. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/node/test_save_options.rb +28 -0
  316. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/node/test_subclass.rb +44 -0
  317. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/sax/test_parser.rb +382 -0
  318. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/sax/test_parser_context.rb +115 -0
  319. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/sax/test_push_parser.rb +157 -0
  320. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_attr.rb +64 -0
  321. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_attribute_decl.rb +86 -0
  322. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_builder.rb +315 -0
  323. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_c14n.rb +161 -0
  324. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_cdata.rb +48 -0
  325. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_comment.rb +29 -0
  326. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_document.rb +940 -0
  327. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_document_encoding.rb +28 -0
  328. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_document_fragment.rb +228 -0
  329. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_dtd.rb +187 -0
  330. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_dtd_encoding.rb +33 -0
  331. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_element_content.rb +56 -0
  332. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_element_decl.rb +73 -0
  333. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_entity_decl.rb +122 -0
  334. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_entity_reference.rb +245 -0
  335. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_namespace.rb +95 -0
  336. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node.rb +1197 -0
  337. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node_attributes.rb +113 -0
  338. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node_encoding.rb +107 -0
  339. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node_inheritance.rb +32 -0
  340. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node_reparenting.rb +374 -0
  341. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_node_set.rb +755 -0
  342. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_parse_options.rb +64 -0
  343. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_processing_instruction.rb +30 -0
  344. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_reader_encoding.rb +142 -0
  345. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_relax_ng.rb +60 -0
  346. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_schema.rb +129 -0
  347. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_syntax_error.rb +12 -0
  348. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_text.rb +60 -0
  349. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_unparented_node.rb +427 -0
  350. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_xinclude.rb +83 -0
  351. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xml/test_xpath.rb +382 -0
  352. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xslt/test_custom_functions.rb +133 -0
  353. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test/xslt/test_exception_handling.rb +37 -0
  354. data/vendor/bundle/ruby/2.1.0/gems/nokogiri-1.6.3.1-x64-mingw32/test_all +81 -0
  355. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/CHANGELOG.md +496 -0
  356. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/CONTRIBUTING.md +10 -0
  357. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/Gemfile +4 -0
  358. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/LICENSE.txt +25 -0
  359. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/README.md +272 -0
  360. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/Rakefile +146 -0
  361. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/bin/ruby-parse +6 -0
  362. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/bin/ruby-rewrite +6 -0
  363. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/doc/AST_FORMAT.md +1546 -0
  364. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/doc/CUSTOMIZATION.md +37 -0
  365. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/doc/INTERNALS.md +21 -0
  366. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/doc/css/common.css +68 -0
  367. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/gauntlet_parser.rb +121 -0
  368. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/all.rb +4 -0
  369. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ast/node.rb +36 -0
  370. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ast/processor.rb +190 -0
  371. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/base.rb +269 -0
  372. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/builders/default.rb +1383 -0
  373. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/clobbering_error.rb +11 -0
  374. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/compatibility/ruby1_8.rb +20 -0
  375. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/compatibility/ruby1_9.rb +32 -0
  376. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/current.rb +45 -0
  377. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/diagnostic/engine.rb +103 -0
  378. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/diagnostic.rb +104 -0
  379. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/lexer/explanation.rb +51 -0
  380. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/lexer/literal.rb +235 -0
  381. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/lexer/stack_state.rb +42 -0
  382. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/lexer.rb +20895 -0
  383. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/lexer.rl +2163 -0
  384. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/messages.rb +65 -0
  385. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/meta.rb +26 -0
  386. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/rewriter.rb +119 -0
  387. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby18.rb +6344 -0
  388. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby18.y +1917 -0
  389. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby19.rb +6827 -0
  390. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby19.y +2148 -0
  391. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby20.rb +7332 -0
  392. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby20.y +2324 -0
  393. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby21.rb +7385 -0
  394. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby21.y +2319 -0
  395. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby22.rb +7393 -0
  396. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/ruby22.y +2327 -0
  397. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/runner/ruby_parse.rb +129 -0
  398. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/runner/ruby_rewrite.rb +98 -0
  399. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/runner.rb +215 -0
  400. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/buffer.rb +245 -0
  401. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/comment/associator.rb +157 -0
  402. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/comment.rb +106 -0
  403. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/collection.rb +16 -0
  404. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/condition.rb +19 -0
  405. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/constant.rb +30 -0
  406. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/definition.rb +21 -0
  407. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/for.rb +17 -0
  408. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/heredoc.rb +17 -0
  409. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/keyword.rb +18 -0
  410. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/operator.rb +15 -0
  411. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/rescue_body.rb +19 -0
  412. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/send.rb +34 -0
  413. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/ternary.rb +16 -0
  414. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map/variable.rb +29 -0
  415. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/map.rb +146 -0
  416. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/range.rb +187 -0
  417. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/rewriter/action.rb +30 -0
  418. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/source/rewriter.rb +221 -0
  419. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/static_environment.rb +44 -0
  420. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/syntax_error.rb +19 -0
  421. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser/version.rb +3 -0
  422. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/lib/parser.rb +79 -0
  423. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/parser.gemspec +49 -0
  424. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/helper.rb +45 -0
  425. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/parse_helper.rb +241 -0
  426. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/racc_coverage_helper.rb +130 -0
  427. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_base.rb +18 -0
  428. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_current.rb +21 -0
  429. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_diagnostic.rb +49 -0
  430. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_diagnostic_engine.rb +60 -0
  431. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_encoding.rb +78 -0
  432. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_lexer.rb +3064 -0
  433. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_lexer_stack_state.rb +76 -0
  434. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_parse_helper.rb +80 -0
  435. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_parser.rb +4872 -0
  436. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_buffer.rb +103 -0
  437. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_comment.rb +34 -0
  438. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_comment_associator.rb +107 -0
  439. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_range.rb +77 -0
  440. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_rewriter.rb +183 -0
  441. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_source_rewriter_action.rb +44 -0
  442. data/vendor/bundle/ruby/2.1.0/gems/parser-2.2.0.pre.4/test/test_static_environment.rb +43 -0
  443. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/CHANGELOG.md +28 -0
  444. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/Gemfile +4 -0
  445. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/LICENSE.txt +22 -0
  446. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/README.md +95 -0
  447. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/Rakefile +12 -0
  448. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/array/butfirst.rb +15 -0
  449. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/array/butlast.rb +15 -0
  450. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/array.rb +2 -0
  451. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/average.rb +20 -0
  452. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/drop_last.rb +20 -0
  453. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/drop_last_while.rb +21 -0
  454. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/exactly.rb +43 -0
  455. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/frequencies.rb +17 -0
  456. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/several.rb +37 -0
  457. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/sum.rb +21 -0
  458. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/take_last.rb +20 -0
  459. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable/take_last_while.rb +17 -0
  460. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/enumerable.rb +9 -0
  461. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/hash/symbolize_keys.rb +14 -0
  462. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/hash.rb +1 -0
  463. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/numeric/neg.rb +19 -0
  464. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/numeric/pos.rb +19 -0
  465. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/numeric/scale.rb +44 -0
  466. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/numeric.rb +3 -0
  467. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/ascii_only.rb +42 -0
  468. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/blank.rb +20 -0
  469. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/format.rb +20 -0
  470. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/remove.rb +17 -0
  471. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/squish.rb +27 -0
  472. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/strip_indent.rb +22 -0
  473. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string/strip_margin.rb +21 -0
  474. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/string.rb +7 -0
  475. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack/version.rb +3 -0
  476. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/lib/powerpack.rb +11 -0
  477. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/powerpack.gemspec +24 -0
  478. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/array/butfirst_spec.rb +11 -0
  479. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/array/butlast_spec.rb +11 -0
  480. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/average_spec.rb +19 -0
  481. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/drop_last_spec.rb +15 -0
  482. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/drop_last_while_spec.rb +7 -0
  483. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/exactly_spec.rb +39 -0
  484. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/frequencies_spec.rb +20 -0
  485. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/several_spec.rb +27 -0
  486. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/sum_spec.rb +15 -0
  487. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/take_last_spec.rb +15 -0
  488. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/enumerable/take_last_while_spec.rb +7 -0
  489. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/hash/symbolize_keys_spec.rb +15 -0
  490. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/numeric/neg_spec.rb +24 -0
  491. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/numeric/pos_spec.rb +24 -0
  492. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/numeric/scale_spec.rb +139 -0
  493. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/ascii_only_spec.rb +45 -0
  494. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/blank_spec.rb +15 -0
  495. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/format_spec.rb +12 -0
  496. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/remove_spec.rb +13 -0
  497. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/squish_spec.rb +21 -0
  498. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/strip_indent_spec.rb +13 -0
  499. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/powerpack/string/strip_margin_spec.rb +26 -0
  500. data/vendor/bundle/ruby/2.1.0/gems/powerpack-0.0.9/spec/spec_helper.rb +17 -0
  501. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/Changelog.md +67 -0
  502. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/Gemfile +17 -0
  503. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/Guardfile +9 -0
  504. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/LICENSE +20 -0
  505. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/README.markdown +175 -0
  506. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/Rakefile +6 -0
  507. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/color.rb +115 -0
  508. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/ext/string.rb +52 -0
  509. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/global.rb +21 -0
  510. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/legacy.rb +15 -0
  511. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/null_presenter.rb +30 -0
  512. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/presenter.rb +113 -0
  513. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/string_utils.rb +23 -0
  514. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/version.rb +3 -0
  515. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow/wrapper.rb +22 -0
  516. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/lib/rainbow.rb +24 -0
  517. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/rainbow.gemspec +25 -0
  518. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/integration/instance_spec.rb +35 -0
  519. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/integration/rainbow_spec.rb +139 -0
  520. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/integration/string_spec.rb +76 -0
  521. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/spec_helper.rb +6 -0
  522. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/support/presenter_shared_examples.rb +9 -0
  523. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/color_spec.rb +244 -0
  524. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/namespace_spec.rb +31 -0
  525. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/null_presenter_spec.rb +93 -0
  526. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/presenter_spec.rb +168 -0
  527. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/string_utils_spec.rb +62 -0
  528. data/vendor/bundle/ruby/2.1.0/gems/rainbow-2.0.0/spec/unit/wrapper_spec.rb +28 -0
  529. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/CHANGES +526 -0
  530. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/MIT-LICENSE +21 -0
  531. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/README.rdoc +187 -0
  532. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/Rakefile +374 -0
  533. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/TODO +21 -0
  534. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/bin/rake +37 -0
  535. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/command_line_usage.rdoc +169 -0
  536. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/example/Rakefile1 +38 -0
  537. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/example/Rakefile2 +35 -0
  538. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/example/a.c +6 -0
  539. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/example/b.c +6 -0
  540. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/example/main.c +11 -0
  541. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/glossary.rdoc +51 -0
  542. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/jamis.rb +591 -0
  543. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/proto_rake.rdoc +127 -0
  544. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/rake.1.gz +0 -0
  545. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/rakefile.rdoc +557 -0
  546. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/rational.rdoc +151 -0
  547. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.4.14.rdoc +23 -0
  548. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.4.15.rdoc +35 -0
  549. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.5.0.rdoc +53 -0
  550. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.5.3.rdoc +78 -0
  551. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.5.4.rdoc +46 -0
  552. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.6.0.rdoc +141 -0
  553. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.7.0.rdoc +119 -0
  554. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.7.1.rdoc +59 -0
  555. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.7.2.rdoc +121 -0
  556. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.7.3.rdoc +47 -0
  557. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.0.rdoc +114 -0
  558. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.2.rdoc +165 -0
  559. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.3.rdoc +112 -0
  560. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.4.rdoc +147 -0
  561. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.5.rdoc +53 -0
  562. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.6.rdoc +55 -0
  563. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.8.7.rdoc +55 -0
  564. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.0.rdoc +112 -0
  565. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.1.rdoc +52 -0
  566. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
  567. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.2.rdoc +49 -0
  568. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.3.rdoc +102 -0
  569. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.4.rdoc +110 -0
  570. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.5.rdoc +114 -0
  571. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/doc/release_notes/rake-0.9.6.rdoc +127 -0
  572. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/install.rb +90 -0
  573. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/alt_system.rb +109 -0
  574. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/application.rb +702 -0
  575. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/backtrace.rb +18 -0
  576. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/classic_namespace.rb +11 -0
  577. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/clean.rb +32 -0
  578. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/cloneable.rb +16 -0
  579. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/compositepublisher.rb +21 -0
  580. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/ftptools.rb +151 -0
  581. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/publisher.rb +73 -0
  582. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/rubyforgepublisher.rb +16 -0
  583. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/sshpublisher.rb +50 -0
  584. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/contrib/sys.rb +192 -0
  585. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/default_loader.rb +10 -0
  586. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/dsl_definition.rb +182 -0
  587. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/early_time.rb +18 -0
  588. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/ext/core.rb +27 -0
  589. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/ext/module.rb +39 -0
  590. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/ext/string.rb +168 -0
  591. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/ext/time.rb +15 -0
  592. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/file_creation_task.rb +24 -0
  593. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/file_list.rb +410 -0
  594. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/file_task.rb +47 -0
  595. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/file_utils.rb +114 -0
  596. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/file_utils_ext.rb +146 -0
  597. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/gempackagetask.rb +15 -0
  598. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/invocation_chain.rb +51 -0
  599. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/invocation_exception_mixin.rb +16 -0
  600. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/loaders/makefile.rb +40 -0
  601. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/multi_task.rb +13 -0
  602. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/name_space.rb +25 -0
  603. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/packagetask.rb +185 -0
  604. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/pathmap.rb +1 -0
  605. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/phony.rb +15 -0
  606. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/private_reader.rb +20 -0
  607. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/promise.rb +99 -0
  608. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/pseudo_status.rb +24 -0
  609. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/rake_module.rb +37 -0
  610. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/rake_test_loader.rb +22 -0
  611. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/rdoctask.rb +234 -0
  612. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/ruby182_test_unit_fix.rb +25 -0
  613. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/rule_recursion_overflow_error.rb +20 -0
  614. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/runtest.rb +22 -0
  615. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/task.rb +350 -0
  616. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/task_argument_error.rb +7 -0
  617. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/task_arguments.rb +78 -0
  618. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/task_manager.rb +307 -0
  619. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/tasklib.rb +22 -0
  620. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/testtask.rb +198 -0
  621. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/thread_history_display.rb +48 -0
  622. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/thread_pool.rb +155 -0
  623. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/trace_output.rb +19 -0
  624. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/version.rb +13 -0
  625. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake/win32.rb +55 -0
  626. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/lib/rake.rb +71 -0
  627. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/file_creation.rb +34 -0
  628. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/helper.rb +562 -0
  629. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_private_reader.rb +42 -0
  630. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake.rb +40 -0
  631. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_application.rb +531 -0
  632. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_application_options.rb +460 -0
  633. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_backtrace.rb +89 -0
  634. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_clean.rb +14 -0
  635. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_definitions.rb +80 -0
  636. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_directory_task.rb +57 -0
  637. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_dsl.rb +77 -0
  638. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_early_time.rb +31 -0
  639. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_extension.rb +59 -0
  640. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_file_creation_task.rb +56 -0
  641. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_file_list.rb +628 -0
  642. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_file_list_path_map.rb +8 -0
  643. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_file_task.rb +122 -0
  644. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_file_utils.rb +305 -0
  645. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_ftp_file.rb +59 -0
  646. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_functional.rb +496 -0
  647. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_invocation_chain.rb +52 -0
  648. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_makefile_loader.rb +44 -0
  649. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_multi_task.rb +59 -0
  650. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_name_space.rb +43 -0
  651. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_package_task.rb +79 -0
  652. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_path_map.rb +157 -0
  653. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_path_map_explode.rb +34 -0
  654. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_path_map_partial.rb +18 -0
  655. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_pseudo_status.rb +21 -0
  656. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_rake_test_loader.rb +21 -0
  657. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_rdoc_task.rb +83 -0
  658. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_reduce_compat.rb +65 -0
  659. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_require.rb +40 -0
  660. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_rules.rb +327 -0
  661. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task.rb +316 -0
  662. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_argument_parsing.rb +103 -0
  663. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_arguments.rb +88 -0
  664. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_lib.rb +9 -0
  665. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_manager.rb +157 -0
  666. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_manager_argument_resolution.rb +36 -0
  667. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_task_with_arguments.rb +181 -0
  668. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_test_task.rb +120 -0
  669. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_thread_pool.rb +123 -0
  670. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_top_level_functions.rb +111 -0
  671. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_rake_win32.rb +72 -0
  672. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_sys.rb +20 -0
  673. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_thread_history_display.rb +91 -0
  674. data/vendor/bundle/ruby/2.1.0/gems/rake-0.9.6/test/test_trace_output.rb +43 -0
  675. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/CHANGELOG.md +1095 -0
  676. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/CONTRIBUTING.md +68 -0
  677. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/Gemfile +15 -0
  678. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/LICENSE.txt +20 -0
  679. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/README.md +807 -0
  680. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/Rakefile +43 -0
  681. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/assets/output.html.erb +190 -0
  682. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/bin/rubocop +17 -0
  683. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/config/default.yml +581 -0
  684. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/config/disabled.yml +20 -0
  685. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/config/enabled.yml +952 -0
  686. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cli.rb +116 -0
  687. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/comment_config.rb +101 -0
  688. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/config.rb +160 -0
  689. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/config_loader.rb +152 -0
  690. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/config_store.rb +44 -0
  691. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/commissioner.rb +102 -0
  692. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/cop.rb +218 -0
  693. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/corrector.rb +84 -0
  694. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/force.rb +41 -0
  695. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/ignored_node.rb +38 -0
  696. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/ambiguous_operator.rb +50 -0
  697. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +36 -0
  698. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/assignment_in_condition.rb +46 -0
  699. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/block_alignment.rb +176 -0
  700. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/condition_position.rb +52 -0
  701. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/debugger.rb +55 -0
  702. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/def_end_alignment.rb +51 -0
  703. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/deprecated_class_methods.rb +62 -0
  704. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/else_layout.rb +57 -0
  705. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/empty_ensure.rb +18 -0
  706. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/empty_interpolation.rb +22 -0
  707. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/end_alignment.rb +75 -0
  708. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/end_in_method.rb +17 -0
  709. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/ensure_return.rb +22 -0
  710. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/eval.rb +18 -0
  711. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/handle_exceptions.rb +18 -0
  712. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/invalid_character_literal.rb +37 -0
  713. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/literal_in_condition.rb +138 -0
  714. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/literal_in_interpolation.rb +37 -0
  715. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/loop.rb +27 -0
  716. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +51 -0
  717. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/require_parentheses.rb +68 -0
  718. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/rescue_exception.rb +35 -0
  719. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +29 -0
  720. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/space_before_first_arg.rb +44 -0
  721. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +50 -0
  722. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/syntax.rb +52 -0
  723. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/underscore_prefixed_variable_name.rb +39 -0
  724. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/unreachable_code.rb +32 -0
  725. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/unused_block_argument.rb +80 -0
  726. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/unused_method_argument.rb +43 -0
  727. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/useless_access_modifier.rb +59 -0
  728. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/useless_assignment.rb +113 -0
  729. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/useless_comparison.rb +29 -0
  730. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/useless_else_without_rescue.rb +31 -0
  731. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/useless_setter_call.rb +157 -0
  732. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/lint/void.rb +52 -0
  733. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/block_nesting.rb +54 -0
  734. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/class_length.rb +48 -0
  735. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +30 -0
  736. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/line_length.rb +88 -0
  737. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/method_length.rb +33 -0
  738. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/parameter_lists.rb +44 -0
  739. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/metrics/perceived_complexity.rb +61 -0
  740. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/access_modifier_node.rb +22 -0
  741. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/annotation_comment.rb +37 -0
  742. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/array_syntax.rb +24 -0
  743. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/autocorrect_alignment.rb +112 -0
  744. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/autocorrect_unless_changing_ast.rb +36 -0
  745. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/check_assignment.rb +37 -0
  746. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/code_length.rb +32 -0
  747. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/configurable_enforced_style.rb +53 -0
  748. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/configurable_max.rb +19 -0
  749. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/configurable_naming.rb +31 -0
  750. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/end_keyword_alignment.rb +42 -0
  751. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/if_node.rb +25 -0
  752. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/method_complexity.rb +30 -0
  753. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/negative_conditional.rb +24 -0
  754. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/on_method.rb +30 -0
  755. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/on_normal_if_unless.rb +24 -0
  756. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/parser_diagnostic.rb +34 -0
  757. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/percent_literal.rb +26 -0
  758. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/safe_assignment.rb +30 -0
  759. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/space_after_punctuation.rb +33 -0
  760. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/space_before_punctuation.rb +32 -0
  761. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/space_inside.rb +63 -0
  762. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/statement_modifier.rb +58 -0
  763. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/string_help.rb +32 -0
  764. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/surrounding_space.rb +42 -0
  765. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/mixin/unused_argument.rb +36 -0
  766. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/offense.rb +132 -0
  767. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/action_filter.rb +71 -0
  768. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/default_scope.rb +33 -0
  769. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/delegate.rb +111 -0
  770. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +17 -0
  771. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/output.rb +27 -0
  772. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/read_write_attribute.rb +42 -0
  773. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/scope_args.rb +33 -0
  774. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/rails/validation.rb +53 -0
  775. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/severity.rb +76 -0
  776. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/access_modifier_indentation.rb +87 -0
  777. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/accessor_method_name.rb +45 -0
  778. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/alias.rb +48 -0
  779. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/align_array.rb +20 -0
  780. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/align_hash.rb +265 -0
  781. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/align_parameters.rb +51 -0
  782. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/and_or.rb +85 -0
  783. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/array_join.rb +24 -0
  784. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/ascii_comments.rb +19 -0
  785. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/ascii_identifiers.rb +19 -0
  786. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/attr.rb +24 -0
  787. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/bare_percent_literals.rb +46 -0
  788. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/begin_block.rb +16 -0
  789. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/block_comments.rb +40 -0
  790. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/block_end_newline.rb +56 -0
  791. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/blocks.rb +80 -0
  792. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/braces_around_hash_parameters.rb +94 -0
  793. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/case_equality.rb +18 -0
  794. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/case_indentation.rb +62 -0
  795. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/character_literal.rb +42 -0
  796. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/class_and_module_camel_case.rb +29 -0
  797. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/class_and_module_children.rb +69 -0
  798. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/class_check.rb +42 -0
  799. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/class_methods.rb +54 -0
  800. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/class_vars.rb +23 -0
  801. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/collection_methods.rb +70 -0
  802. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/colon_method_call.rb +33 -0
  803. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/comment_annotation.rb +37 -0
  804. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/comment_indentation.rb +66 -0
  805. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/constant_name.rb +29 -0
  806. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/def_with_parentheses.rb +33 -0
  807. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/deprecated_hash_methods.rb +39 -0
  808. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/documentation.rb +76 -0
  809. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/dot_position.rb +77 -0
  810. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/double_negation.rb +40 -0
  811. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/each_with_object.rb +58 -0
  812. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/empty_line_between_defs.rb +46 -0
  813. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/empty_lines.rb +44 -0
  814. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/empty_lines_around_access_modifier.rb +74 -0
  815. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/empty_lines_around_body.rb +75 -0
  816. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/empty_literal.rb +60 -0
  817. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/encoding.rb +55 -0
  818. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/end_block.rb +16 -0
  819. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/end_of_line.rb +25 -0
  820. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/even_odd.rb +60 -0
  821. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/file_name.rb +31 -0
  822. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/flip_flop.rb +20 -0
  823. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/for.rb +47 -0
  824. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/format_string.rb +76 -0
  825. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/global_vars.rb +74 -0
  826. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/guard_clause.rb +79 -0
  827. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/hash_syntax.rb +89 -0
  828. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/if_unless_modifier.rb +29 -0
  829. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/if_with_semicolon.rb +20 -0
  830. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/indent_array.rb +64 -0
  831. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/indent_hash.rb +160 -0
  832. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/indentation_consistency.rb +44 -0
  833. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/indentation_width.rb +217 -0
  834. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/infinite_loop.rb +57 -0
  835. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/inline_comment.rb +19 -0
  836. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/lambda.rb +44 -0
  837. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/lambda_call.rb +63 -0
  838. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/leading_comment_space.rb +33 -0
  839. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/line_end_concatenation.rb +89 -0
  840. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/method_call_parentheses.rb +35 -0
  841. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/method_called_on_do_end_block.rb +42 -0
  842. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/method_def_parentheses.rb +72 -0
  843. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/method_name.rb +28 -0
  844. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/module_function.rb +31 -0
  845. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/multiline_block_chain.rb +43 -0
  846. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/multiline_block_layout.rb +73 -0
  847. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/multiline_if_then.rb +60 -0
  848. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/multiline_ternary_operator.rb +22 -0
  849. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/negated_if.rb +48 -0
  850. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/negated_while.rb +45 -0
  851. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/nested_ternary_operator.rb +26 -0
  852. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/next.rb +97 -0
  853. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/nil_comparison.rb +41 -0
  854. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/non_nil_check.rb +116 -0
  855. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/not.rb +34 -0
  856. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/numeric_literals.rb +85 -0
  857. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/one_line_conditional.rb +21 -0
  858. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/op_method.rb +25 -0
  859. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/parentheses_around_condition.rb +72 -0
  860. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/percent_literal_delimiters.rb +151 -0
  861. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/percent_q_literals.rb +53 -0
  862. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/perl_backrefs.rb +26 -0
  863. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/predicate_name.rb +62 -0
  864. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/proc.rb +32 -0
  865. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/raise_args.rb +68 -0
  866. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/redundant_begin.rb +51 -0
  867. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/redundant_exception.rb +32 -0
  868. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/redundant_return.rb +66 -0
  869. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/redundant_self.rb +144 -0
  870. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/regexp_literal.rb +81 -0
  871. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/rescue_modifier.rb +43 -0
  872. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/self_assignment.rb +68 -0
  873. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/semicolon.rb +63 -0
  874. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/signal_exception.rb +95 -0
  875. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/single_line_block_params.rb +61 -0
  876. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/single_line_methods.rb +69 -0
  877. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/single_space_before_first_arg.rb +41 -0
  878. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_colon.rb +40 -0
  879. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_comma.rb +16 -0
  880. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_control_keyword.rb +37 -0
  881. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_method_name.rb +40 -0
  882. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_not.rb +40 -0
  883. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_after_semicolon.rb +16 -0
  884. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_around_equals_in_parameter_default.rb +66 -0
  885. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_around_operators.rb +83 -0
  886. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_before_block_braces.rb +64 -0
  887. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_before_comma.rb +16 -0
  888. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_before_comment.rb +29 -0
  889. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_before_modifier_keyword.rb +39 -0
  890. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_before_semicolon.rb +16 -0
  891. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_inside_block_braces.rb +156 -0
  892. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_inside_brackets.rb +20 -0
  893. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_inside_hash_literal_braces.rb +109 -0
  894. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_inside_parens.rb +16 -0
  895. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/space_inside_range_literal.rb +58 -0
  896. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/special_global_vars.rb +84 -0
  897. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/string_literals.rb +43 -0
  898. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/symbol_array.rb +23 -0
  899. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/symbol_proc.rb +71 -0
  900. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/tab.rb +35 -0
  901. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/trailing_blank_lines.rb +58 -0
  902. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/trailing_comma.rb +153 -0
  903. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/trailing_whitespace.rb +28 -0
  904. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/trivial_accessors.rb +144 -0
  905. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/unless_else.rb +23 -0
  906. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/unneeded_capital_w.rb +37 -0
  907. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/unneeded_percent_q.rb +58 -0
  908. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/unneeded_percent_x.rb +25 -0
  909. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/variable_interpolation.rb +45 -0
  910. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/variable_name.rb +34 -0
  911. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/when_then.rb +24 -0
  912. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/while_until_do.rb +42 -0
  913. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/while_until_modifier.rb +34 -0
  914. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/word_array.rb +87 -0
  915. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/team.rb +123 -0
  916. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/util.rb +188 -0
  917. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/assignment.rb +95 -0
  918. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/locatable.rb +183 -0
  919. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/reference.rb +43 -0
  920. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/scope.rb +90 -0
  921. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/variable.rb +102 -0
  922. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force/variable_table.rb +128 -0
  923. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/variable_force.rb +419 -0
  924. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/base_formatter.rb +119 -0
  925. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/clang_style_formatter.rb +34 -0
  926. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/colorizable.rb +37 -0
  927. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/disabled_config_formatter.rb +66 -0
  928. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/disabled_lines_formatter.rb +56 -0
  929. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/emacs_style_formatter.rb +21 -0
  930. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/file_list_formatter.rb +19 -0
  931. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/formatter_set.rb +76 -0
  932. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/fuubar_style_formatter.rb +74 -0
  933. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/html_formatter.rb +90 -0
  934. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/json_formatter.rb +74 -0
  935. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/offense_count_formatter.rb +55 -0
  936. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/progress_formatter.rb +55 -0
  937. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/formatter/simple_text_formatter.rb +117 -0
  938. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/options.rb +203 -0
  939. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/path_util.rb +38 -0
  940. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/processed_source.rb +91 -0
  941. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/rake_task.rb +88 -0
  942. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/runner.rb +156 -0
  943. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/string_util.rb +153 -0
  944. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/target_finder.rb +98 -0
  945. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/token.rb +22 -0
  946. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/version.rb +21 -0
  947. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop.rb +284 -0
  948. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.19.0.md +94 -0
  949. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.19.1.md +16 -0
  950. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.20.0.md +69 -0
  951. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.20.1.md +24 -0
  952. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.21.0.md +56 -0
  953. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.22.0.md +77 -0
  954. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.23.0.md +79 -0
  955. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.24.0.md +77 -0
  956. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.24.1.md +15 -0
  957. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.25.0.md +91 -0
  958. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/relnotes/v0.26.0.md +89 -0
  959. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/rubocop.gemspec +39 -0
  960. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/isolated_environment_spec.rb +24 -0
  961. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/project_spec.rb +118 -0
  962. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cli_spec.rb +2246 -0
  963. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/comment_config_spec.rb +105 -0
  964. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/config_loader_spec.rb +356 -0
  965. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/config_spec.rb +235 -0
  966. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/config_store_spec.rb +53 -0
  967. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/commissioner_spec.rb +85 -0
  968. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/cop_spec.rb +135 -0
  969. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/corrector_spec.rb +59 -0
  970. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/force_spec.rb +29 -0
  971. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/ambiguous_operator_spec.rb +113 -0
  972. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/ambiguous_regexp_literal_spec.rb +35 -0
  973. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/assignment_in_condition_spec.rb +107 -0
  974. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/block_alignment_spec.rb +534 -0
  975. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/condition_position_spec.rb +51 -0
  976. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/debugger_spec.rb +60 -0
  977. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/def_end_alignment_spec.rb +108 -0
  978. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/deprecated_class_methods_spec.rb +38 -0
  979. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/else_layout_spec.rb +65 -0
  980. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/empty_ensure_spec.rb +27 -0
  981. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/empty_interpolation_spec.rb +18 -0
  982. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/end_alignment_spec.rb +91 -0
  983. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/end_in_method_spec.rb +29 -0
  984. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/ensure_return_spec.rb +39 -0
  985. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/eval_spec.rb +33 -0
  986. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/handle_exceptions_spec.rb +30 -0
  987. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/invalid_character_literal_spec.rb +33 -0
  988. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/literal_in_condition_spec.rb +154 -0
  989. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/literal_in_interpolation_spec.rb +31 -0
  990. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/loop_spec.rb +27 -0
  991. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/parentheses_as_grouped_expression_spec.rb +57 -0
  992. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/require_parentheses_spec.rb +82 -0
  993. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/rescue_exception_spec.rb +159 -0
  994. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/shadowing_outer_local_variable_spec.rb +237 -0
  995. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/space_before_first_arg_spec.rb +65 -0
  996. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/string_conversion_in_interpolation_spec.rb +51 -0
  997. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/syntax_spec.rb +34 -0
  998. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/underscore_prefixed_variable_name_spec.rb +179 -0
  999. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/unreachable_code_spec.rb +63 -0
  1000. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/unused_block_argument_spec.rb +231 -0
  1001. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/unused_method_argument_spec.rb +278 -0
  1002. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/useless_access_modifier_spec.rb +192 -0
  1003. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/useless_assignment_spec.rb +1785 -0
  1004. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/useless_comparison_spec.rb +30 -0
  1005. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/useless_else_without_rescue_spec.rb +48 -0
  1006. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/useless_setter_call_spec.rb +199 -0
  1007. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/lint/void_spec.rb +65 -0
  1008. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/block_nesting_spec.rb +156 -0
  1009. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/class_length_spec.rb +131 -0
  1010. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/cyclomatic_complexity_spec.rb +204 -0
  1011. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/if_unless_modifier_spec.rb +146 -0
  1012. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/line_length_spec.rb +108 -0
  1013. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/method_length_spec.rb +147 -0
  1014. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/parameter_lists_spec.rb +44 -0
  1015. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/perceived_complexity_spec.rb +222 -0
  1016. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/metrics/while_until_modifier_spec.rb +93 -0
  1017. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/offense_spec.rb +133 -0
  1018. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/action_filter_spec.rb +69 -0
  1019. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/default_scope_spec.rb +37 -0
  1020. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/delegate_spec.rb +169 -0
  1021. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/has_and_belongs_to_many_spec.rb +13 -0
  1022. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/output_spec.rb +37 -0
  1023. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/read_write_attribute_spec.rb +19 -0
  1024. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/scope_args_spec.rb +25 -0
  1025. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/rails/validation_spec.rb +28 -0
  1026. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/severity_spec.rb +113 -0
  1027. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/access_modifier_indentation_spec.rb +399 -0
  1028. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/accessor_method_name_spec.rb +81 -0
  1029. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/alias_spec.rb +59 -0
  1030. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/align_array_spec.rb +123 -0
  1031. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/align_hash_spec.rb +398 -0
  1032. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/align_parameters_spec.rb +420 -0
  1033. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/and_or_spec.rb +250 -0
  1034. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/array_join_spec.rb +29 -0
  1035. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/ascii_comments_spec.rb +22 -0
  1036. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/ascii_identifiers_spec.rb +36 -0
  1037. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/attr_spec.rb +29 -0
  1038. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/bare_percent_literals_spec.rb +132 -0
  1039. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/begin_block_spec.rb +13 -0
  1040. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/block_comments_spec.rb +45 -0
  1041. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/block_end_newline_spec.rb +61 -0
  1042. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/blocks_spec.rb +105 -0
  1043. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/braces_around_hash_parameters_spec.rb +302 -0
  1044. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/case_equality_spec.rb +13 -0
  1045. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/case_indentation_spec.rb +292 -0
  1046. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/character_literal_spec.rb +37 -0
  1047. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/class_and_module_camel_case_spec.rb +40 -0
  1048. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/class_and_module_children_spec.rb +131 -0
  1049. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/class_check_spec.rb +41 -0
  1050. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/class_methods_spec.rb +68 -0
  1051. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/class_vars_spec.rb +19 -0
  1052. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/collection_methods_spec.rb +48 -0
  1053. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/colon_method_call_spec.rb +60 -0
  1054. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/comment_annotation_spec.rb +86 -0
  1055. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/comment_indentation_spec.rb +174 -0
  1056. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/constant_name_spec.rb +65 -0
  1057. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/def_with_parentheses_spec.rb +43 -0
  1058. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/deprecated_hash_methods_spec.rb +45 -0
  1059. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/documentation_spec.rb +147 -0
  1060. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/dot_position_spec.rb +130 -0
  1061. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/double_negation_spec.rb +22 -0
  1062. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/each_with_object_spec.rb +73 -0
  1063. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/empty_line_between_defs_spec.rb +135 -0
  1064. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/empty_lines_around_access_modifier_spec.rb +100 -0
  1065. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/empty_lines_around_body_spec.rb +131 -0
  1066. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/empty_lines_spec.rb +51 -0
  1067. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/empty_literal_spec.rb +100 -0
  1068. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/encoding_spec.rb +139 -0
  1069. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/end_block_spec.rb +13 -0
  1070. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/end_of_line_spec.rb +65 -0
  1071. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/even_odd_spec.rb +75 -0
  1072. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/file_name_spec.rb +84 -0
  1073. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/flip_flop_spec.rb +23 -0
  1074. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/for_spec.rb +105 -0
  1075. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/format_string_spec.rb +148 -0
  1076. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/global_vars_spec.rb +34 -0
  1077. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/guard_clause_spec.rb +155 -0
  1078. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/hash_syntax_spec.rb +137 -0
  1079. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/if_with_semicolon_spec.rb +24 -0
  1080. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/indent_array_spec.rb +171 -0
  1081. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/indent_hash_spec.rb +366 -0
  1082. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/indentation_consistency_spec.rb +510 -0
  1083. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/indentation_width_spec.rb +843 -0
  1084. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/infinite_loop_spec.rb +48 -0
  1085. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/inline_comment_spec.rb +13 -0
  1086. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/lambda_call_spec.rb +65 -0
  1087. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/lambda_spec.rb +41 -0
  1088. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/leading_comment_space_spec.rb +64 -0
  1089. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/line_end_concatenation_spec.rb +136 -0
  1090. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/method_call_parentheses_spec.rb +59 -0
  1091. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/method_called_on_do_end_block_spec.rb +60 -0
  1092. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/method_def_parentheses_spec.rb +108 -0
  1093. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/method_name_spec.rb +125 -0
  1094. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/module_function_spec.rb +24 -0
  1095. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/multiline_block_chain_spec.rb +78 -0
  1096. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/multiline_block_layout_spec.rb +138 -0
  1097. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/multiline_if_then_spec.rb +116 -0
  1098. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/multiline_ternary_operator_spec.rb +18 -0
  1099. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/negated_if_spec.rb +102 -0
  1100. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/negated_while_spec.rb +62 -0
  1101. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/nested_ternary_operator_spec.rb +21 -0
  1102. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/next_spec.rb +285 -0
  1103. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/nil_comparison_spec.rb +29 -0
  1104. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/non_nil_check_spec.rb +101 -0
  1105. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/not_spec.rb +28 -0
  1106. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/numeric_literals_spec.rb +80 -0
  1107. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/one_line_conditional_spec.rb +13 -0
  1108. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/op_method_spec.rb +82 -0
  1109. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/parentheses_around_condition_spec.rb +143 -0
  1110. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/percent_literal_delimiters_spec.rb +316 -0
  1111. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/percent_q_literals_spec.rb +122 -0
  1112. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/perl_backrefs_spec.rb +17 -0
  1113. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/predicate_name_spec.rb +57 -0
  1114. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/proc_spec.rb +27 -0
  1115. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/raise_args_spec.rb +87 -0
  1116. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/redundant_begin_spec.rb +121 -0
  1117. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/redundant_exception_spec.rb +27 -0
  1118. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/redundant_return_spec.rb +171 -0
  1119. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/redundant_self_spec.rb +142 -0
  1120. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/regexp_literal_spec.rb +188 -0
  1121. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/rescue_modifier_spec.rb +116 -0
  1122. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/self_assignment_spec.rb +43 -0
  1123. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/semicolon_spec.rb +114 -0
  1124. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/signal_exception_spec.rb +290 -0
  1125. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/single_line_block_params_spec.rb +70 -0
  1126. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/single_line_methods_spec.rb +90 -0
  1127. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/single_space_before_first_arg_spec.rb +63 -0
  1128. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_colon_spec.rb +55 -0
  1129. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_comma_spec.rb +30 -0
  1130. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_control_keyword_spec.rb +84 -0
  1131. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_method_name_spec.rb +70 -0
  1132. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_not_spec.rb +22 -0
  1133. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_after_semicolon_spec.rb +23 -0
  1134. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_around_equals_in_parameter_default_spec.rb +86 -0
  1135. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_around_operators_spec.rb +327 -0
  1136. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_before_block_braces_spec.rb +72 -0
  1137. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_before_comma_spec.rb +42 -0
  1138. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_before_comment_spec.rb +34 -0
  1139. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_before_modifier_keyword_spec.rb +70 -0
  1140. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_before_semicolon_spec.rb +28 -0
  1141. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_inside_block_braces_spec.rb +307 -0
  1142. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_inside_brackets_spec.rb +83 -0
  1143. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_inside_hash_literal_braces_spec.rb +147 -0
  1144. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_inside_parens_spec.rb +46 -0
  1145. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/space_inside_range_literal_spec.rb +52 -0
  1146. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/special_global_vars_spec.rb +57 -0
  1147. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/string_literals_spec.rb +218 -0
  1148. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/symbol_array_spec.rb +37 -0
  1149. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/symbol_proc_spec.rb +76 -0
  1150. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/tab_spec.rb +47 -0
  1151. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/trailing_blank_lines_spec.rb +83 -0
  1152. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/trailing_comma_spec.rb +390 -0
  1153. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/trailing_whitespace_spec.rb +31 -0
  1154. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/trivial_accessors_spec.rb +542 -0
  1155. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/unless_else_spec.rb +23 -0
  1156. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/unneeded_capital_w_spec.rb +96 -0
  1157. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/unneeded_percent_q_spec.rb +127 -0
  1158. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/unneeded_percent_x_spec.rb +34 -0
  1159. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/variable_interpolation_spec.rb +76 -0
  1160. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/variable_name_spec.rb +107 -0
  1161. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/when_then_spec.rb +42 -0
  1162. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/while_until_do_spec.rb +55 -0
  1163. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/style/word_array_spec.rb +103 -0
  1164. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/team_spec.rb +190 -0
  1165. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/util_spec.rb +51 -0
  1166. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force/assignment_spec.rb +200 -0
  1167. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force/locatable_spec.rb +699 -0
  1168. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force/scope_spec.rb +319 -0
  1169. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force/variable_spec.rb +59 -0
  1170. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force/variable_table_spec.rb +269 -0
  1171. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/cop/variable_force_spec.rb +26 -0
  1172. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/base_formatter_spec.rb +191 -0
  1173. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/clang_style_formatter_spec.rb +114 -0
  1174. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/colorizable_spec.rb +107 -0
  1175. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/disabled_config_formatter_spec.rb +50 -0
  1176. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/disabled_lines_formatter_spec.rb +69 -0
  1177. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/emacs_style_formatter_spec.rb +63 -0
  1178. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/file_list_formatter_spec.rb +33 -0
  1179. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/formatter_set_spec.rb +132 -0
  1180. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/fuubar_style_formatter_spec.rb +129 -0
  1181. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/html_formatter_spec.rb +145 -0
  1182. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/json_formatter_spec.rb +152 -0
  1183. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/offense_count_formatter_spec.rb +77 -0
  1184. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/progress_formatter_spec.rb +182 -0
  1185. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/formatter/simple_text_formatter_spec.rb +135 -0
  1186. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/options_spec.rb +173 -0
  1187. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/path_util_spec.rb +77 -0
  1188. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/processed_source_spec.rb +184 -0
  1189. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/runner_spec.rb +64 -0
  1190. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/string_util_spec.rb +46 -0
  1191. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/target_finder_spec.rb +211 -0
  1192. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/rubocop/token_spec.rb +25 -0
  1193. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/spec_helper.rb +154 -0
  1194. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/file_helper.rb +23 -0
  1195. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/isolated_environment.rb +34 -0
  1196. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/mri_syntax_checker.rb +73 -0
  1197. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/offenses_matcher.rb +30 -0
  1198. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/shared_context.rb +20 -0
  1199. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/shared_examples.rb +55 -0
  1200. data/vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/spec/support/statement_modifier_helper.rb +41 -0
  1201. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/LICENSE +22 -0
  1202. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/README.md +440 -0
  1203. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/base.rb +212 -0
  1204. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/bar.rb +60 -0
  1205. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/elapsed_timer.rb +20 -0
  1206. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/estimated_timer.rb +86 -0
  1207. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/progressable.rb +105 -0
  1208. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/rate.rb +69 -0
  1209. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/throttle.rb +19 -0
  1210. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components/timer.rb +69 -0
  1211. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/components.rb +7 -0
  1212. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/errors/invalid_progress_error.rb +4 -0
  1213. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/format/base.rb +55 -0
  1214. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/format/molecule.rb +38 -0
  1215. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/format.rb +2 -0
  1216. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/formatter.rb +103 -0
  1217. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/length_calculator.rb +63 -0
  1218. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/running_average_calculator.rb +7 -0
  1219. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/time.rb +22 -0
  1220. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar/version.rb +3 -0
  1221. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/lib/ruby-progressbar.rb +12 -0
  1222. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/fixtures/benchmark.rb +11 -0
  1223. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/base_spec.rb +852 -0
  1224. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/components/bar_spec.rb +210 -0
  1225. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/components/elapsed_timer_spec.rb +91 -0
  1226. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/components/estimated_timer_spec.rb +241 -0
  1227. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/components/progressable_spec.rb +47 -0
  1228. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/components/throttle_spec.rb +100 -0
  1229. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/format/molecule_spec.rb +22 -0
  1230. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/running_average_calculator_spec.rb +11 -0
  1231. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/lib/ruby-progressbar/time_spec.rb +49 -0
  1232. data/vendor/bundle/ruby/2.1.0/gems/ruby-progressbar-1.5.1/spec/support/time.rb +19 -0
  1233. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/CHANGES.md +309 -0
  1234. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/Gemfile +3 -0
  1235. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/LICENSE +20 -0
  1236. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/README.md +202 -0
  1237. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/Rakefile +29 -0
  1238. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/lib/slop/commands.rb +196 -0
  1239. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/lib/slop/option.rb +214 -0
  1240. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/lib/slop.rb +687 -0
  1241. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/slop.gemspec +17 -0
  1242. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/test/commands_test.rb +26 -0
  1243. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/test/helper.rb +12 -0
  1244. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/test/option_test.rb +145 -0
  1245. data/vendor/bundle/ruby/2.1.0/gems/slop-3.6.0/test/slop_test.rb +518 -0
  1246. data/vendor/bundle/ruby/2.1.0/specifications/ast-2.0.0.gemspec +56 -0
  1247. data/vendor/bundle/ruby/2.1.0/specifications/astrolabe-1.3.0.gemspec +62 -0
  1248. data/vendor/bundle/ruby/2.1.0/specifications/builder-3.2.2.gemspec +23 -0
  1249. data/vendor/bundle/ruby/2.1.0/specifications/mini_portile-0.6.0.gemspec +24 -0
  1250. data/vendor/bundle/ruby/2.1.0/specifications/nokogiri-1.6.3.1-x64-mingw32.gemspec +73 -0
  1251. data/vendor/bundle/ruby/2.1.0/specifications/parser-2.2.0.pre.4.gemspec +79 -0
  1252. data/vendor/bundle/ruby/2.1.0/specifications/powerpack-0.0.9.gemspec +41 -0
  1253. data/vendor/bundle/ruby/2.1.0/specifications/rainbow-2.0.0.gemspec +39 -0
  1254. data/vendor/bundle/ruby/2.1.0/specifications/rake-0.9.6.gemspec +37 -0
  1255. data/vendor/bundle/ruby/2.1.0/specifications/rubocop-0.26.0.gemspec +63 -0
  1256. data/vendor/bundle/ruby/2.1.0/specifications/ruby-progressbar-1.5.1.gemspec +47 -0
  1257. data/vendor/bundle/ruby/2.1.0/specifications/slop-3.6.0.gemspec +36 -0
  1258. metadata +1253 -2
@@ -0,0 +1,3064 @@
1
+ # encoding: ascii-8bit
2
+
3
+ require 'helper'
4
+ require 'complex'
5
+
6
+ class TestLexer < Minitest::Test
7
+ def setup_lexer(version)
8
+ @lex = Parser::Lexer.new(version)
9
+
10
+ @lex.comments = []
11
+ @lex.diagnostics = Parser::Diagnostic::Engine.new
12
+ @lex.diagnostics.all_errors_are_fatal = true
13
+ # @lex.diagnostics.consumer = lambda { |diag| $stderr.puts "", diag.render }
14
+ end
15
+
16
+ def setup
17
+ setup_lexer 18
18
+ end
19
+
20
+ #
21
+ # Tools
22
+ #
23
+
24
+ def utf(str)
25
+ if str.respond_to?(:force_encoding)
26
+ str.force_encoding(Encoding::UTF_8)
27
+ else
28
+ str
29
+ end
30
+ end
31
+
32
+ #
33
+ # Additional matchers
34
+ #
35
+
36
+ def refute_scanned(s, *args)
37
+ assert_raises Parser::SyntaxError do
38
+ assert_scanned(s, *args)
39
+ end
40
+ end
41
+
42
+ def assert_escape(expected, input)
43
+ source_buffer = Parser::Source::Buffer.new('(assert_escape)')
44
+
45
+ if defined?(Encoding)
46
+ source_buffer.source = "\"\\#{input}\"".encode(input.encoding)
47
+ else
48
+ source_buffer.source = "\"\\#{input}\""
49
+ end
50
+
51
+ @lex.reset
52
+ @lex.source_buffer = source_buffer
53
+
54
+ lex_token, (lex_value, *) = @lex.advance
55
+
56
+ if lex_value.respond_to?(:force_encoding)
57
+ lex_value.force_encoding(Encoding::BINARY)
58
+ end
59
+
60
+ assert_equal [:tSTRING, expected],
61
+ [lex_token, lex_value],
62
+ source_buffer.source
63
+ end
64
+
65
+ def refute_escape(input)
66
+ err = assert_raises Parser::SyntaxError do
67
+ @lex.state = :expr_beg
68
+ assert_scanned "%Q[\\#{input}]"
69
+ end
70
+ assert_equal :fatal, err.diagnostic.level
71
+ end
72
+
73
+ def assert_lex_fname(name, type)
74
+ assert_scanned("def #{name} ", :kDEF, 'def', type, name)
75
+
76
+ assert_equal :expr_endfn, @lex.state
77
+ end
78
+
79
+ def assert_scanned(input, *args)
80
+ source_buffer = Parser::Source::Buffer.new('(assert_scanned)')
81
+ source_buffer.source = input
82
+
83
+ @lex.reset(false)
84
+ @lex.source_buffer = source_buffer
85
+
86
+ until args.empty? do
87
+ token, value = args.shift(2)
88
+
89
+ lex_token, (lex_value, *) = @lex.advance
90
+ assert lex_token, 'no more tokens'
91
+ assert_operator [lex_token, lex_value], :eql?, [token, value], input
92
+ end
93
+
94
+ lex_token, (lex_value, *) = @lex.advance
95
+ refute lex_token, "must be empty, but had #{[lex_token, lex_value].inspect}"
96
+ end
97
+
98
+ #
99
+ # Tests
100
+ #
101
+
102
+ def test_read_escape
103
+ assert_escape "\\", "\\"
104
+ assert_escape "\n", "n"
105
+ assert_escape "\t", "t"
106
+ assert_escape "\r", "r"
107
+ assert_escape "\f", "f"
108
+ assert_escape "\13", "v"
109
+ assert_escape "\0", "0"
110
+ assert_escape "\07", "a"
111
+ assert_escape "\007", "a"
112
+ assert_escape "\033", "e"
113
+ assert_escape "\377", "377"
114
+ assert_escape "\377", "xff"
115
+ assert_escape "\010", "b"
116
+ assert_escape " ", "s"
117
+ assert_escape "q", "q" # plain vanilla escape
118
+ end
119
+
120
+ def test_read_escape_c
121
+ assert_escape "\030", "C-x"
122
+ assert_escape "\030", "cx"
123
+ assert_escape "\230", 'C-\M-x'
124
+ assert_escape "\230", 'c\M-x'
125
+
126
+ assert_escape "\177", "C-?"
127
+ assert_escape "\177", "c?"
128
+ assert_escape "\r", "cM"
129
+ end
130
+
131
+ def test_read_escape_m
132
+ assert_escape "\370", "M-x"
133
+ assert_escape "\230", 'M-\C-x'
134
+ assert_escape "\230", 'M-\cx'
135
+ end
136
+
137
+ def test_read_escape_errors
138
+ refute_escape ""
139
+
140
+ refute_escape "M"
141
+ refute_escape "M-"
142
+ refute_escape "Mx"
143
+
144
+ refute_escape "Cx"
145
+ refute_escape "C"
146
+ refute_escape "C-"
147
+
148
+ refute_escape "c"
149
+
150
+ refute_escape "x"
151
+ end
152
+
153
+ def test_read_escape_unicode__19
154
+ if RUBY_VERSION >= '1.9'
155
+ assert_escape "\x09", 'u{9}'
156
+ assert_escape "\x31", 'u{31}'
157
+ assert_escape "\x09\x01", 'u{9 1}'
158
+
159
+ assert_escape "\xc4\xa3", utf('u0123')
160
+ assert_escape "\xc4\xa3\xc3\xb0\xeb\x84\xa3", utf('u{123 f0 B123}')
161
+ end
162
+ end
163
+
164
+ def test_read_escape_unicode_bad__19
165
+ if RUBY_VERSION >= '1.9'
166
+ refute_escape 'u123'
167
+ refute_escape 'u{}'
168
+ refute_escape 'u{123 f0h}'
169
+ refute_escape 'u{123 f0'
170
+ end
171
+ end
172
+
173
+ def test_ambiguous_uminus
174
+ assert_scanned("m -3",
175
+ :tIDENTIFIER, "m",
176
+ :tUMINUS_NUM, "-",
177
+ :tINTEGER, 3)
178
+ end
179
+
180
+ def test_ambiguous_uplus
181
+ assert_scanned("m +3",
182
+ :tIDENTIFIER, "m",
183
+ :tINTEGER, 3)
184
+ end
185
+
186
+ def test_and
187
+ assert_scanned "&", :tAMPER, "&"
188
+ end
189
+
190
+ def test_and2
191
+ @lex.state = :expr_end
192
+
193
+ assert_scanned "&&", :tANDOP, "&&"
194
+ end
195
+
196
+ def test_and2_equals
197
+ @lex.state = :expr_end
198
+
199
+ assert_scanned "&&=", :tOP_ASGN, "&&"
200
+ end
201
+
202
+ def test_and_arg
203
+ @lex.state = :expr_arg
204
+
205
+ assert_scanned(" &y",
206
+ :tAMPER, "&",
207
+ :tIDENTIFIER, "y")
208
+ end
209
+
210
+ def test_and_equals
211
+ @lex.state = :expr_end
212
+
213
+ assert_scanned "&=", :tOP_ASGN, "&"
214
+ end
215
+
216
+ def test_and_expr
217
+ @lex.state = :expr_arg
218
+
219
+ assert_scanned("x & y",
220
+ :tIDENTIFIER, "x",
221
+ :tAMPER2, "&",
222
+ :tIDENTIFIER, "y")
223
+ end
224
+
225
+ def test_and_meth
226
+ assert_lex_fname "&", :tAMPER2
227
+ end
228
+
229
+ def test_assoc
230
+ assert_scanned "=>", :tASSOC, "=>"
231
+ end
232
+
233
+ def test_label__18
234
+ assert_scanned("{a:b",
235
+ :tLBRACE, "{",
236
+ :tIDENTIFIER, "a",
237
+ :tSYMBOL, "b")
238
+ end
239
+
240
+ def test_label_in_params__18
241
+ assert_scanned("foo(a:b",
242
+ :tIDENTIFIER, "foo",
243
+ :tLPAREN2, "(",
244
+ :tIDENTIFIER, "a",
245
+ :tSYMBOL, "b")
246
+ end
247
+
248
+ def test_label__19
249
+ setup_lexer 19
250
+
251
+ assert_scanned("{a:b",
252
+ :tLBRACE, "{",
253
+ :tLABEL, "a",
254
+ :tIDENTIFIER, "b")
255
+ end
256
+
257
+ def test_label_in_params__19
258
+ setup_lexer 19
259
+
260
+ assert_scanned("foo(a:b",
261
+ :tIDENTIFIER, "foo",
262
+ :tLPAREN2, "(",
263
+ :tLABEL, "a",
264
+ :tIDENTIFIER, "b")
265
+ end
266
+
267
+ def test_label_fid__19
268
+ setup_lexer 19
269
+
270
+ assert_scanned("{a?:true",
271
+ :tLBRACE, '{',
272
+ :tLABEL, 'a?',
273
+ :kTRUE, 'true')
274
+ end
275
+
276
+ def test_command_start__19
277
+ setup_lexer 19
278
+
279
+ %w[case elsif for in until when while
280
+ if unless and or].each do |keyword|
281
+ token = "k#{keyword.upcase}".to_sym
282
+
283
+ @lex.reset
284
+ assert_scanned("#{keyword} a:b",
285
+ token, keyword,
286
+ :tIDENTIFIER, "a",
287
+ :tSYMBOL, "b")
288
+ end
289
+ end
290
+
291
+ def test_mod_not_command_start__19
292
+ setup_lexer 19
293
+
294
+ %w[if unless while until rescue].each do |keyword|
295
+ token = "k#{keyword.upcase}_MOD".to_sym
296
+
297
+ @lex.state = :expr_end
298
+ assert_scanned("#{keyword} a:b",
299
+ token, keyword,
300
+ :tLABEL, "a",
301
+ :tIDENTIFIER, "b")
302
+ end
303
+ end
304
+
305
+ def test_back_ref
306
+ assert_scanned("[$&, $`, $', $+]",
307
+ :tLBRACK, "[",
308
+ :tBACK_REF, "$&", :tCOMMA, ",",
309
+ :tBACK_REF, "$`", :tCOMMA, ",",
310
+ :tBACK_REF, "$'", :tCOMMA, ",",
311
+ :tBACK_REF, "$+",
312
+ :tRBRACK, "]")
313
+ end
314
+
315
+ def test_backslash
316
+ assert_scanned("1 \\\n+ 2",
317
+ :tINTEGER, 1,
318
+ :tPLUS, "+",
319
+ :tINTEGER, 2)
320
+ end
321
+
322
+ def test_backslash_bad
323
+ refute_scanned("1 \\ + 2",
324
+ :tINTEGER, 1)
325
+ end
326
+
327
+ def test_backtick
328
+ assert_scanned("`ls`",
329
+ :tXSTRING_BEG, "`",
330
+ :tSTRING_CONTENT, "ls",
331
+ :tSTRING_END, "`")
332
+ end
333
+
334
+ def test_backtick_cmdarg
335
+ @lex.state = :expr_dot
336
+ assert_scanned("\n`", :tBACK_REF2, "`") # \n ensures expr_cmd
337
+
338
+ assert_equal :expr_arg, @lex.state
339
+ end
340
+
341
+ def test_backtick_dot
342
+ @lex.state = :expr_dot
343
+ assert_scanned("a.`(3)",
344
+ :tIDENTIFIER, "a",
345
+ :tDOT, ".",
346
+ :tBACK_REF2, "`",
347
+ :tLPAREN2, "(",
348
+ :tINTEGER, 3,
349
+ :tRPAREN, ")")
350
+ end
351
+
352
+ def test_backtick_method
353
+ @lex.state = :expr_fname
354
+ assert_scanned("`", :tBACK_REF2, "`")
355
+ assert_equal :expr_endfn, @lex.state
356
+ end
357
+
358
+ def test_bad_char
359
+ refute_scanned(" \010 ")
360
+ end
361
+
362
+ def test_bang
363
+ assert_scanned "!", :tBANG, "!"
364
+ end
365
+
366
+ def test_bang_equals
367
+ assert_scanned "!=", :tNEQ, "!="
368
+ end
369
+
370
+ def test_bang_tilde
371
+ assert_scanned "!~", :tNMATCH, "!~"
372
+ end
373
+
374
+ def test_def_ubang
375
+ setup_lexer(20)
376
+
377
+ @lex.state = :expr_fname
378
+ assert_scanned '!@', :tBANG, '!@'
379
+ end
380
+
381
+ def test_carat
382
+ assert_scanned "^", :tCARET, "^"
383
+ end
384
+
385
+ def test_carat_equals
386
+ assert_scanned "^=", :tOP_ASGN, "^"
387
+ end
388
+
389
+ def test_colon2
390
+ assert_scanned("A::B",
391
+ :tCONSTANT, "A",
392
+ :tCOLON2, "::",
393
+ :tCONSTANT, "B")
394
+
395
+ @lex.state = :expr_arg
396
+ assert_scanned("::Array",
397
+ :tCOLON2, "::",
398
+ :tCONSTANT, "Array")
399
+ end
400
+
401
+ def test_colon3
402
+ assert_scanned("::Array",
403
+ :tCOLON3, "::",
404
+ :tCONSTANT, "Array")
405
+
406
+ @lex.state = :expr_arg
407
+ assert_scanned(" ::Array",
408
+ :tCOLON3, "::",
409
+ :tCONSTANT, "Array")
410
+ end
411
+
412
+ def test_comma
413
+ assert_scanned ",", :tCOMMA, ","
414
+ end
415
+
416
+ def test_comment
417
+ assert_scanned("1 # one\n# two\n2",
418
+ :tINTEGER, 1,
419
+ :tNL, nil,
420
+ :tINTEGER, 2)
421
+
422
+ assert_equal 2, @lex.comments.length
423
+ assert_equal '# one', @lex.comments[0].text
424
+ assert_equal '# two', @lex.comments[1].text
425
+ end
426
+
427
+ def test_comment_expr_beg
428
+ assert_scanned("{#1\n}",
429
+ :tLBRACE, "{",
430
+ :tRCURLY, "}")
431
+ end
432
+
433
+ def test_comment_begin
434
+ assert_scanned("=begin\nblah\nblah\n=end\n42",
435
+ :tINTEGER, 42)
436
+ assert_equal 1, @lex.comments.length
437
+ assert_equal "=begin\nblah\nblah\n=end\n", @lex.comments[0].text
438
+ end
439
+
440
+ def test_comment_begin_bad
441
+ refute_scanned("=begin\nblah\nblah\n")
442
+ end
443
+
444
+ def test_comment_begin_not_comment
445
+ assert_scanned("beginfoo = 5\np x \\\n=beginfoo",
446
+ :tIDENTIFIER, "beginfoo",
447
+ :tEQL, "=",
448
+ :tINTEGER, 5,
449
+ :tNL, nil,
450
+ :tIDENTIFIER, "p",
451
+ :tIDENTIFIER, "x",
452
+ :tEQL, "=",
453
+ :tIDENTIFIER, "beginfoo")
454
+ end
455
+
456
+ def test_comment_begin_space
457
+ assert_scanned("=begin blah\nblah\n=end\n")
458
+
459
+ assert_equal 1, @lex.comments.length
460
+ assert_equal "=begin blah\nblah\n=end\n", @lex.comments[0].text
461
+ end
462
+
463
+ def test_comment_end_space_and_text
464
+ assert_scanned("=begin blah\nblah\n=end blab\n")
465
+
466
+ assert_equal 1, @lex.comments.length
467
+ assert_equal "=begin blah\nblah\n=end blab\n", @lex.comments[0].text
468
+ end
469
+
470
+ def test_comment_eos
471
+ assert_scanned("# comment")
472
+ end
473
+
474
+ def test_constant
475
+ assert_scanned("ArgumentError",
476
+ :tCONSTANT, "ArgumentError")
477
+ end
478
+
479
+ def test_constant_semi
480
+ assert_scanned("ArgumentError;",
481
+ :tCONSTANT, "ArgumentError",
482
+ :tSEMI, ";")
483
+ end
484
+
485
+ def test_cvar
486
+ assert_scanned "@@blah", :tCVAR, "@@blah"
487
+ end
488
+
489
+ def test_cvar_bad
490
+ refute_scanned "@@1"
491
+ end
492
+
493
+ def test_div
494
+ assert_scanned("a / 2",
495
+ :tIDENTIFIER, "a",
496
+ :tDIVIDE, "/",
497
+ :tINTEGER, 2)
498
+ end
499
+
500
+ def test_div_equals
501
+ assert_scanned("a /= 2",
502
+ :tIDENTIFIER, "a",
503
+ :tOP_ASGN, "/",
504
+ :tINTEGER, 2)
505
+ end
506
+
507
+ def test_do
508
+ assert_scanned("x do 42 end",
509
+ :tIDENTIFIER, "x",
510
+ :kDO, "do",
511
+ :tINTEGER, 42,
512
+ :kEND, "end")
513
+ end
514
+
515
+ def test_do_cond
516
+ @lex.cond.push(true)
517
+
518
+ assert_scanned("x do 42 end",
519
+ :tIDENTIFIER, "x",
520
+ :kDO_COND, "do",
521
+ :tINTEGER, 42,
522
+ :kEND, "end")
523
+ end
524
+
525
+ def test_do_block
526
+ @lex.state = :expr_endarg
527
+
528
+ assert_scanned("do 42 end",
529
+ :kDO_BLOCK, "do",
530
+ :tINTEGER, 42,
531
+ :kEND, "end")
532
+ end
533
+
534
+ def test_do_cond
535
+ @lex.cond.push true
536
+
537
+ assert_scanned("x do 42 end",
538
+ :tIDENTIFIER, "x",
539
+ :kDO_COND, "do",
540
+ :tINTEGER, 42,
541
+ :kEND, "end")
542
+ end
543
+
544
+ def test_dot
545
+ assert_scanned ".", :tDOT, "."
546
+ end
547
+
548
+ def test_dot2
549
+ assert_scanned "..", :tDOT2, ".."
550
+ end
551
+
552
+ def test_dot3
553
+ assert_scanned "...", :tDOT3, "..."
554
+ end
555
+
556
+ def test_equals
557
+ assert_scanned "=", :tEQL, "="
558
+ end
559
+
560
+ def test_equals2
561
+ assert_scanned "==", :tEQ, "=="
562
+ end
563
+
564
+ def test_equals3
565
+ assert_scanned "===", :tEQQ, "==="
566
+ end
567
+
568
+ def test_equals_tilde
569
+ assert_scanned "=~", :tMATCH, "=~"
570
+ end
571
+
572
+ def test_float
573
+ assert_scanned "1.0", :tFLOAT, 1.0
574
+ end
575
+
576
+ def test_float_bad_no_underscores
577
+ refute_scanned "1__0.0"
578
+ end
579
+
580
+ def test_float_bad_no_zero_leading
581
+ refute_scanned ".0"
582
+ end
583
+
584
+ def test_float_bad_trailing_underscore
585
+ refute_scanned "123_.0"
586
+ end
587
+
588
+ def test_float_call
589
+ assert_scanned("1.0.to_s",
590
+ :tFLOAT, 1.0,
591
+ :tDOT, ".",
592
+ :tIDENTIFIER, "to_s")
593
+ end
594
+
595
+ def test_float_dot_E
596
+ assert_scanned "1.0E10", :tFLOAT, 1.0e10
597
+ end
598
+
599
+ def test_float_dot_E_neg
600
+ assert_scanned("-1.0E10",
601
+ :tUMINUS_NUM, "-",
602
+ :tFLOAT, 1.0e10)
603
+ end
604
+
605
+ def test_float_dot_e
606
+ assert_scanned "1.0e10", :tFLOAT, 1.0e10
607
+ end
608
+
609
+ def test_float_dot_e_neg
610
+ assert_scanned("-1.0e10",
611
+ :tUMINUS_NUM, "-",
612
+ :tFLOAT, 1.0e10)
613
+ end
614
+
615
+ def test_float_e
616
+ assert_scanned "1e10", :tFLOAT, 1e10
617
+ end
618
+
619
+ def test_float_e_bad_trailing_underscore
620
+ refute_scanned "123_e10"
621
+ end
622
+
623
+ def test_float_e_minus
624
+ assert_scanned "1e-10", :tFLOAT, 1e-10
625
+ end
626
+
627
+ def test_float_e_neg
628
+ assert_scanned("-1e10",
629
+ :tUMINUS_NUM, "-",
630
+ :tFLOAT, 1e10)
631
+ end
632
+
633
+ def test_float_e_neg_minus
634
+ assert_scanned("-1e-10",
635
+ :tUMINUS_NUM, "-",
636
+ :tFLOAT, 1e-10)
637
+ end
638
+
639
+ def test_float_e_neg_plus
640
+ assert_scanned("-1e+10",
641
+ :tUMINUS_NUM, "-",
642
+ :tFLOAT, 1e10)
643
+ end
644
+
645
+ def test_float_e_plus
646
+ assert_scanned "1e+10", :tFLOAT, 1e10
647
+ end
648
+
649
+ def test_float_e_zero
650
+ assert_scanned "0e0", :tFLOAT, 0e0
651
+ end
652
+
653
+ def test_float_e_nothing
654
+ [18, 19, 20].each do |version|
655
+ setup_lexer version
656
+
657
+ refute_scanned "1end"
658
+ refute_scanned "1.1end"
659
+ end
660
+
661
+ setup_lexer 21
662
+
663
+ assert_scanned("1end",
664
+ :tINTEGER, 1,
665
+ :kEND, 'end')
666
+ assert_scanned("1.1end",
667
+ :tFLOAT, 1.1,
668
+ :kEND, 'end')
669
+ end
670
+
671
+ def test_float_neg
672
+ assert_scanned("-1.0",
673
+ :tUMINUS_NUM, "-",
674
+ :tFLOAT, 1.0)
675
+ end
676
+
677
+ def test_ge
678
+ assert_scanned("a >= 2",
679
+ :tIDENTIFIER, "a",
680
+ :tGEQ, ">=",
681
+ :tINTEGER, 2)
682
+ end
683
+
684
+ def test_global
685
+ assert_scanned("$blah", :tGVAR, "$blah")
686
+ end
687
+
688
+ def test_global_backref
689
+ assert_scanned("$`", :tBACK_REF, "$`")
690
+ end
691
+
692
+ # This was removed in 2.1.
693
+ # def test_global_dash_nothing
694
+ # assert_scanned("$- ", :tGVAR, "$-")
695
+ # end
696
+
697
+ def test_global_dash_something
698
+ assert_scanned("$-x", :tGVAR, "$-x")
699
+ end
700
+
701
+ def test_global_number
702
+ assert_scanned("$10", :tNTH_REF, 10)
703
+ end
704
+
705
+ def test_global_other
706
+ assert_scanned("[$~, $*, $$, $?, $!, $@, $/, $\\, $;, $,, $., $=, $:, $<, $>, $\"]",
707
+ :tLBRACK, "[",
708
+ :tGVAR, "$~", :tCOMMA, ",",
709
+ :tGVAR, "$*", :tCOMMA, ",",
710
+ :tGVAR, "$$", :tCOMMA, ",",
711
+ :tGVAR, "$\?", :tCOMMA, ",",
712
+ :tGVAR, "$!", :tCOMMA, ",",
713
+ :tGVAR, "$@", :tCOMMA, ",",
714
+ :tGVAR, "$/", :tCOMMA, ",",
715
+ :tGVAR, "$\\", :tCOMMA, ",",
716
+ :tGVAR, "$;", :tCOMMA, ",",
717
+ :tGVAR, "$,", :tCOMMA, ",",
718
+ :tGVAR, "$.", :tCOMMA, ",",
719
+ :tGVAR, "$=", :tCOMMA, ",",
720
+ :tGVAR, "$:", :tCOMMA, ",",
721
+ :tGVAR, "$<", :tCOMMA, ",",
722
+ :tGVAR, "$>", :tCOMMA, ",",
723
+ :tGVAR, "$\"",
724
+ :tRBRACK, "]")
725
+ end
726
+
727
+ def test_global_underscore
728
+ assert_scanned("$_",
729
+ :tGVAR, "$_")
730
+ end
731
+
732
+ def test_global_wierd
733
+ assert_scanned("$__blah",
734
+ :tGVAR, "$__blah")
735
+ end
736
+
737
+ def test_global_zero
738
+ assert_scanned("$0", :tGVAR, "$0")
739
+ end
740
+
741
+ def test_gt
742
+ assert_scanned("a > 2",
743
+ :tIDENTIFIER, "a",
744
+ :tGT, ">",
745
+ :tINTEGER, 2)
746
+ end
747
+
748
+ def test_heredoc_backtick
749
+ assert_scanned("a = <<`EOF`\n blah blah\nEOF\n",
750
+ :tIDENTIFIER, "a",
751
+ :tEQL, "=",
752
+ :tXSTRING_BEG, "<<`",
753
+ :tSTRING_CONTENT, " blah blah\n",
754
+ :tSTRING_END, "EOF",
755
+ :tNL, nil)
756
+ end
757
+
758
+ def test_heredoc_double
759
+ assert_scanned("a = <<\"EOF\"\n blah blah\nEOF\n",
760
+ :tIDENTIFIER, "a",
761
+ :tEQL, "=",
762
+ :tSTRING_BEG, "<<\"",
763
+ :tSTRING_CONTENT, " blah blah\n",
764
+ :tSTRING_END, "EOF",
765
+ :tNL, nil)
766
+ end
767
+
768
+ def test_heredoc_double_dash
769
+ assert_scanned("a = <<-\"EOF\"\n blah blah\n EOF\n",
770
+ :tIDENTIFIER, "a",
771
+ :tEQL, "=",
772
+ :tSTRING_BEG, "<<\"",
773
+ :tSTRING_CONTENT, " blah blah\n",
774
+ :tSTRING_END, "EOF",
775
+ :tNL, nil)
776
+ end
777
+
778
+ def test_heredoc_double_eos
779
+ refute_scanned("a = <<\"EOF\"\nblah",
780
+ :tIDENTIFIER, "a",
781
+ :tEQL, "=",
782
+ :tSTRING_BEG, "<<\"")
783
+ end
784
+
785
+ def test_heredoc_double_eos_nl
786
+ refute_scanned("a = <<\"EOF\"\nblah\n",
787
+ :tIDENTIFIER, "a",
788
+ :tEQL, "=",
789
+ :tSTRING_BEG, "<<\"")
790
+ end
791
+
792
+ def test_heredoc_double_interp
793
+ assert_scanned("a = <<\"EOF\"\n#x a \#@a b \#$b c \#{3} \nEOF\n",
794
+ :tIDENTIFIER, "a",
795
+ :tEQL, "=",
796
+ :tSTRING_BEG, "<<\"",
797
+ :tSTRING_CONTENT, "#x a ",
798
+ :tSTRING_DVAR, nil,
799
+ :tIVAR, "@a",
800
+ :tSTRING_CONTENT, " b ",
801
+ :tSTRING_DVAR, nil,
802
+ :tGVAR, "$b",
803
+ :tSTRING_CONTENT, " c ",
804
+ :tSTRING_DBEG, '#{',
805
+ :tINTEGER, 3,
806
+ :tRCURLY, "}",
807
+ :tSTRING_CONTENT, " \n",
808
+ :tSTRING_END, "EOF",
809
+ :tNL, nil)
810
+ end
811
+
812
+ def test_heredoc_empty
813
+ assert_scanned("<<\"\"\n\#{x}\nblah2\n\n",
814
+ :tSTRING_BEG, "<<\"",
815
+ :tSTRING_DBEG, "\#{",
816
+ :tIDENTIFIER, "x",
817
+ :tRCURLY, "}",
818
+ :tSTRING_CONTENT, "\n",
819
+ :tSTRING_CONTENT, "blah2\n",
820
+ :tSTRING_END, "",
821
+ :tNL, nil)
822
+ end
823
+
824
+ def test_heredoc_none
825
+ assert_scanned("a = <<EOF\nblah\nblah\nEOF",
826
+ :tIDENTIFIER, "a",
827
+ :tEQL, "=",
828
+ :tSTRING_BEG, "<<\"",
829
+ :tSTRING_CONTENT, "blah\n",
830
+ :tSTRING_CONTENT, "blah\n",
831
+ :tSTRING_END, "EOF",
832
+ :tNL, nil)
833
+ end
834
+
835
+ def test_heredoc_none_dash
836
+ assert_scanned("a = <<-EOF\nblah\nblah\n EOF",
837
+ :tIDENTIFIER, "a",
838
+ :tEQL, "=",
839
+ :tSTRING_BEG, "<<\"",
840
+ :tSTRING_CONTENT, "blah\n",
841
+ :tSTRING_CONTENT, "blah\n",
842
+ :tSTRING_END, "EOF",
843
+ :tNL, nil)
844
+ end
845
+
846
+ def test_heredoc_single
847
+ assert_scanned("a = <<'EOF'\n blah blah\nEOF\n",
848
+ :tIDENTIFIER, "a",
849
+ :tEQL, "=",
850
+ :tSTRING_BEG, "<<'",
851
+ :tSTRING_CONTENT, " blah blah\n",
852
+ :tSTRING_END, "EOF",
853
+ :tNL, nil)
854
+ end
855
+
856
+ def test_heredoc_single_bad_eos_body
857
+ refute_scanned("a = <<'EOF'\nblah",
858
+ :tIDENTIFIER, "a",
859
+ :tEQL, "=",
860
+ :tSTRING_BEG, "'")
861
+ end
862
+
863
+ def test_heredoc_single_dash
864
+ assert_scanned("a = <<-'EOF'\n blah blah\n EOF\n",
865
+ :tIDENTIFIER, "a",
866
+ :tEQL, "=",
867
+ :tSTRING_BEG, "<<'",
868
+ :tSTRING_CONTENT, " blah blah\n",
869
+ :tSTRING_END, "EOF",
870
+ :tNL, nil)
871
+ end
872
+
873
+ def test_heredoc_one_character
874
+ assert_scanned("a = <<E\nABCDEF\nE\n",
875
+ :tIDENTIFIER, "a",
876
+ :tEQL, "=",
877
+ :tSTRING_BEG, "<<\"",
878
+ :tSTRING_CONTENT, "ABCDEF\n",
879
+ :tSTRING_END, "E",
880
+ :tNL, nil)
881
+ end
882
+
883
+ def test_heredoc_cr
884
+ assert_scanned("a = <<E\r\r\nABCDEF\r\r\nE\r\r\r\n",
885
+ :tIDENTIFIER, "a",
886
+ :tEQL, "=",
887
+ :tSTRING_BEG, "<<\"",
888
+ :tSTRING_CONTENT, "ABCDEF\r\n",
889
+ :tSTRING_END, "E",
890
+ :tNL, nil)
891
+ end
892
+
893
+ def test_identifier
894
+ assert_scanned("identifier",
895
+ :tIDENTIFIER, "identifier")
896
+ end
897
+
898
+ def test_identifier_bang
899
+ assert_scanned("identifier!",
900
+ :tFID, "identifier!")
901
+
902
+ assert_scanned("identifier!=",
903
+ :tIDENTIFIER, "identifier",
904
+ :tNEQ, "!=")
905
+ end
906
+
907
+ def test_identifier_cmp
908
+ assert_lex_fname "<=>", :tCMP
909
+ end
910
+
911
+ def test_identifier_def
912
+ assert_lex_fname "identifier", :tIDENTIFIER
913
+ end
914
+
915
+ def test_identifier_eh
916
+ assert_scanned("identifier?", :tFID, "identifier?")
917
+ end
918
+
919
+ def test_identifier_equals_arrow
920
+ assert_scanned(":blah==>",
921
+ :tSYMBOL, "blah=",
922
+ :tASSOC, "=>")
923
+ end
924
+
925
+ def test_identifier_equals3
926
+ assert_scanned(":a===b",
927
+ :tSYMBOL, "a",
928
+ :tEQQ, "===",
929
+ :tIDENTIFIER, "b")
930
+ end
931
+
932
+ def test_identifier_equals_equals_arrow
933
+ assert_scanned(":a==>b",
934
+ :tSYMBOL, "a=",
935
+ :tASSOC, "=>",
936
+ :tIDENTIFIER, "b")
937
+ end
938
+
939
+ def test_identifier_equals_caret
940
+ assert_lex_fname "^", :tCARET
941
+ end
942
+
943
+ def test_identifier_equals_def
944
+ assert_lex_fname "identifier=", :tIDENTIFIER
945
+ end
946
+
947
+ def test_identifier_equals_def2
948
+ assert_lex_fname "==", :tEQ
949
+ end
950
+
951
+ def test_identifier_equals_expr
952
+ @lex.state = :expr_dot
953
+ assert_scanned("y = arg",
954
+ :tIDENTIFIER, "y",
955
+ :tEQL, "=",
956
+ :tIDENTIFIER, "arg")
957
+
958
+ assert_equal :expr_arg, @lex.state
959
+ end
960
+
961
+ def test_identifier_equals_or
962
+ assert_lex_fname "|", :tPIPE
963
+ end
964
+
965
+ def test_identifier_equals_slash
966
+ assert_lex_fname "/", :tDIVIDE
967
+ end
968
+
969
+ def test_identifier_equals_tilde
970
+ @lex.state = :expr_fname
971
+ assert_scanned("identifier=~",
972
+ :tIDENTIFIER, "identifier=",
973
+ :tTILDE, "~")
974
+ end
975
+
976
+ def test_identifier_gt
977
+ assert_lex_fname ">", :tGT
978
+ end
979
+
980
+ def test_identifier_le
981
+ assert_lex_fname "<=", :tLEQ
982
+ end
983
+
984
+ def test_identifier_lt
985
+ assert_lex_fname "<", :tLT
986
+ end
987
+
988
+ def test_identifier_tilde
989
+ assert_lex_fname "~", :tTILDE
990
+ end
991
+
992
+ def test_identifier_defined?
993
+ assert_lex_fname "defined?", :kDEFINED
994
+ end
995
+
996
+ def test_index
997
+ assert_lex_fname "[]", :tAREF
998
+ end
999
+
1000
+ def test_index_equals
1001
+ assert_lex_fname "[]=", :tASET
1002
+ end
1003
+
1004
+ def test_integer
1005
+ assert_scanned "42", :tINTEGER, 42
1006
+ end
1007
+
1008
+ def test_integer_bin
1009
+ assert_scanned "0b101010", :tINTEGER, 42
1010
+ end
1011
+
1012
+ def test_integer_bin_bad_none
1013
+ refute_scanned "0b "
1014
+ end
1015
+
1016
+ def test_integer_bin_bad_underscores
1017
+ refute_scanned "0b10__01"
1018
+ end
1019
+
1020
+ def test_integer_dec
1021
+ assert_scanned "42", :tINTEGER, 42
1022
+ end
1023
+
1024
+ def test_integer_dec_bad_underscores
1025
+ refute_scanned "42__24"
1026
+ end
1027
+
1028
+ def test_integer_dec_d
1029
+ assert_scanned "0d42", :tINTEGER, 42
1030
+ end
1031
+
1032
+ def test_integer_dec_d_bad_none
1033
+ refute_scanned "0d"
1034
+ end
1035
+
1036
+ def test_integer_dec_d_bad_underscores
1037
+ refute_scanned "0d42__24"
1038
+ end
1039
+
1040
+ def test_question_eh_a__18
1041
+ setup_lexer 18
1042
+
1043
+ assert_scanned "?a", :tINTEGER, 97
1044
+ end
1045
+
1046
+ def test_question_eh_a__19
1047
+ setup_lexer 19
1048
+
1049
+ assert_scanned '?a', :tCHARACTER, "a"
1050
+ end
1051
+
1052
+ def test_question_eh_escape_M_escape_C__18
1053
+ setup_lexer 18
1054
+
1055
+ assert_scanned '?\M-\C-a', :tINTEGER, 129
1056
+ end
1057
+
1058
+ def test_question_eh_escape_M_escape_C__19
1059
+ setup_lexer 19
1060
+
1061
+ assert_scanned '?\M-\C-a', :tCHARACTER, "\M-\C-a"
1062
+ end
1063
+
1064
+ def test_integer_hex
1065
+ assert_scanned "0x2a", :tINTEGER, 42
1066
+ end
1067
+
1068
+ def test_integer_hex_bad_none
1069
+ refute_scanned "0x "
1070
+ end
1071
+
1072
+ def test_integer_hex_bad_underscores
1073
+ refute_scanned "0xab__cd"
1074
+ end
1075
+
1076
+ def test_integer_oct
1077
+ assert_scanned "052", :tINTEGER, 42
1078
+ end
1079
+
1080
+ def test_integer_oct_bad_range
1081
+ refute_scanned "08"
1082
+ end
1083
+
1084
+ def test_integer_oct_bad_underscores
1085
+ refute_scanned "01__23"
1086
+ end
1087
+
1088
+ def test_integer_oct_O
1089
+ assert_scanned "0O52", :tINTEGER, 42
1090
+ end
1091
+
1092
+ def test_integer_oct_O_bad_range
1093
+ refute_scanned "0O1238"
1094
+ end
1095
+
1096
+ def test_integer_oct_O_bad_underscores
1097
+ refute_scanned "0O1__23"
1098
+ end
1099
+
1100
+ def test_integer_oct_O_not_bad_none
1101
+ assert_scanned "0O ", :tINTEGER, 0
1102
+ end
1103
+
1104
+ def test_integer_oct_o
1105
+ assert_scanned "0o52", :tINTEGER, 42
1106
+ end
1107
+
1108
+ def test_integer_oct_o_bad_range
1109
+ refute_scanned "0o1283"
1110
+ end
1111
+
1112
+ def test_integer_oct_o_bad_underscores
1113
+ refute_scanned "0o1__23"
1114
+ end
1115
+
1116
+ def test_integer_oct_o_not_bad_none
1117
+ assert_scanned "0o ", :tINTEGER, 0
1118
+ end
1119
+
1120
+ def test_integer_trailing
1121
+ assert_scanned("1.to_s",
1122
+ :tINTEGER, 1,
1123
+ :tDOT, '.',
1124
+ :tIDENTIFIER, 'to_s')
1125
+ end
1126
+
1127
+ def test_integer_underscore
1128
+ assert_scanned "4_2", :tINTEGER, 42
1129
+ end
1130
+
1131
+ def test_integer_underscore_bad
1132
+ refute_scanned "4__2"
1133
+ end
1134
+
1135
+ def test_integer_zero
1136
+ assert_scanned "0", :tINTEGER, 0
1137
+ end
1138
+
1139
+ def test_ivar
1140
+ assert_scanned "@blah", :tIVAR, "@blah"
1141
+ end
1142
+
1143
+ def test_ivar_bad
1144
+ refute_scanned "@1"
1145
+ end
1146
+
1147
+ def test_ivar_bad_0_length
1148
+ refute_scanned "1+@\n", :tINTEGER, 1, :tPLUS, "+"
1149
+ end
1150
+
1151
+ def test_keyword_expr
1152
+ @lex.state = :expr_endarg
1153
+
1154
+ assert_scanned("if", :kIF_MOD, "if")
1155
+
1156
+ assert_equal :expr_beg, @lex.state
1157
+ end
1158
+
1159
+ def test_lt
1160
+ assert_scanned "<", :tLT, "<"
1161
+ end
1162
+
1163
+ def test_lt2
1164
+ assert_scanned("a <\< b",
1165
+ :tIDENTIFIER, "a",
1166
+ :tLSHFT, "<\<",
1167
+ :tIDENTIFIER, "b")
1168
+
1169
+ end
1170
+
1171
+ def test_lt2_equals
1172
+ assert_scanned("a <\<= b",
1173
+ :tIDENTIFIER, "a",
1174
+ :tOP_ASGN, "<\<",
1175
+ :tIDENTIFIER, "b")
1176
+ end
1177
+
1178
+ def test_lt_equals
1179
+ assert_scanned "<=", :tLEQ, "<="
1180
+ end
1181
+
1182
+ def test_minus
1183
+ assert_scanned("1 - 2",
1184
+ :tINTEGER, 1,
1185
+ :tMINUS, "-",
1186
+ :tINTEGER, 2)
1187
+ end
1188
+
1189
+ def test_minus_equals
1190
+ @lex.state = :expr_end
1191
+
1192
+ assert_scanned "-=", :tOP_ASGN, "-"
1193
+ end
1194
+
1195
+ def test_minus_method
1196
+ @lex.state = :expr_fname
1197
+ assert_scanned "-", :tMINUS, "-"
1198
+ end
1199
+
1200
+ def test_minus_unary_method
1201
+ @lex.state = :expr_fname
1202
+ assert_scanned "-@", :tUMINUS, "-@"
1203
+ end
1204
+
1205
+ def test_minus_unary_number
1206
+ assert_scanned("-42",
1207
+ :tUMINUS_NUM, "-",
1208
+ :tINTEGER, 42)
1209
+ end
1210
+
1211
+ def test_nth_ref
1212
+ assert_scanned('[$1, $2, $3]',
1213
+ :tLBRACK, "[",
1214
+ :tNTH_REF, 1, :tCOMMA, ",",
1215
+ :tNTH_REF, 2, :tCOMMA, ",",
1216
+ :tNTH_REF, 3,
1217
+ :tRBRACK, "]")
1218
+ end
1219
+
1220
+ def test_open_bracket
1221
+ assert_scanned("(", :tLPAREN, "(")
1222
+ end
1223
+
1224
+ def test_open_bracket_cmdarg
1225
+ assert_scanned("m (", :tIDENTIFIER, "m",
1226
+ :tLPAREN_ARG, "(")
1227
+ end
1228
+
1229
+ def test_open_bracket_exprarg
1230
+ assert_scanned("m(", :tIDENTIFIER, "m",
1231
+ :tLPAREN2, "(")
1232
+ end
1233
+
1234
+ def test_open_curly_bracket
1235
+ assert_scanned("{",
1236
+ :tLBRACE, "{")
1237
+ end
1238
+
1239
+ def test_open_curly_bracket_arg
1240
+ assert_scanned("m { 3 }",
1241
+ :tIDENTIFIER, "m",
1242
+ :tLCURLY, "{",
1243
+ :tINTEGER, 3,
1244
+ :tRCURLY, "}")
1245
+ end
1246
+
1247
+ def test_open_curly_bracket_block
1248
+ @lex.state = :expr_endarg # seen m(3)
1249
+
1250
+ assert_scanned("{ 4 }",
1251
+ :tLBRACE_ARG, "{",
1252
+ :tINTEGER, 4,
1253
+ :tRCURLY, "}")
1254
+ end
1255
+
1256
+ def test_open_square_bracket_arg
1257
+ assert_scanned("m [ 3 ]",
1258
+ :tIDENTIFIER, "m",
1259
+ :tLBRACK, "[",
1260
+ :tINTEGER, 3,
1261
+ :tRBRACK, "]")
1262
+ end
1263
+
1264
+ def test_open_square_bracket_ary
1265
+ assert_scanned("[1, 2, 3]",
1266
+ :tLBRACK, "[",
1267
+ :tINTEGER, 1,
1268
+ :tCOMMA, ",",
1269
+ :tINTEGER, 2,
1270
+ :tCOMMA, ",",
1271
+ :tINTEGER, 3,
1272
+ :tRBRACK, "]")
1273
+ end
1274
+
1275
+ def test_open_square_bracket_meth
1276
+ assert_scanned("m[3]",
1277
+ :tIDENTIFIER, "m",
1278
+ :tLBRACK2, "[",
1279
+ :tINTEGER, 3,
1280
+ :tRBRACK, "]")
1281
+ end
1282
+
1283
+ def test_or
1284
+ assert_scanned "|", :tPIPE, "|"
1285
+ end
1286
+
1287
+ def test_or2
1288
+ assert_scanned "||", :tOROP, "||"
1289
+ end
1290
+
1291
+ def test_or2_equals
1292
+ assert_scanned "||=", :tOP_ASGN, "||"
1293
+ end
1294
+
1295
+ def test_or_equals
1296
+ assert_scanned "|=", :tOP_ASGN, "|"
1297
+ end
1298
+
1299
+ def test_percent
1300
+ assert_scanned("a % 2",
1301
+ :tIDENTIFIER, "a",
1302
+ :tPERCENT, "%",
1303
+ :tINTEGER, 2)
1304
+ end
1305
+
1306
+ def test_percent_equals
1307
+ assert_scanned("a %= 2",
1308
+ :tIDENTIFIER, "a",
1309
+ :tOP_ASGN, "%",
1310
+ :tINTEGER, 2)
1311
+ end
1312
+
1313
+ def test_plus
1314
+ assert_scanned("1 + 1",
1315
+ :tINTEGER, 1,
1316
+ :tPLUS, "+",
1317
+ :tINTEGER, 1)
1318
+ end
1319
+
1320
+ def test_plus_equals
1321
+ @lex.state = :expr_end
1322
+
1323
+ assert_scanned "+=", :tOP_ASGN, "+"
1324
+ end
1325
+
1326
+ def test_plus_method
1327
+ @lex.state = :expr_fname
1328
+ assert_scanned "+", :tPLUS, "+"
1329
+ end
1330
+
1331
+ def test_plus_unary_method
1332
+ @lex.state = :expr_fname
1333
+ assert_scanned "+@", :tUPLUS, "+@"
1334
+ end
1335
+
1336
+ def test_numbers
1337
+ assert_scanned "0b10", :tINTEGER, 2
1338
+ assert_scanned "0B10", :tINTEGER, 2
1339
+
1340
+ assert_scanned "0d10", :tINTEGER, 10
1341
+ assert_scanned "0D10", :tINTEGER, 10
1342
+
1343
+ assert_scanned "0x10", :tINTEGER, 16
1344
+ assert_scanned "0X10", :tINTEGER, 16
1345
+
1346
+ assert_scanned "0o10", :tINTEGER, 8
1347
+ assert_scanned "0O10", :tINTEGER, 8
1348
+ assert_scanned "0o", :tINTEGER, 0
1349
+ assert_scanned "0O", :tINTEGER, 0
1350
+
1351
+ assert_scanned "0o", :tINTEGER, 0
1352
+ assert_scanned "0O", :tINTEGER, 0
1353
+
1354
+ assert_scanned "0777_333", :tINTEGER, 261851
1355
+
1356
+ assert_scanned "0", :tINTEGER, 0
1357
+
1358
+ refute_scanned "0x"
1359
+ refute_scanned "0X"
1360
+ refute_scanned "0b"
1361
+ refute_scanned "0B"
1362
+ refute_scanned "0d"
1363
+ refute_scanned "0D"
1364
+
1365
+ refute_scanned "08"
1366
+ refute_scanned "09"
1367
+ refute_scanned "0o8"
1368
+ refute_scanned "0o9"
1369
+ refute_scanned "0O8"
1370
+ refute_scanned "0O9"
1371
+
1372
+ refute_scanned "1_e1"
1373
+ refute_scanned "1_.1"
1374
+ refute_scanned "1__1"
1375
+
1376
+ refute_scanned "1end"
1377
+ refute_scanned "1.1end"
1378
+ end
1379
+
1380
+ def test_plus_unary_number
1381
+ assert_scanned("+42",
1382
+ :tINTEGER, 42)
1383
+ end
1384
+
1385
+ def test_question__18
1386
+ setup_lexer 18
1387
+
1388
+ assert_scanned "?*", :tINTEGER, 42
1389
+ end
1390
+
1391
+ def test_question__19
1392
+ setup_lexer 19
1393
+
1394
+ assert_scanned "?*", :tCHARACTER, "*"
1395
+ end
1396
+
1397
+ def test_question_bad_eos
1398
+ refute_scanned "?"
1399
+ end
1400
+
1401
+ def test_question_bad_ws
1402
+ assert_scanned "? ", :tEH, "?"
1403
+ assert_scanned "?\n", :tEH, "?"
1404
+ assert_scanned "?\t", :tEH, "?"
1405
+ assert_scanned "?\v", :tEH, "?"
1406
+ assert_scanned "?\r", :tEH, "?"
1407
+ assert_scanned "?\f", :tEH, "?"
1408
+ end
1409
+
1410
+ def test_question_ws_backslashed__18
1411
+ setup_lexer 18
1412
+
1413
+ @lex.state = :expr_beg
1414
+ assert_scanned "?\\ ", :tINTEGER, 32
1415
+ @lex.state = :expr_beg
1416
+ assert_scanned "?\\n", :tINTEGER, 10
1417
+ @lex.state = :expr_beg
1418
+ assert_scanned "?\\t", :tINTEGER, 9
1419
+ @lex.state = :expr_beg
1420
+ assert_scanned "?\\v", :tINTEGER, 11
1421
+ @lex.state = :expr_beg
1422
+ assert_scanned "?\\r", :tINTEGER, 13
1423
+ @lex.state = :expr_beg
1424
+ assert_scanned "?\\f", :tINTEGER, 12
1425
+ end
1426
+
1427
+ def test_question_ws_backslashed__19
1428
+ setup_lexer 19
1429
+
1430
+ @lex.state = :expr_beg
1431
+ assert_scanned "?\\ ", :tCHARACTER, " "
1432
+ @lex.state = :expr_beg
1433
+ assert_scanned "?\\n", :tCHARACTER, "\n"
1434
+ @lex.state = :expr_beg
1435
+ assert_scanned "?\\t", :tCHARACTER, "\t"
1436
+ @lex.state = :expr_beg
1437
+ assert_scanned "?\\v", :tCHARACTER, "\v"
1438
+ @lex.state = :expr_beg
1439
+ assert_scanned "?\\r", :tCHARACTER, "\r"
1440
+ @lex.state = :expr_beg
1441
+ assert_scanned "?\\f", :tCHARACTER, "\f"
1442
+ end
1443
+
1444
+ def test_rbracket
1445
+ assert_scanned "]", :tRBRACK, "]"
1446
+ end
1447
+
1448
+ def test_rcurly
1449
+ assert_scanned "}", :tRCURLY, "}"
1450
+ end
1451
+
1452
+ def test_regexp
1453
+ assert_scanned("/regexp/",
1454
+ :tREGEXP_BEG, "/",
1455
+ :tSTRING_CONTENT, "regexp",
1456
+ :tSTRING_END, "/",
1457
+ :tREGEXP_OPT, "")
1458
+ end
1459
+
1460
+ def test_regexp_ambiguous
1461
+ assert_scanned("method /regexp/",
1462
+ :tIDENTIFIER, "method",
1463
+ :tREGEXP_BEG, "/",
1464
+ :tSTRING_CONTENT, "regexp",
1465
+ :tSTRING_END, "/",
1466
+ :tREGEXP_OPT, "")
1467
+ end
1468
+
1469
+ def test_regexp_bad
1470
+ refute_scanned("/.*/xyz",
1471
+ :tREGEXP_BEG, "/",
1472
+ :tSTRING_CONTENT, ".*",
1473
+ :tSTRING_END, "/")
1474
+ end
1475
+
1476
+ def test_regexp_escape_C
1477
+ assert_scanned('/regex\\C-x/',
1478
+ :tREGEXP_BEG, "/",
1479
+ :tSTRING_CONTENT, "regex\\C-x",
1480
+ :tSTRING_END, "/",
1481
+ :tREGEXP_OPT, "")
1482
+ end
1483
+
1484
+ def test_regexp_escape_C_M
1485
+ assert_scanned('/regex\\C-\\M-x/',
1486
+ :tREGEXP_BEG, "/",
1487
+ :tSTRING_CONTENT, "regex\\C-\\M-x",
1488
+ :tSTRING_END, "/",
1489
+ :tREGEXP_OPT, "")
1490
+ end
1491
+
1492
+ def test_regexp_escape_C_M_craaaazy
1493
+ assert_scanned("/regex\\C-\\\n\\M-x/",
1494
+ :tREGEXP_BEG, "/",
1495
+ :tSTRING_CONTENT, "regex\\C-\\M-x",
1496
+ :tSTRING_END, "/",
1497
+ :tREGEXP_OPT, "")
1498
+ end
1499
+
1500
+ def test_regexp_escape_C_bad_dash
1501
+ refute_scanned '/regex\\Cx/', :tREGEXP_BEG, "/"
1502
+ end
1503
+
1504
+ def test_regexp_escape_C_bad_dash_eos
1505
+ refute_scanned '/regex\\C-/', :tREGEXP_BEG, "/"
1506
+ end
1507
+
1508
+ def test_regexp_escape_C_bad_dash_eos2
1509
+ refute_scanned '/regex\\C-', :tREGEXP_BEG, "/"
1510
+ end
1511
+
1512
+ def test_regexp_escape_C_bad_eos
1513
+ refute_scanned '/regex\\C/', :tREGEXP_BEG, "/"
1514
+ end
1515
+
1516
+ def test_regexp_escape_C_bad_eos2
1517
+ refute_scanned '/regex\\c', :tREGEXP_BEG, "/"
1518
+ end
1519
+
1520
+ def test_regexp_escape_M
1521
+ assert_scanned('/regex\\M-x/',
1522
+ :tREGEXP_BEG, "/",
1523
+ :tSTRING_CONTENT, "regex\\M-x",
1524
+ :tSTRING_END, "/",
1525
+ :tREGEXP_OPT, "")
1526
+ end
1527
+
1528
+ def test_regexp_escape_M_C
1529
+ assert_scanned('/regex\\M-\\C-x/',
1530
+ :tREGEXP_BEG, "/",
1531
+ :tSTRING_CONTENT, "regex\\M-\\C-x",
1532
+ :tSTRING_END, "/",
1533
+ :tREGEXP_OPT, "")
1534
+ end
1535
+
1536
+ def test_regexp_escape_M_bad_dash
1537
+ refute_scanned '/regex\\Mx/', :tREGEXP_BEG, "/"
1538
+ end
1539
+
1540
+ def test_regexp_escape_M_bad_dash_eos
1541
+ refute_scanned '/regex\\M-/', :tREGEXP_BEG, "/"
1542
+ end
1543
+
1544
+ def test_regexp_escape_M_bad_dash_eos2
1545
+ refute_scanned '/regex\\M-', :tREGEXP_BEG, "/"
1546
+ end
1547
+
1548
+ def test_regexp_escape_M_bad_eos
1549
+ refute_scanned '/regex\\M/', :tREGEXP_BEG, "/"
1550
+ end
1551
+
1552
+ def test_regexp_escape_backslash_slash
1553
+ assert_scanned('/\\//',
1554
+ :tREGEXP_BEG, "/",
1555
+ :tSTRING_CONTENT, '/',
1556
+ :tSTRING_END, "/",
1557
+ :tREGEXP_OPT, "")
1558
+ end
1559
+
1560
+ def test_regexp_escape_backslash_terminator
1561
+ assert_scanned('%r%blah\\%blah%',
1562
+ :tREGEXP_BEG, "%r%",
1563
+ :tSTRING_CONTENT, "blah%blah",
1564
+ :tSTRING_END, "%",
1565
+ :tREGEXP_OPT, "")
1566
+ end
1567
+
1568
+ def test_regexp_escape_backslash_terminator_meta1
1569
+ assert_scanned('%r{blah\\}blah}',
1570
+ :tREGEXP_BEG, "%r{",
1571
+ :tSTRING_CONTENT, "blah}blah",
1572
+ :tSTRING_END, "}",
1573
+ :tREGEXP_OPT, "")
1574
+ end
1575
+
1576
+ def test_regexp_escape_backslash_terminator_meta2
1577
+ assert_scanned('%r/blah\\/blah/',
1578
+ :tREGEXP_BEG, "%r/",
1579
+ :tSTRING_CONTENT, "blah/blah",
1580
+ :tSTRING_END, "/",
1581
+ :tREGEXP_OPT, "")
1582
+ end
1583
+
1584
+ def test_regexp_escape_backslash_terminator_meta3
1585
+ assert_scanned('%r/blah\\%blah/',
1586
+ :tREGEXP_BEG, "%r/",
1587
+ :tSTRING_CONTENT, "blah\\%blah",
1588
+ :tSTRING_END, "/",
1589
+ :tREGEXP_OPT, "")
1590
+ end
1591
+
1592
+ def test_regexp_escape_bad_eos
1593
+ refute_scanned '/regex\\', :tREGEXP_BEG, "/"
1594
+ end
1595
+
1596
+ def test_regexp_escape_bs
1597
+ assert_scanned('/regex\\\\regex/',
1598
+ :tREGEXP_BEG, "/",
1599
+ :tSTRING_CONTENT, "regex\\\\regex",
1600
+ :tSTRING_END, "/",
1601
+ :tREGEXP_OPT, "")
1602
+ end
1603
+
1604
+ def test_regexp_escape_c
1605
+ assert_scanned('/regex\\cxxx/',
1606
+ :tREGEXP_BEG, "/",
1607
+ :tSTRING_CONTENT, "regex\\cxxx",
1608
+ :tSTRING_END, "/",
1609
+ :tREGEXP_OPT, "")
1610
+ end
1611
+
1612
+ def test_regexp_escape_c_backslash
1613
+ assert_scanned('/regex\\c\\n/',
1614
+ :tREGEXP_BEG, "/",
1615
+ :tSTRING_CONTENT, "regex\\c\\n",
1616
+ :tSTRING_END, "/",
1617
+ :tREGEXP_OPT, "")
1618
+ end
1619
+
1620
+ def test_regexp_escape_chars
1621
+ assert_scanned('/re\\tge\\nxp/',
1622
+ :tREGEXP_BEG, "/",
1623
+ :tSTRING_CONTENT, "re\\tge\\nxp",
1624
+ :tSTRING_END, "/",
1625
+ :tREGEXP_OPT, "")
1626
+ end
1627
+
1628
+ def test_regexp_escape_double_backslash
1629
+ assert_scanned('/[\\/\\\\]$/',
1630
+ :tREGEXP_BEG, "/",
1631
+ :tSTRING_CONTENT,'[/\\\\]$',
1632
+ :tSTRING_END, "/",
1633
+ :tREGEXP_OPT, "")
1634
+ end
1635
+
1636
+ def test_regexp_escape_hex
1637
+ assert_scanned('/regex\\x61xp/',
1638
+ :tREGEXP_BEG, "/",
1639
+ :tSTRING_CONTENT, "regex\\x61xp",
1640
+ :tSTRING_END, "/",
1641
+ :tREGEXP_OPT, "")
1642
+ end
1643
+
1644
+ def test_regexp_escape_hex_bad
1645
+ refute_scanned '/regex\\xzxp/', :tREGEXP_BEG, "/"
1646
+ end
1647
+
1648
+ def test_regexp_escape_hex_one
1649
+ assert_scanned('/^[\\xd\\xa]{2}/on',
1650
+ :tREGEXP_BEG, '/',
1651
+ :tSTRING_CONTENT, '^[\\xd\\xa]{2}',
1652
+ :tSTRING_END, "/",
1653
+ :tREGEXP_OPT, 'on')
1654
+ end
1655
+
1656
+ def test_regexp_escape_oct1
1657
+ assert_scanned('/regex\\0xp/',
1658
+ :tREGEXP_BEG, "/",
1659
+ :tSTRING_CONTENT, "regex\\0xp",
1660
+ :tSTRING_END, "/",
1661
+ :tREGEXP_OPT, "")
1662
+ end
1663
+
1664
+ def test_regexp_escape_oct2
1665
+ assert_scanned('/regex\\07xp/',
1666
+ :tREGEXP_BEG, "/",
1667
+ :tSTRING_CONTENT, "regex\\07xp",
1668
+ :tSTRING_END, "/",
1669
+ :tREGEXP_OPT, "")
1670
+ end
1671
+
1672
+ def test_regexp_escape_oct3
1673
+ assert_scanned('/regex\\10142/',
1674
+ :tREGEXP_BEG, "/",
1675
+ :tSTRING_CONTENT, "regex\\10142",
1676
+ :tSTRING_END, "/",
1677
+ :tREGEXP_OPT, "")
1678
+ end
1679
+
1680
+ def test_regexp_escape_return
1681
+ assert_scanned("/regex\\\nregex/",
1682
+ :tREGEXP_BEG, "/",
1683
+ :tSTRING_CONTENT, "regexregex",
1684
+ :tSTRING_END, "/",
1685
+ :tREGEXP_OPT, "")
1686
+ end
1687
+
1688
+ def test_regexp_nm
1689
+ assert_scanned("/.*/nm",
1690
+ :tREGEXP_BEG, "/",
1691
+ :tSTRING_CONTENT, ".*",
1692
+ :tSTRING_END, "/",
1693
+ :tREGEXP_OPT, "nm")
1694
+ end
1695
+
1696
+ def test_rparen
1697
+ assert_scanned ")", :tRPAREN, ")"
1698
+ end
1699
+
1700
+ def test_rshft
1701
+ assert_scanned("a >> 2",
1702
+ :tIDENTIFIER, "a",
1703
+ :tRSHFT, ">>",
1704
+ :tINTEGER, 2)
1705
+ end
1706
+
1707
+ def test_rshft_equals
1708
+ assert_scanned("a >>= 2",
1709
+ :tIDENTIFIER, "a",
1710
+ :tOP_ASGN, ">>",
1711
+ :tINTEGER, 2)
1712
+ end
1713
+
1714
+ def test_star
1715
+ assert_scanned("a * ",
1716
+ :tIDENTIFIER, "a",
1717
+ :tSTAR2, "*")
1718
+
1719
+ assert_equal :expr_beg, @lex.state
1720
+ end
1721
+
1722
+ def test_star2
1723
+ assert_scanned("a ** ",
1724
+ :tIDENTIFIER, "a",
1725
+ :tPOW, "**")
1726
+
1727
+ assert_equal :expr_beg, @lex.state
1728
+ end
1729
+
1730
+ def test_star2_equals
1731
+ assert_scanned("a **= ",
1732
+ :tIDENTIFIER, "a",
1733
+ :tOP_ASGN, "**")
1734
+
1735
+ assert_equal :expr_beg, @lex.state
1736
+ end
1737
+
1738
+ def test_star2_beg
1739
+ assert_scanned("** ",
1740
+ :tDSTAR, "**")
1741
+
1742
+ assert_equal :expr_beg, @lex.state
1743
+ end
1744
+
1745
+ def test_star_arg
1746
+ @lex.state = :expr_arg
1747
+
1748
+ assert_scanned(" *a",
1749
+ :tSTAR, "*",
1750
+ :tIDENTIFIER, "a")
1751
+
1752
+ assert_equal :expr_arg, @lex.state
1753
+ end
1754
+
1755
+ def test_star_arg_beg
1756
+ @lex.state = :expr_beg
1757
+
1758
+ assert_scanned("*a",
1759
+ :tSTAR, "*",
1760
+ :tIDENTIFIER, "a")
1761
+
1762
+ assert_equal :expr_arg, @lex.state
1763
+ end
1764
+
1765
+ def test_star_arg_beg_fname
1766
+ @lex.state = :expr_fname
1767
+
1768
+ assert_scanned("*a",
1769
+ :tSTAR2, "*",
1770
+ :tIDENTIFIER, "a")
1771
+
1772
+ assert_equal :expr_arg, @lex.state
1773
+ end
1774
+
1775
+ def test_star_equals
1776
+ assert_scanned("a *= ",
1777
+ :tIDENTIFIER, "a",
1778
+ :tOP_ASGN, "*")
1779
+
1780
+ assert_equal :expr_beg, @lex.state
1781
+ end
1782
+
1783
+ def test_string_bad_eos
1784
+ refute_scanned('%',
1785
+ :tSTRING_BEG, '%')
1786
+ end
1787
+
1788
+ def test_string_bad_eos_quote
1789
+ refute_scanned('%{nest',
1790
+ :tSTRING_BEG, '%}')
1791
+ end
1792
+
1793
+ def test_string_double
1794
+ assert_scanned('"string"',
1795
+ :tSTRING, "string")
1796
+ end
1797
+
1798
+ def test_string_double_escape_C
1799
+ assert_scanned('"\\C-a"',
1800
+ :tSTRING, "\001")
1801
+ end
1802
+
1803
+ def test_string_double_escape_C_backslash
1804
+ assert_scanned('"\\C-\\\\"',
1805
+ :tSTRING, "\034")
1806
+ end
1807
+
1808
+ def test_string_double_escape_C_escape
1809
+ assert_scanned('"\\C-\\M-a"',
1810
+ :tSTRING, "\201")
1811
+ end
1812
+
1813
+ def test_string_double_escape_C_question
1814
+ assert_scanned('"\\C-?"',
1815
+ :tSTRING, "\177")
1816
+ end
1817
+
1818
+ def test_string_double_escape_M
1819
+ assert_scanned('"\\M-a"',
1820
+ :tSTRING, "\341")
1821
+ end
1822
+
1823
+ def test_string_double_escape_M_backslash
1824
+ assert_scanned('"\\M-\\\\"',
1825
+ :tSTRING, "\334")
1826
+ end
1827
+
1828
+ def test_string_double_escape_M_escape
1829
+ assert_scanned('"\\M-\\C-a"',
1830
+ :tSTRING, "\201")
1831
+ end
1832
+
1833
+ def test_string_double_escape_bs1
1834
+ assert_scanned('"a\\a\\a"',
1835
+ :tSTRING, "a\a\a")
1836
+ end
1837
+
1838
+ def test_string_double_escape_bs2
1839
+ assert_scanned('"a\\\\a"',
1840
+ :tSTRING, "a\\a")
1841
+ end
1842
+
1843
+ def test_string_double_escape_c
1844
+ assert_scanned('"\\ca"',
1845
+ :tSTRING, "\001")
1846
+ end
1847
+
1848
+ def test_string_double_escape_c_escape
1849
+ assert_scanned('"\\c\\M-a"',
1850
+ :tSTRING, "\201")
1851
+ end
1852
+
1853
+ def test_string_double_escape_c_question
1854
+ assert_scanned('"\\c?"',
1855
+ :tSTRING, "\177")
1856
+ end
1857
+
1858
+ def test_string_double_escape_chars
1859
+ assert_scanned('"s\\tri\\ng"',
1860
+ :tSTRING, "s\tri\ng")
1861
+ end
1862
+
1863
+ def test_string_double_escape_hex
1864
+ assert_scanned('"n = \\x61\\x62\\x63"',
1865
+ :tSTRING, "n = abc")
1866
+ end
1867
+
1868
+ def test_string_double_escape_octal
1869
+ assert_scanned('"n = \\101\\102\\103"',
1870
+ :tSTRING, "n = ABC")
1871
+ end
1872
+
1873
+ def test_string_double_escape_octal_wrap
1874
+ assert_scanned('"\\753"',
1875
+ :tSTRING, "\xEB")
1876
+ end
1877
+
1878
+ def test_string_double_interp
1879
+ assert_scanned("\"blah #x a \#@a b \#$b c \#{3} # \"",
1880
+ :tSTRING_BEG, "\"",
1881
+ :tSTRING_CONTENT, "blah #x a ",
1882
+ :tSTRING_DVAR, nil,
1883
+ :tIVAR, "@a",
1884
+ :tSTRING_CONTENT, " b ",
1885
+ :tSTRING_DVAR, nil,
1886
+ :tGVAR, "$b",
1887
+ :tSTRING_CONTENT, " c ",
1888
+ :tSTRING_DBEG, '#{',
1889
+ :tINTEGER, 3,
1890
+ :tRCURLY, "}",
1891
+ :tSTRING_CONTENT, " # ",
1892
+ :tSTRING_END, "\"")
1893
+ end
1894
+
1895
+ def test_string_double_interp_label
1896
+ assert_scanned('"#{foo:bar}"',
1897
+ :tSTRING_BEG, '"',
1898
+ :tSTRING_DBEG, '#{',
1899
+ :tIDENTIFIER, 'foo',
1900
+ :tSYMBOL, 'bar',
1901
+ :tRCURLY, '}',
1902
+ :tSTRING_END, '"')
1903
+ end
1904
+
1905
+ def test_string_double_nested_curlies
1906
+ assert_scanned('%{nest{one{two}one}nest}',
1907
+ :tSTRING_BEG, '%{',
1908
+ :tSTRING_CONTENT, "nest{one{two}one}nest",
1909
+ :tSTRING_END, '}')
1910
+ end
1911
+
1912
+ def test_string_double_no_interp
1913
+ assert_scanned("\"# blah\"", # pound first
1914
+ :tSTRING, "# blah")
1915
+
1916
+ assert_scanned("\"blah # blah\"", # pound not first
1917
+ :tSTRING, "blah # blah")
1918
+ end
1919
+
1920
+ def test_string_escape_x_single
1921
+ assert_scanned('"\\x0"',
1922
+ :tSTRING, "\000")
1923
+ end
1924
+
1925
+ def test_string_pct_Q
1926
+ assert_scanned("%Q[s1 s2]",
1927
+ :tSTRING_BEG, '%Q[',
1928
+ :tSTRING_CONTENT, "s1 s2",
1929
+ :tSTRING_END, ']')
1930
+ end
1931
+
1932
+ def test_string_pct_W
1933
+ assert_scanned("%W[s1 s2\ns3]",
1934
+ :tWORDS_BEG, "%W[",
1935
+ :tSTRING_CONTENT, "s1",
1936
+ :tSPACE, nil,
1937
+ :tSTRING_CONTENT, "s2",
1938
+ :tSPACE, nil,
1939
+ :tSTRING_CONTENT, "s3",
1940
+ :tSPACE, nil,
1941
+ :tSTRING_END, ']')
1942
+ end
1943
+
1944
+ def test_string_pct_W_bs_nl
1945
+ assert_scanned("%W[s1 \\\ns2]",
1946
+ :tWORDS_BEG, "%W[",
1947
+ :tSTRING_CONTENT, "s1",
1948
+ :tSPACE, nil,
1949
+ :tSTRING_CONTENT, "\ns2",
1950
+ :tSPACE, nil,
1951
+ :tSTRING_END, ']')
1952
+ end
1953
+
1954
+ def test_string_pct_W_interp
1955
+ assert_scanned('%W[#{1}#{2} #@a]',
1956
+ :tWORDS_BEG, '%W[',
1957
+ :tSTRING_DBEG, '#{',
1958
+ :tINTEGER, 1,
1959
+ :tRCURLY, '}',
1960
+ :tSTRING_DBEG, '#{',
1961
+ :tINTEGER, 2,
1962
+ :tRCURLY, '}',
1963
+ :tSPACE, nil,
1964
+ :tSTRING_DVAR, nil,
1965
+ :tIVAR, '@a',
1966
+ :tSPACE, nil,
1967
+ :tSTRING_END, ']')
1968
+ end
1969
+
1970
+ def test_string_pct_I
1971
+ assert_scanned("%I(s1 s2)",
1972
+ :tSYMBOLS_BEG, "%I(",
1973
+ :tSTRING_CONTENT, "s1",
1974
+ :tSPACE, nil,
1975
+ :tSTRING_CONTENT, "s2",
1976
+ :tSPACE, nil,
1977
+ :tSTRING_END, ')')
1978
+ end
1979
+
1980
+ def test_string_pct_angle
1981
+ assert_scanned("%<blah>",
1982
+ :tSTRING_BEG, '%<',
1983
+ :tSTRING_CONTENT, "blah",
1984
+ :tSTRING_END, '>')
1985
+ end
1986
+
1987
+ def test_string_pct_pct
1988
+ assert_scanned("%%blah%",
1989
+ :tSTRING_BEG, '%',
1990
+ :tSTRING_CONTENT, "blah",
1991
+ :tSTRING_END, '%')
1992
+ end
1993
+
1994
+ def test_string_pct_w
1995
+ assert_scanned("%w[s1 s2 ]",
1996
+ :tQWORDS_BEG, "%w[",
1997
+ :tSTRING_CONTENT, "s1",
1998
+ :tSPACE, nil,
1999
+ :tSTRING_CONTENT, "s2",
2000
+ :tSPACE, nil,
2001
+ :tSTRING_END, "]")
2002
+ end
2003
+
2004
+ def test_string_pct_w_incomplete
2005
+ refute_scanned("%w[s1 ",
2006
+ :tQWORDS_BEG, "%w[",
2007
+ :tSTRING_CONTENT, "s1",
2008
+ :tSPACE, nil)
2009
+ end
2010
+
2011
+ def test_string_pct_w_bs_nl
2012
+ assert_scanned("%w[s1 \\\ns2]",
2013
+ :tQWORDS_BEG, "%w[",
2014
+ :tSTRING_CONTENT, "s1",
2015
+ :tSPACE, nil,
2016
+ :tSTRING_CONTENT, "\ns2",
2017
+ :tSPACE, nil,
2018
+ :tSTRING_END, ']')
2019
+ end
2020
+
2021
+ def test_string_pct_w_bs_sp
2022
+ assert_scanned("%w[s\\ 1 s\\ 2]",
2023
+ :tQWORDS_BEG, "%w[",
2024
+ :tSTRING_CONTENT, "s 1",
2025
+ :tSPACE, nil,
2026
+ :tSTRING_CONTENT, "s 2",
2027
+ :tSPACE, nil,
2028
+ :tSTRING_END, ']')
2029
+ end
2030
+
2031
+ def test_string_pct_w_tab
2032
+ assert_scanned("%w[abc\tdef]",
2033
+ :tQWORDS_BEG, "%w[",
2034
+ :tSTRING_CONTENT, "abc",
2035
+ :tSPACE, nil,
2036
+ :tSTRING_CONTENT, "def",
2037
+ :tSPACE, nil,
2038
+ :tSTRING_END, ']')
2039
+ end
2040
+
2041
+ def test_string_pct_i
2042
+ assert_scanned("%i(s1 s2)",
2043
+ :tQSYMBOLS_BEG, "%i(",
2044
+ :tSTRING_CONTENT, "s1",
2045
+ :tSPACE, nil,
2046
+ :tSTRING_CONTENT, "s2",
2047
+ :tSPACE, nil,
2048
+ :tSTRING_END, ')')
2049
+ end
2050
+
2051
+ def test_string_single
2052
+ assert_scanned("'string'",
2053
+ :tSTRING, "string")
2054
+ end
2055
+
2056
+ def test_string_single_escape_chars
2057
+ assert_scanned("'s\\tri\\ng'",
2058
+ :tSTRING, "s\\tri\\ng")
2059
+ end
2060
+
2061
+ def test_string_single_nl
2062
+ assert_scanned("'blah\\\nblah'",
2063
+ :tSTRING_BEG, "'",
2064
+ :tSTRING_CONTENT, "blah\\\n",
2065
+ :tSTRING_CONTENT, "blah",
2066
+ :tSTRING_END, "'")
2067
+ end
2068
+
2069
+ def test_symbol
2070
+ assert_scanned(":symbol",
2071
+ :tSYMBOL, "symbol")
2072
+ end
2073
+
2074
+ def test_symbol_double
2075
+ assert_scanned(":\"symbol\"",
2076
+ :tSYMBEG, ":\"",
2077
+ :tSTRING_CONTENT, "symbol",
2078
+ :tSTRING_END, "\"")
2079
+ end
2080
+
2081
+ def test_symbol_single
2082
+ assert_scanned(":'symbol'",
2083
+ :tSYMBEG, ":'",
2084
+ :tSTRING_CONTENT, "symbol",
2085
+ :tSTRING_END, "'")
2086
+ end
2087
+
2088
+ def test_ternary
2089
+ assert_scanned("a ? b : c",
2090
+ :tIDENTIFIER, "a",
2091
+ :tEH, "?",
2092
+ :tIDENTIFIER, "b",
2093
+ :tCOLON, ":",
2094
+ :tIDENTIFIER, "c")
2095
+
2096
+ assert_scanned("a ?b : c",
2097
+ :tIDENTIFIER, "a",
2098
+ :tINTEGER, 98,
2099
+ :tCOLON, ":",
2100
+ :tIDENTIFIER, "c")
2101
+
2102
+ assert_scanned("a ?bb : c", # GAH! MATZ!!!
2103
+ :tIDENTIFIER, "a",
2104
+ :tEH, "?",
2105
+ :tIDENTIFIER, "bb",
2106
+ :tCOLON, ":",
2107
+ :tIDENTIFIER, "c")
2108
+
2109
+ assert_scanned("42 ?", # 42 forces expr_end
2110
+ :tINTEGER, 42,
2111
+ :tEH, "?")
2112
+ end
2113
+
2114
+ def test_tilde
2115
+ assert_scanned "~", :tTILDE, "~"
2116
+ end
2117
+
2118
+ def test_tilde_unary
2119
+ @lex.state = :expr_fname
2120
+ assert_scanned "~@", :tTILDE, "~@"
2121
+ end
2122
+
2123
+ def test_uminus
2124
+ assert_scanned("-blah",
2125
+ :tUMINUS, "-",
2126
+ :tIDENTIFIER, "blah")
2127
+ end
2128
+
2129
+ def test_underscore
2130
+ assert_scanned("_var", :tIDENTIFIER, "_var")
2131
+ end
2132
+
2133
+ def test_underscore_end
2134
+ assert_scanned("__END__\n")
2135
+ assert_scanned("__END__")
2136
+ assert_scanned("__END__ foo",
2137
+ :tIDENTIFIER, '__END__',
2138
+ :tIDENTIFIER, 'foo')
2139
+ assert_scanned("__END__\rfoo",
2140
+ :tIDENTIFIER, '__END__',
2141
+ :tIDENTIFIER, 'foo')
2142
+ end
2143
+
2144
+ def test_uplus
2145
+ assert_scanned("+blah",
2146
+ :tUPLUS, "+",
2147
+ :tIDENTIFIER, "blah")
2148
+ end
2149
+
2150
+ def test_if_unless_mod
2151
+ assert_scanned("return if true unless false",
2152
+ :kRETURN, "return",
2153
+ :kIF_MOD, "if",
2154
+ :kTRUE, "true",
2155
+ :kUNLESS_MOD, "unless",
2156
+ :kFALSE, "false")
2157
+ end
2158
+
2159
+ def test_if_stmt
2160
+ assert_scanned("if true\n return end",
2161
+ :kIF, "if",
2162
+ :kTRUE, "true",
2163
+ :tNL, nil,
2164
+ :kRETURN, "return",
2165
+ :kEND, "end")
2166
+ end
2167
+
2168
+ def test_sclass_label
2169
+ setup_lexer 20
2170
+ assert_scanned("class << a:b",
2171
+ :kCLASS, 'class',
2172
+ :tLSHFT, '<<',
2173
+ :tIDENTIFIER, 'a',
2174
+ :tSYMBOL, 'b')
2175
+ end
2176
+
2177
+ def test_static_env
2178
+ env = Parser::StaticEnvironment.new
2179
+ env.declare "a"
2180
+
2181
+ @lex.static_env = env
2182
+ assert_scanned("a [42]",
2183
+ :tIDENTIFIER, "a",
2184
+ :tLBRACK2, "[",
2185
+ :tINTEGER, 42,
2186
+ :tRBRACK, "]")
2187
+ end
2188
+
2189
+ def test_int_suffix
2190
+ [18, 19, 20].each do |version|
2191
+ setup_lexer version
2192
+
2193
+ assert_scanned("42r",
2194
+ :tINTEGER, 42,
2195
+ :tIDENTIFIER, 'r')
2196
+
2197
+ assert_scanned("42if",
2198
+ :tINTEGER, 42,
2199
+ :kIF_MOD, 'if')
2200
+ end
2201
+
2202
+ setup_lexer 21
2203
+
2204
+ assert_scanned("42r", :tRATIONAL, Rational(42))
2205
+ assert_scanned("42i", :tIMAGINARY, Complex(0, 42))
2206
+ assert_scanned("42ri", :tIMAGINARY, Complex(0, Rational(42)))
2207
+ end
2208
+
2209
+ def test_float_suffix
2210
+ [18, 19, 20].each do |version|
2211
+ setup_lexer version
2212
+
2213
+ assert_scanned("42.1r",
2214
+ :tFLOAT, 42.1,
2215
+ :tIDENTIFIER, 'r')
2216
+
2217
+ assert_scanned("42.1if",
2218
+ :tFLOAT, 42.1,
2219
+ :kIF_MOD, 'if')
2220
+
2221
+ assert_scanned("1e1r",
2222
+ :tFLOAT, 1e1,
2223
+ :tIDENTIFIER, 'r')
2224
+ end
2225
+
2226
+ begin
2227
+ # Feature-check.
2228
+ Rational("10")
2229
+
2230
+ setup_lexer 21
2231
+
2232
+ assert_scanned("42.1r", :tRATIONAL, Rational(421, 10))
2233
+ assert_scanned("42.1i", :tIMAGINARY, Complex(0, 42.1))
2234
+ assert_scanned("42.1ri", :tIMAGINARY, Complex(0, Rational(421, 10)))
2235
+ assert_scanned("42.1ir",
2236
+ :tIMAGINARY, Complex(0, 42.1),
2237
+ :tIDENTIFIER, 'r')
2238
+
2239
+ assert_scanned("1e1i", :tIMAGINARY, Complex(0, 1e1))
2240
+ assert_scanned("1e1r",
2241
+ :tFLOAT, 1e1,
2242
+ :tIDENTIFIER, 'r')
2243
+ assert_scanned("1e1ri",
2244
+ :tFLOAT, 1e1,
2245
+ :tIDENTIFIER, 'ri')
2246
+ assert_scanned("1e1ir",
2247
+ :tIMAGINARY, Complex(0, 1e1),
2248
+ :tIDENTIFIER, 'r')
2249
+ rescue NoMethodError
2250
+ # Ruby not modern enough
2251
+ end
2252
+ end
2253
+
2254
+ #
2255
+ # Tests for whitespace.
2256
+ #
2257
+
2258
+ def test_whitespace_fname
2259
+ @lex.state = :expr_fname
2260
+ assert_scanned('class',
2261
+ :kCLASS, 'class')
2262
+
2263
+ @lex.state = :expr_fname
2264
+ assert_scanned(' class',
2265
+ :kCLASS, 'class')
2266
+
2267
+ @lex.state = :expr_fname
2268
+ assert_scanned("\nclass",
2269
+ :kCLASS, 'class')
2270
+
2271
+ @lex.state = :expr_fname
2272
+ assert_scanned("\\\nclass",
2273
+ :kCLASS, 'class')
2274
+
2275
+ @lex.state = :expr_fname
2276
+ assert_scanned("#foo\nclass",
2277
+ :kCLASS, 'class')
2278
+ end
2279
+
2280
+ def test_whitespace_endfn
2281
+ setup_lexer(21)
2282
+
2283
+ @lex.state = :expr_endfn
2284
+ assert_scanned('foo:',
2285
+ :tLABEL, 'foo')
2286
+
2287
+ @lex.state = :expr_endfn
2288
+ assert_scanned(' foo:',
2289
+ :tLABEL, 'foo')
2290
+
2291
+ @lex.state = :expr_endfn
2292
+ assert_scanned("\nfoo:",
2293
+ :tNL, nil,
2294
+ :tIDENTIFIER, 'foo',
2295
+ :tCOLON, ':')
2296
+
2297
+ @lex.state = :expr_endfn
2298
+ assert_scanned("\nfoo: ",
2299
+ :tNL, nil,
2300
+ :tIDENTIFIER, 'foo',
2301
+ :tCOLON, ':')
2302
+
2303
+ @lex.state = :expr_endfn
2304
+ assert_scanned("\\\nfoo:",
2305
+ :tLABEL, 'foo')
2306
+
2307
+ @lex.state = :expr_endfn
2308
+ assert_scanned("#foo\nfoo:",
2309
+ :tNL, nil,
2310
+ :tIDENTIFIER, 'foo',
2311
+ :tCOLON, ':')
2312
+
2313
+ @lex.state = :expr_endfn
2314
+ assert_scanned("#foo\nfoo: ",
2315
+ :tNL, nil,
2316
+ :tIDENTIFIER, 'foo',
2317
+ :tCOLON, ':')
2318
+ end
2319
+
2320
+ def test_whitespace_dot
2321
+ @lex.state = :expr_dot
2322
+ assert_scanned('class',
2323
+ :tIDENTIFIER, 'class')
2324
+
2325
+ @lex.state = :expr_dot
2326
+ assert_scanned(' class',
2327
+ :tIDENTIFIER, 'class')
2328
+
2329
+ @lex.state = :expr_dot
2330
+ assert_scanned("\nclass",
2331
+ :tIDENTIFIER, 'class')
2332
+
2333
+ @lex.state = :expr_dot
2334
+ assert_scanned("\\\nclass",
2335
+ :tIDENTIFIER, 'class')
2336
+
2337
+ @lex.state = :expr_dot
2338
+ assert_scanned("#foo\nclass",
2339
+ :tIDENTIFIER, 'class')
2340
+ end
2341
+
2342
+ def test_whitespace_arg
2343
+ @lex.state = :expr_arg
2344
+ assert_scanned('+',
2345
+ :tPLUS, '+')
2346
+
2347
+ @lex.state = :expr_arg
2348
+ assert_scanned(' +',
2349
+ :tUPLUS, '+')
2350
+
2351
+ @lex.state = :expr_arg
2352
+ assert_scanned("\n+",
2353
+ :tNL, nil,
2354
+ :tUPLUS, '+')
2355
+
2356
+ @lex.state = :expr_arg
2357
+ assert_scanned("\\\n+",
2358
+ :tUPLUS, '+')
2359
+
2360
+ @lex.state = :expr_arg
2361
+ assert_scanned("\\\n +",
2362
+ :tUPLUS, '+')
2363
+
2364
+ @lex.state = :expr_arg
2365
+ assert_scanned("#foo\n+",
2366
+ :tNL, nil,
2367
+ :tUPLUS, '+')
2368
+ end
2369
+
2370
+ def test_whitespace_endarg
2371
+ @lex.state = :expr_endarg
2372
+ assert_scanned('{',
2373
+ :tLBRACE_ARG, '{')
2374
+
2375
+ @lex.state = :expr_endarg
2376
+ assert_scanned(' {',
2377
+ :tLBRACE_ARG, '{')
2378
+
2379
+ @lex.state = :expr_endarg
2380
+ assert_scanned("\n{",
2381
+ :tNL, nil,
2382
+ :tLBRACE, '{')
2383
+
2384
+ @lex.state = :expr_endarg
2385
+ assert_scanned("\\\n{",
2386
+ :tLBRACE_ARG, '{')
2387
+
2388
+ @lex.state = :expr_endarg
2389
+ assert_scanned("#foo\n{",
2390
+ :tNL, nil,
2391
+ :tLBRACE, '{')
2392
+ end
2393
+
2394
+ def test_whitespace_mid
2395
+ @lex.state = :expr_mid
2396
+ assert_scanned('+',
2397
+ :tUPLUS, '+')
2398
+
2399
+ @lex.state = :expr_mid
2400
+ assert_scanned(' +',
2401
+ :tUPLUS, '+')
2402
+
2403
+ @lex.state = :expr_mid
2404
+ assert_scanned("\n+",
2405
+ :tNL, nil,
2406
+ :tUPLUS, '+')
2407
+
2408
+ @lex.state = :expr_mid
2409
+ assert_scanned("\\\n+",
2410
+ :tUPLUS, '+')
2411
+
2412
+ @lex.state = :expr_mid
2413
+ assert_scanned("#foo\n+",
2414
+ :tNL, nil,
2415
+ :tUPLUS, '+')
2416
+ end
2417
+
2418
+ def test_whitespace_beg
2419
+ @lex.state = :expr_beg
2420
+ assert_scanned('+',
2421
+ :tUPLUS, '+')
2422
+
2423
+ @lex.state = :expr_beg
2424
+ assert_scanned(' +',
2425
+ :tUPLUS, '+')
2426
+
2427
+ @lex.state = :expr_beg
2428
+ assert_scanned("\n+",
2429
+ :tUPLUS, '+')
2430
+
2431
+ @lex.state = :expr_beg
2432
+ assert_scanned("\\\n+",
2433
+ :tUPLUS, '+')
2434
+
2435
+ @lex.state = :expr_beg
2436
+ assert_scanned("#foo\n+",
2437
+ :tUPLUS, '+')
2438
+ end
2439
+
2440
+ def test_whitespace_value
2441
+ setup_lexer(20)
2442
+
2443
+ @lex.state = :expr_value
2444
+ assert_scanned('a:b',
2445
+ :tIDENTIFIER, 'a',
2446
+ :tSYMBOL, 'b')
2447
+
2448
+ @lex.state = :expr_value
2449
+ assert_scanned(' a:b',
2450
+ :tIDENTIFIER, 'a',
2451
+ :tSYMBOL, 'b')
2452
+
2453
+ @lex.state = :expr_value
2454
+ assert_scanned("\na:b",
2455
+ :tIDENTIFIER, 'a',
2456
+ :tSYMBOL, 'b')
2457
+
2458
+ @lex.state = :expr_value
2459
+ assert_scanned("\\\na:b",
2460
+ :tIDENTIFIER, 'a',
2461
+ :tSYMBOL, 'b')
2462
+
2463
+ @lex.state = :expr_value
2464
+ assert_scanned("#foo\na:b",
2465
+ :tIDENTIFIER, 'a',
2466
+ :tSYMBOL, 'b')
2467
+ end
2468
+
2469
+ def test_whitespace_end
2470
+ @lex.state = :expr_end
2471
+ assert_scanned('+ 1',
2472
+ :tPLUS, '+',
2473
+ :tINTEGER, 1)
2474
+
2475
+ @lex.state = :expr_end
2476
+ assert_scanned(' + 1',
2477
+ :tPLUS, '+',
2478
+ :tINTEGER, 1)
2479
+
2480
+ @lex.state = :expr_end
2481
+ assert_scanned("\n+ 1",
2482
+ :tNL, nil,
2483
+ :tUPLUS, '+',
2484
+ :tINTEGER, 1)
2485
+
2486
+ @lex.state = :expr_end
2487
+ assert_scanned("\\\n+ 1",
2488
+ :tPLUS, '+',
2489
+ :tINTEGER, 1)
2490
+
2491
+ @lex.state = :expr_end
2492
+ assert_scanned("#foo\n+ 1",
2493
+ :tNL, nil,
2494
+ :tUPLUS, '+',
2495
+ :tINTEGER, 1)
2496
+ end
2497
+
2498
+ def test_whitespace_cr
2499
+ setup_lexer(20)
2500
+ assert_scanned("<<E\nfoo\nE\rO",
2501
+ :tSTRING_BEG, '<<"',
2502
+ :tSTRING_CONTENT, "foo\n",
2503
+ :tSTRING_END, 'E',
2504
+ :tNL, nil)
2505
+
2506
+ setup_lexer(21)
2507
+ refute_scanned("<<E\nfoo\nE\rO",
2508
+ :tSTRING_BEG, '<<"',
2509
+ :tSTRING_CONTENT, "foo\n")
2510
+ end
2511
+
2512
+ #
2513
+ # Tests for bugs.
2514
+ #
2515
+ # These tests should be moved from nursery and properly
2516
+ # categorized when it's clear how to do that.
2517
+ #
2518
+
2519
+ def test_bug_sclass_joined
2520
+ assert_scanned("class<<self",
2521
+ :kCLASS, "class",
2522
+ :tLSHFT, "<<",
2523
+ :kSELF, "self")
2524
+ end
2525
+
2526
+ def test_bug_const_expr_end
2527
+ assert_scanned("Option",
2528
+ :tCONSTANT, 'Option')
2529
+
2530
+ assert_equal :expr_cmdarg, @lex.state
2531
+ end
2532
+
2533
+ def test_bug_expr_beg_div
2534
+ @lex.state = :expr_beg
2535
+ assert_scanned("/=/",
2536
+ :tREGEXP_BEG, "/",
2537
+ :tSTRING_CONTENT, "=",
2538
+ :tSTRING_END, "/",
2539
+ :tREGEXP_OPT, "")
2540
+
2541
+ @lex.state = :expr_beg
2542
+ assert_scanned("/ = /",
2543
+ :tREGEXP_BEG, "/",
2544
+ :tSTRING_CONTENT, " = ",
2545
+ :tSTRING_END, "/",
2546
+ :tREGEXP_OPT, "")
2547
+ end
2548
+
2549
+ def test_bug_expr_beg_percent
2550
+ @lex.state = :expr_beg
2551
+ assert_scanned("%=foo=",
2552
+ :tSTRING_BEG, "%=",
2553
+ :tSTRING_CONTENT, 'foo',
2554
+ :tSTRING_END, "=")
2555
+
2556
+ @lex.state = :expr_beg
2557
+ assert_scanned("% = ",
2558
+ :tSTRING_BEG, "% ",
2559
+ :tSTRING_CONTENT, '=',
2560
+ :tSTRING_END, ' ')
2561
+ end
2562
+
2563
+ def test_bug_expr_beg_document
2564
+ @lex.state = :expr_beg
2565
+ assert_scanned(" \n=begin\n=end\nend",
2566
+ :kEND, "end")
2567
+
2568
+ end
2569
+
2570
+ def test_bug_expr_beg_number
2571
+ @lex.state = :expr_beg
2572
+ assert_scanned("86400_000_000",
2573
+ :tINTEGER, 86400_000_000)
2574
+ end
2575
+
2576
+ def test_bug_expr_beg_backspace_nl
2577
+ @lex.state = :expr_beg
2578
+ assert_scanned("\n/foo/",
2579
+ :tREGEXP_BEG, "/",
2580
+ :tSTRING_CONTENT, "foo",
2581
+ :tSTRING_END, "/",
2582
+ :tREGEXP_OPT, "")
2583
+ end
2584
+
2585
+ def test_bug_expr_beg_heredoc
2586
+ assert_scanned("<<EOL % [\nfoo\nEOL\n]",
2587
+ :tSTRING_BEG, '<<"',
2588
+ :tSTRING_CONTENT, "foo\n",
2589
+ :tSTRING_END, 'EOL',
2590
+ :tPERCENT, '%',
2591
+ :tLBRACK, '[',
2592
+ :tRBRACK, ']')
2593
+ end
2594
+
2595
+ def test_bug_expr_beg_fid
2596
+ assert_scanned("Rainbows!",
2597
+ :tFID, 'Rainbows!')
2598
+ end
2599
+
2600
+ def test_bug_expr_beg_rescue_assoc
2601
+ assert_scanned("rescue=>",
2602
+ :kRESCUE, 'rescue',
2603
+ :tASSOC, '=>')
2604
+ end
2605
+
2606
+ def test_bug_expr_arg_percent
2607
+ @lex.state = :expr_arg
2608
+ assert_scanned("%[",
2609
+ :tPERCENT, "%",
2610
+ :tLBRACK, "[")
2611
+
2612
+ @lex.state = :expr_arg
2613
+ assert_scanned("%=1",
2614
+ :tOP_ASGN, "%",
2615
+ :tINTEGER, 1)
2616
+
2617
+ @lex.state = :expr_arg
2618
+ assert_scanned(" %[1]",
2619
+ :tSTRING_BEG, "%[",
2620
+ :tSTRING_CONTENT, '1',
2621
+ :tSTRING_END, ']')
2622
+
2623
+ @lex.state = :expr_arg
2624
+ assert_scanned(" %=1=",
2625
+ :tOP_ASGN, "%",
2626
+ :tINTEGER, 1,
2627
+ :tEQL, "=")
2628
+
2629
+ @lex.state = :expr_arg
2630
+ assert_scanned(" %\n",
2631
+ :tPERCENT, '%')
2632
+ end
2633
+
2634
+ def test_bug_expr_arg_lt_lt
2635
+ @lex.state = :expr_arg
2636
+ assert_scanned("<<EOS\nEOS",
2637
+ :tLSHFT, "<<",
2638
+ :tCONSTANT, "EOS",
2639
+ :tNL, nil,
2640
+ :tCONSTANT, "EOS")
2641
+
2642
+ @lex.state = :expr_arg
2643
+ assert_scanned(" <<EOS\nEOS",
2644
+ :tSTRING_BEG, "<<\"",
2645
+ :tSTRING_END, "EOS",
2646
+ :tNL, nil)
2647
+ end
2648
+
2649
+ def test_bug_expr_arg_slash
2650
+ @lex.state = :expr_arg
2651
+ assert_scanned("/1",
2652
+ :tDIVIDE, "/",
2653
+ :tINTEGER, 1)
2654
+
2655
+ @lex.state = :expr_arg
2656
+ assert_scanned("/ 1",
2657
+ :tDIVIDE, "/",
2658
+ :tINTEGER, 1)
2659
+
2660
+ @lex.state = :expr_arg
2661
+ assert_scanned(" /1/",
2662
+ :tREGEXP_BEG, "/",
2663
+ :tSTRING_CONTENT, "1",
2664
+ :tSTRING_END, "/",
2665
+ :tREGEXP_OPT, "")
2666
+
2667
+ @lex.state = :expr_arg
2668
+ assert_scanned(" / 1",
2669
+ :tDIVIDE, "/",
2670
+ :tINTEGER, 1)
2671
+ end
2672
+
2673
+ def test_bug_expr_arg_label
2674
+ setup_lexer 19
2675
+
2676
+ @lex.state = :expr_arg
2677
+ assert_scanned(" unless:",
2678
+ :tLABEL, 'unless')
2679
+
2680
+ @lex.state = :expr_arg
2681
+ assert_scanned(" unless: ",
2682
+ :tLABEL, 'unless')
2683
+ end
2684
+
2685
+ def test_bug_heredoc_continuation
2686
+ @lex.state = :expr_arg
2687
+ assert_scanned(" <<EOS\nEOS\nend",
2688
+ :tSTRING_BEG, "<<\"",
2689
+ :tSTRING_END, "EOS",
2690
+ :tNL, nil,
2691
+ :kEND, "end")
2692
+ end
2693
+
2694
+ def test_bug_heredoc_cr_lf
2695
+ assert_scanned("<<FIN\r\nfoo\r\nFIN\r\n",
2696
+ :tSTRING_BEG, "<<\"",
2697
+ :tSTRING_CONTENT, "foo\n",
2698
+ :tSTRING_END, "FIN",
2699
+ :tNL, nil)
2700
+ end
2701
+
2702
+ def test_bug_eh_symbol_no_newline
2703
+ assert_scanned("?\"\nfoo",
2704
+ :tINTEGER, 34,
2705
+ :tNL, nil,
2706
+ :tIDENTIFIER, "foo")
2707
+ end
2708
+
2709
+ def test_bug_expr_arg_newline
2710
+ @lex.state = :expr_arg
2711
+ assert_scanned("\nfoo",
2712
+ :tNL, nil,
2713
+ :tIDENTIFIER, "foo")
2714
+
2715
+ @lex.state = :expr_arg
2716
+ assert_scanned(" \nfoo",
2717
+ :tNL, nil,
2718
+ :tIDENTIFIER, "foo")
2719
+
2720
+ @lex.state = :expr_arg
2721
+ assert_scanned("#foo\nfoo",
2722
+ :tNL, nil,
2723
+ :tIDENTIFIER, "foo")
2724
+ end
2725
+
2726
+ def test_bug_expr_arg_comment_newline
2727
+ @lex.state = :expr_arg
2728
+ assert_scanned(" #\nfoo",
2729
+ :tNL, nil,
2730
+ :tIDENTIFIER, 'foo')
2731
+ end
2732
+
2733
+ def test_bug_expr_arg_eh_crlf
2734
+ @lex.state = :expr_arg
2735
+ assert_scanned(" ?\r\n",
2736
+ :tEH, '?')
2737
+ end
2738
+
2739
+ def test_bug_heredoc_backspace_nl
2740
+ assert_scanned(" <<'XXX'\nf \\\nXXX\n",
2741
+ :tSTRING_BEG, "<<'",
2742
+ :tSTRING_CONTENT, "f \\\n",
2743
+ :tSTRING_END, "XXX",
2744
+ :tNL, nil)
2745
+ end
2746
+
2747
+ def test_bug_heredoc_lshft
2748
+ assert_scanned("<<RULES << CLEANINGS\nRULES",
2749
+ :tSTRING_BEG, '<<"',
2750
+ :tSTRING_END, 'RULES',
2751
+ :tLSHFT, '<<',
2752
+ :tCONSTANT, 'CLEANINGS')
2753
+ end
2754
+
2755
+ def test_bug_sclass_comment_lshft_label
2756
+ assert_scanned("class # foo\n<< a:b;end",
2757
+ :kCLASS, 'class',
2758
+ :tLSHFT, '<<',
2759
+ :tIDENTIFIER, 'a',
2760
+ :tSYMBOL, 'b',
2761
+ :tSEMI, ';',
2762
+ :kEND, 'end')
2763
+ end
2764
+
2765
+ def test_bug_expr_dot_comment
2766
+ assert_scanned("foo. #bar\nbaz",
2767
+ :tIDENTIFIER, 'foo',
2768
+ :tDOT, '.',
2769
+ :tIDENTIFIER, 'baz')
2770
+ end
2771
+
2772
+ def test_bug_expr_dot_fid
2773
+ assert_scanned("foo.S?",
2774
+ :tIDENTIFIER, 'foo',
2775
+ :tDOT, '.',
2776
+ :tFID, 'S?')
2777
+ end
2778
+
2779
+ def test_bug_expr_dot_id_eq
2780
+ assert_scanned("foo.x= 1",
2781
+ :tIDENTIFIER, 'foo',
2782
+ :tDOT, '.',
2783
+ :tIDENTIFIER, 'x',
2784
+ :tEQL, '=',
2785
+ :tINTEGER, 1)
2786
+ end
2787
+
2788
+ def test_bug_expr_dot_fid_mod
2789
+ assert_scanned("foo.x!if 1",
2790
+ :tIDENTIFIER, 'foo',
2791
+ :tDOT, '.',
2792
+ :tFID, 'x!',
2793
+ :kIF_MOD, 'if',
2794
+ :tINTEGER, 1)
2795
+ end
2796
+
2797
+ def test_bug_expr_mid_comment
2798
+ assert_scanned("rescue #bar\nprint",
2799
+ :kRESCUE, 'rescue',
2800
+ :tNL, nil,
2801
+ :tIDENTIFIER, 'print')
2802
+ end
2803
+
2804
+ def test_bug_expr_mid_bareword
2805
+ assert_scanned("begin; rescue rescue1",
2806
+ :kBEGIN, 'begin',
2807
+ :tSEMI, ';',
2808
+ :kRESCUE, 'rescue',
2809
+ :tIDENTIFIER, 'rescue1')
2810
+ end
2811
+
2812
+ def test_bug_expr_value_document
2813
+ assert_scanned("1;\n=begin\n=end",
2814
+ :tINTEGER, 1,
2815
+ :tSEMI, ';')
2816
+ end
2817
+
2818
+ def test_bug_expr_end_colon
2819
+ assert_scanned("'foo':'bar'",
2820
+ :tSTRING, 'foo',
2821
+ :tCOLON, ':',
2822
+ :tSTRING, 'bar')
2823
+ end
2824
+
2825
+ def test_bug_expr_value_rescue_colon2
2826
+ @lex.state = :expr_value
2827
+ assert_scanned("rescue::Exception",
2828
+ :kRESCUE, 'rescue',
2829
+ :tCOLON3, '::',
2830
+ :tCONSTANT, 'Exception')
2831
+ end
2832
+
2833
+ def test_bug_expr_endarg_braces
2834
+ assert_scanned("let [] {",
2835
+ :tIDENTIFIER, 'let',
2836
+ :tLBRACK, '[',
2837
+ :tRBRACK, ']',
2838
+ :tLBRACE_ARG, '{')
2839
+ end
2840
+
2841
+ def test_bug_line_begin_label
2842
+ setup_lexer(19)
2843
+ assert_scanned("foo:bar",
2844
+ :tIDENTIFIER, 'foo',
2845
+ :tSYMBOL, 'bar')
2846
+ end
2847
+
2848
+ def test_bug_interp_expr_value
2849
+ assert_scanned('"#{f:a}"',
2850
+ :tSTRING_BEG, '"',
2851
+ :tSTRING_DBEG, '#{',
2852
+ :tIDENTIFIER, 'f',
2853
+ :tSYMBOL, 'a',
2854
+ :tRCURLY, '}',
2855
+ :tSTRING_END, '"')
2856
+ end
2857
+
2858
+ def test_bug_const_e
2859
+ assert_scanned('E10',
2860
+ :tCONSTANT, 'E10')
2861
+ assert_scanned('E4U',
2862
+ :tCONSTANT, 'E4U')
2863
+ end
2864
+
2865
+ def test_bug_symbol_newline
2866
+ assert_scanned(":foo\n",
2867
+ :tSYMBOL, 'foo',
2868
+ :tNL, nil)
2869
+
2870
+ assert_scanned(":foo=\n",
2871
+ :tSYMBOL, 'foo=',
2872
+ :tNL, nil)
2873
+ end
2874
+
2875
+ def test_bug_interleaved_heredoc
2876
+ assert_scanned(%Q{<<w; "\nfoo\nw\n"},
2877
+ :tSTRING_BEG, '<<"',
2878
+ :tSTRING_CONTENT, "foo\n",
2879
+ :tSTRING_END, 'w',
2880
+ :tSEMI, ';',
2881
+ :tSTRING_BEG, '"',
2882
+ :tSTRING_CONTENT, "\n",
2883
+ :tSTRING_END, '"')
2884
+
2885
+ @lex.state = :expr_beg
2886
+ assert_scanned(%Q{<<w; %w[\nfoo\nw\n1]},
2887
+ :tSTRING_BEG, '<<"',
2888
+ :tSTRING_CONTENT, "foo\n",
2889
+ :tSTRING_END, 'w',
2890
+ :tSEMI, ';',
2891
+ :tQWORDS_BEG, '%w[',
2892
+ :tSTRING_CONTENT, "1",
2893
+ :tSPACE, nil,
2894
+ :tSTRING_END, ']')
2895
+
2896
+ @lex.state = :expr_beg
2897
+ assert_scanned(%Q{<<w; "\#{\nfoo\nw\n}"},
2898
+ :tSTRING_BEG, '<<"',
2899
+ :tSTRING_CONTENT, "foo\n",
2900
+ :tSTRING_END, 'w',
2901
+ :tSEMI, ';',
2902
+ :tSTRING_BEG, '"',
2903
+ :tSTRING_DBEG, '#{',
2904
+ :tRCURLY, '}',
2905
+ :tSTRING_END, '"')
2906
+ end
2907
+
2908
+ def test_bug_fid_char
2909
+ setup_lexer(19)
2910
+ assert_scanned(%Q{eof??a},
2911
+ :tFID, 'eof?',
2912
+ :tCHARACTER, 'a')
2913
+ end
2914
+
2915
+ def test_bug_nonlabel_context__18
2916
+ env = Parser::StaticEnvironment.new
2917
+ env.declare "a"
2918
+
2919
+ @lex.static_env = env
2920
+ assert_scanned("1+a:a",
2921
+ :tINTEGER, 1,
2922
+ :tPLUS, '+',
2923
+ :tIDENTIFIER, 'a',
2924
+ :tCOLON, ':',
2925
+ :tIDENTIFIER, 'a')
2926
+ end
2927
+
2928
+ def test_bug_string_percent_newline
2929
+ assert_scanned(%Q{%\nfoo\n},
2930
+ :tSTRING_BEG, "%\n",
2931
+ :tSTRING_CONTENT, 'foo',
2932
+ :tSTRING_END, "\n")
2933
+ end
2934
+
2935
+ def test_bug_string_percent_zero
2936
+ assert_scanned(%Q{%\0foo\0},
2937
+ :tSTRING_BEG, "%\0",
2938
+ :tSTRING_CONTENT, 'foo',
2939
+ :tSTRING_END, "\0")
2940
+ end
2941
+
2942
+ def test_bug_string_utf_escape_composition
2943
+ assert_scanned(%q{"\xE2\x80\x99"},
2944
+ :tSTRING, "\xE2\x80\x99")
2945
+
2946
+ if defined?(Encoding)
2947
+ assert_scanned(%q{"\xE2\x80\x99"}.force_encoding(Encoding::UTF_8),
2948
+ :tSTRING, '’'.force_encoding(Encoding::UTF_8))
2949
+ assert_scanned(%q{"\342\200\231"}.force_encoding(Encoding::UTF_8),
2950
+ :tSTRING, '’'.force_encoding(Encoding::UTF_8))
2951
+ assert_scanned(%q{"\M-b\C-\M-@\C-\M-Y"}.force_encoding(Encoding::UTF_8),
2952
+ :tSTRING, '’'.force_encoding(Encoding::UTF_8))
2953
+ end
2954
+ end
2955
+
2956
+ def test_bug_string_non_utf
2957
+ assert_scanned(%Q{"caf\xE9"},
2958
+ :tSTRING, "caf\xE9")
2959
+ assert_scanned(%Q{"caf\xC3\xA9"},
2960
+ :tSTRING, "caf\xC3\xA9")
2961
+
2962
+ if defined?(Encoding)
2963
+ assert_scanned(%q{"café"}.force_encoding(Encoding::UTF_8),
2964
+ :tSTRING, "café".force_encoding(Encoding::UTF_8))
2965
+ end
2966
+ end
2967
+
2968
+ def test_bug_semi__END__
2969
+ assert_scanned(%Q{foo;\n__END__},
2970
+ :tIDENTIFIER, 'foo',
2971
+ :tSEMI, ';')
2972
+ end
2973
+
2974
+ def test_bug_eql_end
2975
+ assert_scanned(%Q{=begin\n#=end\n=end})
2976
+ end
2977
+
2978
+ def test_bug_hidden_eof
2979
+ @lex.state = :expr_beg
2980
+ assert_scanned(%Q{"foo\0\x1a\x04bar"},
2981
+ :tSTRING_BEG, '"',
2982
+ :tSTRING_CONTENT, "foo\0",
2983
+ :tSTRING_CONTENT, "\x1a",
2984
+ :tSTRING_CONTENT, "\x04",
2985
+ :tSTRING_CONTENT, "bar",
2986
+ :tSTRING_END, '"')
2987
+
2988
+ @lex.state = :expr_beg
2989
+ assert_scanned(%Q{'foo\0\x1a\x04bar'},
2990
+ :tSTRING_BEG, "'",
2991
+ :tSTRING_CONTENT, "foo\0",
2992
+ :tSTRING_CONTENT, "\x1a",
2993
+ :tSTRING_CONTENT, "\x04",
2994
+ :tSTRING_CONTENT, "bar",
2995
+ :tSTRING_END, "'")
2996
+
2997
+ @lex.state = :expr_beg
2998
+ assert_scanned(%Q{%w[foo\0\x1a\x04bar]},
2999
+ :tQWORDS_BEG, '%w[',
3000
+ :tSTRING_CONTENT, "foo\0",
3001
+ :tSTRING_CONTENT, "\x1a",
3002
+ :tSTRING_CONTENT, "\x04",
3003
+ :tSTRING_CONTENT, "bar",
3004
+ :tSPACE, nil,
3005
+ :tSTRING_END, ']')
3006
+
3007
+ @lex.state = :expr_beg
3008
+ assert_scanned(%Q{%W[foo\0\x1a\x04bar]},
3009
+ :tWORDS_BEG, '%W[',
3010
+ :tSTRING_CONTENT, "foo\0",
3011
+ :tSTRING_CONTENT, "\x1a",
3012
+ :tSTRING_CONTENT, "\x04",
3013
+ :tSTRING_CONTENT, "bar",
3014
+ :tSPACE, nil,
3015
+ :tSTRING_END, ']')
3016
+
3017
+ @lex.state = :expr_beg
3018
+ assert_scanned(%Q{# foo\0\nbar},
3019
+ :tIDENTIFIER, 'bar')
3020
+
3021
+ @lex.state = :line_begin
3022
+ assert_scanned(%Q{=begin\n\0\n=end\nbar},
3023
+ :tIDENTIFIER, 'bar')
3024
+ end
3025
+
3026
+ def test_bug_num_adj_kw
3027
+ assert_scanned(%q{1if},
3028
+ :tINTEGER, 1,
3029
+ :kIF_MOD, 'if')
3030
+
3031
+ assert_scanned(%q{1.0if},
3032
+ :tFLOAT, 1.0,
3033
+ :kIF_MOD, 'if')
3034
+ end
3035
+
3036
+ if defined?(Encoding)
3037
+ def test_bug_unicode_in_literal
3038
+ setup_lexer(19)
3039
+ assert_scanned('"\u00a4"',
3040
+ :tSTRING, "\u00a4")
3041
+ end
3042
+
3043
+ def test_bug_utf32le_leak
3044
+ setup_lexer(19)
3045
+ @lex.force_utf32 = true
3046
+ assert_scanned('"F0"',
3047
+ :tSTRING, "F0")
3048
+ end
3049
+ end
3050
+
3051
+ def test_bug_ragel_stack
3052
+ assert_scanned("\"\#{$2 ? $2 : 1}\"",
3053
+ :tSTRING_BEG, "\"",
3054
+ :tSTRING_DBEG, "\#{",
3055
+ :tNTH_REF, 2,
3056
+ :tEH, "?",
3057
+ :tNTH_REF, 2,
3058
+ :tCOLON, ":",
3059
+ :tINTEGER, 1,
3060
+ :tRCURLY, "}",
3061
+ :tSTRING_END, "\"")
3062
+ end
3063
+
3064
+ end