gss 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (390) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +22 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +29 -0
  6. data/Rakefile +2 -0
  7. data/gss.gemspec +25 -0
  8. data/lib/gss.rb +62 -0
  9. data/lib/gss/version.rb +3 -0
  10. data/vendor/bundle/ruby/1.9.1/bin/nokogiri +23 -0
  11. data/vendor/bundle/ruby/1.9.1/bin/nokogiri.bat +6 -0
  12. data/vendor/bundle/ruby/1.9.1/bin/rake +23 -0
  13. data/vendor/bundle/ruby/1.9.1/bin/rake.bat +6 -0
  14. data/vendor/bundle/ruby/1.9.1/build_info/certified-0.1.2.info +1 -0
  15. data/vendor/bundle/ruby/1.9.1/build_info/mini_portile-0.6.0.info +1 -0
  16. data/vendor/bundle/ruby/1.9.1/build_info/nokogiri-1.6.2.1-x86-mingw32.info +1 -0
  17. data/vendor/bundle/ruby/1.9.1/build_info/rake-0.9.2.2.info +1 -0
  18. data/vendor/bundle/ruby/1.9.1/gems/certified-0.1.2/README.md +5 -0
  19. data/vendor/bundle/ruby/1.9.1/gems/certified-0.1.2/certified.rb +20 -0
  20. data/vendor/bundle/ruby/1.9.1/gems/certified-0.1.2/certs/ca-bundle.crt +3376 -0
  21. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/History.txt +86 -0
  22. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/LICENSE.txt +20 -0
  23. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/README.rdoc +169 -0
  24. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/Rakefile +53 -0
  25. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/examples/Rakefile +113 -0
  26. data/vendor/bundle/ruby/1.9.1/gems/mini_portile-0.6.0/lib/mini_portile.rb +437 -0
  27. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/.autotest +26 -0
  28. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/.editorconfig +17 -0
  29. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/.gemtest +0 -0
  30. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/.travis.yml +27 -0
  31. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/CHANGELOG.ja.rdoc +889 -0
  32. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/CHANGELOG.rdoc +898 -0
  33. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/C_CODING_STYLE.rdoc +33 -0
  34. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/Gemfile +21 -0
  35. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/Manifest.txt +377 -0
  36. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/README.ja.rdoc +111 -0
  37. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/README.rdoc +180 -0
  38. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ROADMAP.md +89 -0
  39. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/Rakefile +356 -0
  40. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/STANDARD_RESPONSES.md +47 -0
  41. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/Y_U_NO_GEMSPEC.md +155 -0
  42. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/bin/nokogiri +78 -0
  43. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/build_all +130 -0
  44. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/dependencies.yml +4 -0
  45. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/depend +358 -0
  46. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/extconf.rb +543 -0
  47. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_document.c +170 -0
  48. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_document.h +10 -0
  49. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_element_description.c +279 -0
  50. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_element_description.h +10 -0
  51. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_entity_lookup.c +32 -0
  52. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_entity_lookup.h +8 -0
  53. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_sax_parser_context.c +116 -0
  54. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_sax_parser_context.h +11 -0
  55. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_sax_push_parser.c +87 -0
  56. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/html_sax_push_parser.h +9 -0
  57. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/nokogiri.c +148 -0
  58. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/nokogiri.h +164 -0
  59. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_attr.c +94 -0
  60. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_attr.h +9 -0
  61. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_attribute_decl.c +70 -0
  62. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_attribute_decl.h +9 -0
  63. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_cdata.c +56 -0
  64. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_cdata.h +9 -0
  65. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_comment.c +54 -0
  66. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_comment.h +9 -0
  67. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_document.c +577 -0
  68. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_document.h +23 -0
  69. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_document_fragment.c +48 -0
  70. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_document_fragment.h +10 -0
  71. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_dtd.c +202 -0
  72. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_dtd.h +10 -0
  73. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_element_content.c +123 -0
  74. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_element_content.h +10 -0
  75. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_element_decl.c +69 -0
  76. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_element_decl.h +9 -0
  77. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_encoding_handler.c +79 -0
  78. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_encoding_handler.h +8 -0
  79. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_entity_decl.c +110 -0
  80. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_entity_decl.h +10 -0
  81. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_entity_reference.c +52 -0
  82. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_entity_reference.h +9 -0
  83. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_io.c +56 -0
  84. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_io.h +11 -0
  85. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_libxml2_hacks.c +112 -0
  86. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_libxml2_hacks.h +12 -0
  87. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_namespace.c +78 -0
  88. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_namespace.h +13 -0
  89. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_node.c +1603 -0
  90. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_node.h +13 -0
  91. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_node_set.c +467 -0
  92. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_node_set.h +14 -0
  93. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_processing_instruction.c +56 -0
  94. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_processing_instruction.h +9 -0
  95. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_reader.c +681 -0
  96. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_reader.h +10 -0
  97. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_relax_ng.c +161 -0
  98. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_relax_ng.h +9 -0
  99. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_parser.c +312 -0
  100. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_parser.h +39 -0
  101. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_parser_context.c +262 -0
  102. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_parser_context.h +10 -0
  103. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_push_parser.c +115 -0
  104. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_sax_push_parser.h +9 -0
  105. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_schema.c +205 -0
  106. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_schema.h +9 -0
  107. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_syntax_error.c +63 -0
  108. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_syntax_error.h +13 -0
  109. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_text.c +52 -0
  110. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_text.h +9 -0
  111. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_xpath_context.c +307 -0
  112. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xml_xpath_context.h +10 -0
  113. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xslt_stylesheet.c +270 -0
  114. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/ext/nokogiri/xslt_stylesheet.h +14 -0
  115. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri.rb +137 -0
  116. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css.rb +27 -0
  117. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/node.rb +52 -0
  118. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/parser.rb +715 -0
  119. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/parser.y +249 -0
  120. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/parser_extras.rb +91 -0
  121. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/syntax_error.rb +7 -0
  122. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/tokenizer.rb +152 -0
  123. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/tokenizer.rex +55 -0
  124. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/css/xpath_visitor.rb +219 -0
  125. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/decorators/slop.rb +35 -0
  126. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html.rb +37 -0
  127. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/builder.rb +35 -0
  128. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/document.rb +333 -0
  129. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/document_fragment.rb +41 -0
  130. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/element_description.rb +23 -0
  131. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/element_description_defaults.rb +671 -0
  132. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/entity_lookup.rb +13 -0
  133. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/sax/parser.rb +52 -0
  134. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/sax/parser_context.rb +16 -0
  135. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/html/sax/push_parser.rb +16 -0
  136. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/syntax_error.rb +4 -0
  137. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/version.rb +106 -0
  138. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml.rb +73 -0
  139. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/attr.rb +14 -0
  140. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/attribute_decl.rb +18 -0
  141. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/builder.rb +443 -0
  142. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/cdata.rb +11 -0
  143. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/character_data.rb +7 -0
  144. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/document.rb +279 -0
  145. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/document_fragment.rb +112 -0
  146. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/dtd.rb +32 -0
  147. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/element_content.rb +36 -0
  148. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/element_decl.rb +13 -0
  149. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/entity_decl.rb +19 -0
  150. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/namespace.rb +13 -0
  151. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/node.rb +982 -0
  152. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/node/save_options.rb +61 -0
  153. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/node_set.rb +355 -0
  154. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/notation.rb +6 -0
  155. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/parse_options.rb +98 -0
  156. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/pp.rb +2 -0
  157. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/pp/character_data.rb +18 -0
  158. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/pp/node.rb +56 -0
  159. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/processing_instruction.rb +8 -0
  160. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/reader.rb +112 -0
  161. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/relax_ng.rb +32 -0
  162. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/sax.rb +4 -0
  163. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/sax/document.rb +171 -0
  164. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/sax/parser.rb +123 -0
  165. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/sax/parser_context.rb +16 -0
  166. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/sax/push_parser.rb +60 -0
  167. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/schema.rb +63 -0
  168. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/syntax_error.rb +47 -0
  169. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/text.rb +9 -0
  170. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/xpath.rb +10 -0
  171. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/xpath/syntax_error.rb +11 -0
  172. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xml/xpath_context.rb +16 -0
  173. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xslt.rb +56 -0
  174. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/nokogiri/xslt/stylesheet.rb +25 -0
  175. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/lib/xsd/xmlparser/nokogiri.rb +102 -0
  176. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/suppressions/README.txt +1 -0
  177. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/suppressions/nokogiri_ree-1.8.7.358.supp +61 -0
  178. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/suppressions/nokogiri_ruby-1.8.7.370.supp +0 -0
  179. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/suppressions/nokogiri_ruby-1.9.2.320.supp +28 -0
  180. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/suppressions/nokogiri_ruby-1.9.3.327.supp +28 -0
  181. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/tasks/nokogiri.org.rb +24 -0
  182. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/tasks/test.rb +95 -0
  183. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/css/test_nthiness.rb +222 -0
  184. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/css/test_parser.rb +358 -0
  185. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/css/test_tokenizer.rb +198 -0
  186. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/css/test_xpath_visitor.rb +96 -0
  187. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/decorators/test_slop.rb +16 -0
  188. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/2ch.html +108 -0
  189. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/address_book.rlx +12 -0
  190. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/address_book.xml +10 -0
  191. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/atom.xml +344 -0
  192. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/bar/bar.xsd +4 -0
  193. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/bogus.xml +0 -0
  194. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/dont_hurt_em_why.xml +422 -0
  195. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/encoding.html +82 -0
  196. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/encoding.xhtml +84 -0
  197. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/exslt.xml +8 -0
  198. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/exslt.xslt +35 -0
  199. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/foo/foo.xsd +4 -0
  200. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/metacharset.html +10 -0
  201. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/noencoding.html +47 -0
  202. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/po.xml +32 -0
  203. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/po.xsd +66 -0
  204. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/saml/saml20assertion_schema.xsd +283 -0
  205. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/saml/saml20protocol_schema.xsd +302 -0
  206. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/saml/xenc_schema.xsd +146 -0
  207. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/saml/xmldsig_schema.xsd +318 -0
  208. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/shift_jis.html +10 -0
  209. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/shift_jis.xml +5 -0
  210. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/shift_jis_no_charset.html +9 -0
  211. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/slow-xpath.xml +25509 -0
  212. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/snuggles.xml +3 -0
  213. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/staff.dtd +10 -0
  214. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/staff.xml +59 -0
  215. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/staff.xslt +32 -0
  216. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/test_document_url/bar.xml +2 -0
  217. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/test_document_url/document.dtd +4 -0
  218. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/test_document_url/document.xml +6 -0
  219. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/tlm.html +850 -0
  220. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/to_be_xincluded.xml +2 -0
  221. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/valid_bar.xml +2 -0
  222. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/files/xinclude.xml +4 -0
  223. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/helper.rb +164 -0
  224. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/sax/test_parser.rb +141 -0
  225. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/sax/test_parser_context.rb +46 -0
  226. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_builder.rb +164 -0
  227. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_document.rb +619 -0
  228. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_document_encoding.rb +148 -0
  229. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_document_fragment.rb +267 -0
  230. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_element_description.rb +105 -0
  231. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_named_characters.rb +14 -0
  232. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_node.rb +196 -0
  233. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/html/test_node_encoding.rb +27 -0
  234. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_additional_namespaces_in_builder_doc.rb +14 -0
  235. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_aliased_default.rb +24 -0
  236. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_in_builder_doc.rb +75 -0
  237. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_in_cloned_doc.rb +31 -0
  238. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_in_created_doc.rb +75 -0
  239. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_in_parsed_doc.rb +66 -0
  240. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/namespaces/test_namespaces_preservation.rb +31 -0
  241. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_convert_xpath.rb +135 -0
  242. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_css_cache.rb +45 -0
  243. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_encoding_handler.rb +46 -0
  244. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_memory_leak.rb +156 -0
  245. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_nokogiri.rb +138 -0
  246. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_reader.rb +558 -0
  247. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_soap4r_sax.rb +52 -0
  248. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/test_xslt_transforms.rb +279 -0
  249. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/node/test_save_options.rb +28 -0
  250. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/node/test_subclass.rb +44 -0
  251. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/sax/test_parser.rb +382 -0
  252. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/sax/test_parser_context.rb +115 -0
  253. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/sax/test_push_parser.rb +157 -0
  254. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_attr.rb +64 -0
  255. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_attribute_decl.rb +86 -0
  256. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_builder.rb +315 -0
  257. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_c14n.rb +161 -0
  258. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_cdata.rb +48 -0
  259. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_comment.rb +29 -0
  260. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_document.rb +934 -0
  261. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_document_encoding.rb +28 -0
  262. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_document_fragment.rb +228 -0
  263. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_dtd.rb +187 -0
  264. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_dtd_encoding.rb +33 -0
  265. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_element_content.rb +56 -0
  266. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_element_decl.rb +73 -0
  267. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_entity_decl.rb +122 -0
  268. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_entity_reference.rb +245 -0
  269. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_namespace.rb +95 -0
  270. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node.rb +1155 -0
  271. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node_attributes.rb +113 -0
  272. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node_encoding.rb +107 -0
  273. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node_inheritance.rb +32 -0
  274. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node_reparenting.rb +374 -0
  275. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_node_set.rb +755 -0
  276. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_parse_options.rb +64 -0
  277. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_processing_instruction.rb +30 -0
  278. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_reader_encoding.rb +142 -0
  279. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_relax_ng.rb +60 -0
  280. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_schema.rb +129 -0
  281. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_syntax_error.rb +12 -0
  282. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_text.rb +60 -0
  283. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_unparented_node.rb +422 -0
  284. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_xinclude.rb +83 -0
  285. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xml/test_xpath.rb +382 -0
  286. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xslt/test_custom_functions.rb +133 -0
  287. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test/xslt/test_exception_handling.rb +37 -0
  288. data/vendor/bundle/ruby/1.9.1/gems/nokogiri-1.6.2.1-x86-mingw32/test_all +81 -0
  289. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/.gemtest +0 -0
  290. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/CHANGES +522 -0
  291. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/MIT-LICENSE +21 -0
  292. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/README.rdoc +197 -0
  293. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/Rakefile +369 -0
  294. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/TODO +20 -0
  295. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/bin/rake +33 -0
  296. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/install.rb +90 -0
  297. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake.rb +69 -0
  298. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/alt_system.rb +109 -0
  299. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb +595 -0
  300. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/classic_namespace.rb +11 -0
  301. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/clean.rb +32 -0
  302. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/cloneable.rb +25 -0
  303. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/compositepublisher.rb +21 -0
  304. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/ftptools.rb +150 -0
  305. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/publisher.rb +73 -0
  306. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/rubyforgepublisher.rb +16 -0
  307. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/sshpublisher.rb +50 -0
  308. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/sys.rb +191 -0
  309. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/default_loader.rb +10 -0
  310. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/dsl_definition.rb +176 -0
  311. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/early_time.rb +18 -0
  312. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/core.rb +27 -0
  313. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/module.rb +39 -0
  314. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/string.rb +167 -0
  315. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/time.rb +14 -0
  316. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_creation_task.rb +24 -0
  317. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_list.rb +403 -0
  318. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_task.rb +47 -0
  319. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_utils.rb +114 -0
  320. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_utils_ext.rb +145 -0
  321. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/gempackagetask.rb +15 -0
  322. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/invocation_chain.rb +51 -0
  323. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/invocation_exception_mixin.rb +16 -0
  324. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/loaders/makefile.rb +40 -0
  325. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/multi_task.rb +16 -0
  326. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/name_space.rb +25 -0
  327. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/packagetask.rb +185 -0
  328. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/pathmap.rb +1 -0
  329. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/pseudo_status.rb +24 -0
  330. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rake_module.rb +29 -0
  331. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb +22 -0
  332. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rdoctask.rb +234 -0
  333. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ruby182_test_unit_fix.rb +25 -0
  334. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rule_recursion_overflow_error.rb +20 -0
  335. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/runtest.rb +21 -0
  336. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb +327 -0
  337. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_argument_error.rb +7 -0
  338. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_arguments.rb +78 -0
  339. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_manager.rb +307 -0
  340. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/tasklib.rb +22 -0
  341. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/testtask.rb +191 -0
  342. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/version.rb +8 -0
  343. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/win32.rb +55 -0
  344. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/file_creation.rb +34 -0
  345. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/helper.rb +492 -0
  346. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake.rb +40 -0
  347. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_application.rb +489 -0
  348. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_application_options.rb +335 -0
  349. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_clean.rb +14 -0
  350. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_definitions.rb +80 -0
  351. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_directory_task.rb +46 -0
  352. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_dsl.rb +77 -0
  353. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_early_time.rb +31 -0
  354. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_extension.rb +59 -0
  355. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_creation_task.rb +56 -0
  356. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_list.rb +628 -0
  357. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_list_path_map.rb +8 -0
  358. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_task.rb +102 -0
  359. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_utils.rb +305 -0
  360. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_ftp_file.rb +59 -0
  361. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_functional.rb +450 -0
  362. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_invocation_chain.rb +52 -0
  363. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_makefile_loader.rb +44 -0
  364. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_multi_task.rb +51 -0
  365. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_name_space.rb +43 -0
  366. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_package_task.rb +79 -0
  367. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map.rb +157 -0
  368. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map_explode.rb +34 -0
  369. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map_partial.rb +18 -0
  370. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_pseudo_status.rb +21 -0
  371. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rake_test_loader.rb +21 -0
  372. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rdoc_task.rb +83 -0
  373. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_require.rb +40 -0
  374. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rules.rb +327 -0
  375. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task.rb +267 -0
  376. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_argument_parsing.rb +103 -0
  377. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_arguments.rb +88 -0
  378. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_lib.rb +9 -0
  379. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_manager.rb +157 -0
  380. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_manager_argument_resolution.rb +36 -0
  381. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_with_arguments.rb +173 -0
  382. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_test_task.rb +120 -0
  383. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_top_level_functions.rb +111 -0
  384. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_win32.rb +72 -0
  385. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_sys.rb +20 -0
  386. data/vendor/bundle/ruby/1.9.1/specifications/certified-0.1.2.gemspec +20 -0
  387. data/vendor/bundle/ruby/1.9.1/specifications/mini_portile-0.6.0.gemspec +24 -0
  388. data/vendor/bundle/ruby/1.9.1/specifications/nokogiri-1.6.2.1-x86-mingw32.gemspec +73 -0
  389. data/vendor/bundle/ruby/1.9.1/specifications/rake-0.9.2.2.gemspec +37 -0
  390. metadata +489 -0
@@ -0,0 +1,66 @@
1
+ require "helper"
2
+
3
+ module Nokogiri
4
+ module XML
5
+ class TestNamespacesInParsedDoc < Nokogiri::TestCase
6
+ def setup
7
+ super
8
+ @doc = Nokogiri::XML <<-eoxml
9
+ <fruit xmlns="ns:fruit" xmlns:veg="ns:veg" xmlns:xlink="http://www.w3.org/1999/xlink">
10
+ <pear>
11
+ <bosc/>
12
+ </pear>
13
+ <orange/>
14
+ <veg:carrot>
15
+ <cheese xmlns="ns:dairy" xlink:href="http://example.com/cheese/"/>
16
+ </veg:carrot>
17
+ <meat:bacon xmlns:meat="ns:meat">
18
+ <apple count="2"/>
19
+ <veg:tomato/>
20
+ </meat:bacon>
21
+ </fruit>
22
+ eoxml
23
+ end
24
+
25
+ def check_namespace e
26
+ e.namespace.nil? ? nil : e.namespace.href
27
+ end
28
+
29
+ def test_parsed_default_ns
30
+ assert_equal 'ns:fruit', check_namespace(@doc.root)
31
+ end
32
+ def test_parsed_parent_default_ns
33
+ assert_equal 'ns:fruit', check_namespace(@doc.root.elements[0])
34
+ assert_equal 'ns:fruit', check_namespace(@doc.root.elements[1])
35
+ end
36
+ def test_parsed_grandparent_default_ns
37
+ assert_equal 'ns:fruit', check_namespace(@doc.root.elements[0].elements[0])
38
+ end
39
+ def test_parsed_parent_nondefault_ns
40
+ assert_equal 'ns:veg', check_namespace(@doc.root.elements[2])
41
+ end
42
+ def test_parsed_single_decl_ns_1
43
+ assert_equal 'ns:dairy', check_namespace(@doc.root.elements[2].elements[0])
44
+ end
45
+ def test_parsed_nondefault_attr_ns
46
+ assert_equal 'http://www.w3.org/1999/xlink',
47
+ check_namespace(@doc.root.elements[2].elements[0].attribute_nodes.find { |a| a.name =~ /href/ })
48
+ end
49
+ def test_parsed_single_decl_ns_2
50
+ assert_equal 'ns:meat', check_namespace(@doc.root.elements[3])
51
+ end
52
+ def test_parsed_buried_default_ns
53
+ assert_equal 'ns:fruit', check_namespace(@doc.root.elements[3].elements[0])
54
+ end
55
+ def test_parsed_buried_decl_ns
56
+ assert_equal 'ns:veg', check_namespace(@doc.root.elements[3].elements[1])
57
+ end
58
+ def test_parsed_namespace_count
59
+ n = @doc.root.clone
60
+ n.children.each(&:remove)
61
+ ns_attrs = n.to_xml.scan(/\bxmlns(?::.+?)?=/)
62
+ assert_equal 3, ns_attrs.length
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,31 @@
1
+ require "helper"
2
+
3
+ module Nokogiri
4
+ module XML
5
+ class TestNamespacePreservation < Nokogiri::TestCase
6
+
7
+ def setup
8
+ @xml = Nokogiri.XML <<-eoxml
9
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
10
+ <xs:element xmlns:quer="http://api.geotrust.com/webtrust/query"/>
11
+ <xs:element xmlns:quer="http://api.geotrust.com/webtrust/query"/>
12
+ </xs:schema>
13
+ eoxml
14
+ end
15
+
16
+ def test_xpath
17
+ first = @xml.at_xpath('//xs:element', 'xs' => 'http://www.w3.org/2001/XMLSchema')
18
+ last = @xml.at_xpath('//xs:element[last()]', 'xs' => 'http://www.w3.org/2001/XMLSchema')
19
+ assert_equal 'http://api.geotrust.com/webtrust/query' , first.namespaces['xmlns:quer'], "Should contain quer namespace"
20
+ assert_equal 'http://api.geotrust.com/webtrust/query' , last.namespaces['xmlns:quer'], "Should contain quer namespace"
21
+ end
22
+
23
+ def test_traversing
24
+ first = @xml.root.element_children.first
25
+ last = @xml.root.element_children.last
26
+ assert_equal 'http://api.geotrust.com/webtrust/query' , first.namespaces['xmlns:quer'], "Should contain quer namespace"
27
+ assert_equal 'http://api.geotrust.com/webtrust/query' , last.namespaces['xmlns:quer'], "Should contain quer namespace"
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,135 @@
1
+ require "helper"
2
+
3
+ class TestConvertXPath < Nokogiri::TestCase
4
+
5
+ def setup
6
+ super
7
+ @N = Nokogiri(File.read(HTML_FILE))
8
+ end
9
+
10
+ def assert_syntactical_equivalence(hpath, xpath, match, &blk)
11
+ blk ||= lambda {|j| j.first}
12
+ assert_equal match, blk.call(@N.search(xpath)), "xpath result did not match"
13
+ end
14
+
15
+ def test_child_tag
16
+ assert_syntactical_equivalence("h1[a]", ".//h1[child::a]", "Tender Lovemaking") do |j|
17
+ j.inner_text
18
+ end
19
+ end
20
+
21
+ def test_child_tag_equals
22
+ assert_syntactical_equivalence("h1[a='Tender Lovemaking']", ".//h1[child::a = 'Tender Lovemaking']", "Tender Lovemaking") do |j|
23
+ j.inner_text
24
+ end
25
+ end
26
+
27
+ def test_filter_contains
28
+ assert_syntactical_equivalence("title:contains('Tender')", ".//title[contains(., 'Tender')]",
29
+ "Tender Lovemaking ") do |j|
30
+ j.inner_text
31
+ end
32
+ end
33
+
34
+ def test_filter_comment
35
+ assert_syntactical_equivalence("div comment()[2]", ".//div//comment()[position() = 2]", "<!-- end of header -->") do |j|
36
+ j.first.to_s
37
+ end
38
+ end
39
+
40
+ def test_filter_text
41
+ assert_syntactical_equivalence("a[text()]", ".//a[normalize-space(child::text())]", "<a href=\"http://tenderlovemaking.com\">Tender Lovemaking</a>") do |j|
42
+ j.first.to_s
43
+ end
44
+ assert_syntactical_equivalence("a[text()='Tender Lovemaking']", ".//a[normalize-space(child::text()) = 'Tender Lovemaking']", "<a href=\"http://tenderlovemaking.com\">Tender Lovemaking</a>") do |j|
45
+ j.first.to_s
46
+ end
47
+ assert_syntactical_equivalence("a/text()", ".//a/child::text()", "Tender Lovemaking") do |j|
48
+ j.first.to_s
49
+ end
50
+ assert_syntactical_equivalence("h2//a[text()!='Back Home!']", ".//h2//a[normalize-space(child::text()) != 'Back Home!']", "Meow meow meow meow meow") do |j|
51
+ j.first.inner_text
52
+ end
53
+ end
54
+
55
+ def test_filter_by_attr
56
+ assert_syntactical_equivalence("a[@href='http://blog.geminigeek.com/wordpress-theme']",
57
+ ".//a[@href = 'http://blog.geminigeek.com/wordpress-theme']",
58
+ "http://blog.geminigeek.com/wordpress-theme") do |j|
59
+ j.first["href"]
60
+ end
61
+ end
62
+
63
+ def test_css_id
64
+ assert_syntactical_equivalence("#linkcat-7", ".//*[@id = 'linkcat-7']", "linkcat-7") do |j|
65
+ j.first["id"]
66
+ end
67
+ assert_syntactical_equivalence("li#linkcat-7", ".//li[@id = 'linkcat-7']", "linkcat-7") do |j|
68
+ j.first["id"]
69
+ end
70
+ end
71
+
72
+ def test_css_class
73
+ assert_syntactical_equivalence(".cat-item-15", ".//*[contains(concat(' ', @class, ' '), ' cat-item-15 ')]",
74
+ "cat-item cat-item-15") do |j|
75
+ j.first["class"]
76
+ end
77
+ assert_syntactical_equivalence("li.cat-item-15", ".//li[contains(concat(' ', @class, ' '), ' cat-item-15 ')]",
78
+ "cat-item cat-item-15") do |j|
79
+ j.first["class"]
80
+ end
81
+ end
82
+
83
+ def test_css_tags
84
+ assert_syntactical_equivalence("div li a", ".//div//li//a", "http://brobinius.org/") do |j|
85
+ j.first.inner_text
86
+ end
87
+ assert_syntactical_equivalence("div li > a", ".//div//li/a", "http://brobinius.org/") do |j|
88
+ j.first.inner_text
89
+ end
90
+ assert_syntactical_equivalence("h1 ~ small", ".//small[preceding-sibling::h1]", "The act of making love, tenderly.") do |j|
91
+ j.first.inner_text
92
+ end
93
+ assert_syntactical_equivalence("h1 ~ small", ".//small[preceding-sibling::h1]", "The act of making love, tenderly.") do |j|
94
+ j.first.inner_text
95
+ end
96
+ end
97
+
98
+ def test_positional
99
+ assert_syntactical_equivalence("div/div:first()", ".//div/div[position() = 1]", "\r\nTender Lovemaking\r\nThe act of making love, tenderly.\r\n".gsub(/[\r\n]/, '')) do |j|
100
+ j.first.inner_text.gsub(/[\r\n]/, '')
101
+ end
102
+ assert_syntactical_equivalence("div/div:first", ".//div/div[position() = 1]", "\r\nTender Lovemaking\r\nThe act of making love, tenderly.\r\n".gsub(/[\r\n]/, '')) do |j|
103
+ j.first.inner_text.gsub(/[\r\n]/, '')
104
+ end
105
+ assert_syntactical_equivalence("div//a:last()", ".//div//a[position() = last()]", "Wordpress") do |j|
106
+ j.last.inner_text
107
+ end
108
+ assert_syntactical_equivalence("div//a:last", ".//div//a[position() = last()]", "Wordpress") do |j|
109
+ j.last.inner_text
110
+ end
111
+ end
112
+
113
+ def test_multiple_filters
114
+ assert_syntactical_equivalence("a[@rel='bookmark'][1]", ".//a[@rel = 'bookmark' and position() = 1]", "Back Home!") do |j|
115
+ j.first.inner_text
116
+ end
117
+ end
118
+
119
+ # TODO:
120
+ # doc/'title ~ link' -> links that are siblings of title
121
+ # doc/'p[@class~="final"]' -> class includes string (whitespacy)
122
+ # doc/'p[text()*="final"]' -> class includes string (index) (broken: always returns true?)
123
+ # doc/'p[text()$="final"]' -> /final$/
124
+ # doc/'p[text()|="final"]' -> /^final$/
125
+ # doc/'p[text()^="final"]' -> string starts with 'final
126
+ # nth_first
127
+ # nth_last
128
+ # even
129
+ # odd
130
+ # first-child, nth-child, last-child, nth-last-child, nth-last-of-type
131
+ # only-of-type, only-child
132
+ # parent
133
+ # empty
134
+ # root
135
+ end
@@ -0,0 +1,45 @@
1
+ require "helper"
2
+
3
+ class TestCssCache < Nokogiri::TestCase
4
+
5
+ def setup
6
+ super
7
+ @css = "a1 > b2 > c3"
8
+ @parse_result = Nokogiri::CSS.parse(@css)
9
+ @to_xpath_result = @parse_result.map {|ast| ast.to_xpath}
10
+ Nokogiri::CSS::Parser.class_eval do
11
+ class << @cache
12
+ alias :old_bracket :[]
13
+ attr_reader :count
14
+ def [](key)
15
+ @count ||= 0
16
+ @count += 1
17
+ old_bracket(key)
18
+ end
19
+ end
20
+ end
21
+ assert Nokogiri::CSS::Parser.cache_on?
22
+ end
23
+
24
+ def teardown
25
+ Nokogiri::CSS::Parser.clear_cache
26
+ Nokogiri::CSS::Parser.set_cache true
27
+ end
28
+
29
+ [ false, true ].each do |cache_setting|
30
+ define_method "test_css_cache_#{cache_setting ? "true" : "false"}" do
31
+ times = cache_setting ? 4 : nil
32
+
33
+ Nokogiri::CSS::Parser.set_cache cache_setting
34
+
35
+ Nokogiri::CSS.xpath_for(@css)
36
+ Nokogiri::CSS.xpath_for(@css)
37
+ Nokogiri::CSS::Parser.new.xpath_for(@css)
38
+ Nokogiri::CSS::Parser.new.xpath_for(@css)
39
+
40
+ assert_equal(times, Nokogiri::CSS::Parser.class_eval { @cache.count })
41
+ end
42
+ end
43
+
44
+
45
+ end
@@ -0,0 +1,46 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ require "helper"
4
+
5
+ class TestEncodingHandler < Nokogiri::TestCase
6
+ def teardown
7
+ Nokogiri::EncodingHandler.clear_aliases!
8
+ end
9
+
10
+ def test_get
11
+ assert_not_nil Nokogiri::EncodingHandler['UTF-8']
12
+ assert_nil Nokogiri::EncodingHandler['alsdkjfhaldskjfh']
13
+ end
14
+
15
+ def test_name
16
+ eh = Nokogiri::EncodingHandler['UTF-8']
17
+ assert_equal "UTF-8", eh.name
18
+ end
19
+
20
+ def test_alias
21
+ Nokogiri::EncodingHandler.alias('UTF-8', 'UTF-18')
22
+ assert_equal 'UTF-8', Nokogiri::EncodingHandler['UTF-18'].name
23
+ end
24
+
25
+ def test_cleanup_aliases
26
+ assert_nil Nokogiri::EncodingHandler['UTF-9']
27
+ Nokogiri::EncodingHandler.alias('UTF-8', 'UTF-9')
28
+ assert_not_nil Nokogiri::EncodingHandler['UTF-9']
29
+
30
+ Nokogiri::EncodingHandler.clear_aliases!
31
+ assert_nil Nokogiri::EncodingHandler['UTF-9']
32
+ end
33
+
34
+ def test_delete
35
+ assert_nil Nokogiri::EncodingHandler['UTF-9']
36
+ Nokogiri::EncodingHandler.alias('UTF-8', 'UTF-9')
37
+ assert_not_nil Nokogiri::EncodingHandler['UTF-9']
38
+
39
+ Nokogiri::EncodingHandler.delete 'UTF-9'
40
+ assert_nil Nokogiri::EncodingHandler['UTF-9']
41
+ end
42
+
43
+ def test_delete_non_existent
44
+ assert_nil Nokogiri::EncodingHandler.delete('UTF-9')
45
+ end
46
+ end
@@ -0,0 +1,156 @@
1
+ require "helper"
2
+
3
+ class TestMemoryLeak < Nokogiri::TestCase
4
+ def setup
5
+ super
6
+ @str = <<EOF
7
+ <!DOCTYPE HTML>
8
+ <html>
9
+ <body>
10
+ <br />
11
+ </body>
12
+ </html>
13
+ EOF
14
+ end
15
+
16
+ if ENV['NOKOGIRI_GC'] # turning these off by default for now
17
+ def test_dont_hurt_em_why
18
+ content = File.open("#{File.dirname(__FILE__)}/files/dont_hurt_em_why.xml").read
19
+ ndoc = Nokogiri::XML(content)
20
+ 2.times do
21
+ ndoc.search('status text').first.inner_text
22
+ ndoc.search('user name').first.inner_text
23
+ GC.start
24
+ end
25
+ end
26
+
27
+ class BadIO
28
+ def read(*args)
29
+ raise 'hell'
30
+ end
31
+
32
+ def write(*args)
33
+ raise 'chickens'
34
+ end
35
+ end
36
+
37
+ def test_for_mem_leak_on_io_callbacks
38
+ io = File.open SNUGGLES_FILE
39
+ Nokogiri::XML.parse(io)
40
+
41
+ loop do
42
+ Nokogiri::XML.parse(BadIO.new) rescue nil
43
+ doc.write BadIO.new rescue nil
44
+ end
45
+ end
46
+
47
+ def test_for_memory_leak
48
+ begin
49
+ # we don't use Dike in any tests, but requiring it has side effects
50
+ # that can create memory leaks, and that's what we're testing for.
51
+ require 'rubygems'
52
+ require 'dike' # do not remove!
53
+
54
+ count_start = count_object_space_documents
55
+ xml_data = <<-EOS
56
+ <test>
57
+ <items>
58
+ <item>abc</item>
59
+ <item>1234</item>
60
+ <item>Zzz</item>
61
+ <items>
62
+ </test>
63
+ EOS
64
+ 20.times do
65
+ doc = Nokogiri::XML(xml_data)
66
+ doc.xpath("//item")
67
+ end
68
+ 2.times { GC.start }
69
+ count_end = count_object_space_documents
70
+ assert((count_end - count_start) <= 2, "memory leak detected")
71
+ rescue LoadError
72
+ puts "\ndike is not installed, skipping memory leak test"
73
+ end
74
+ end
75
+
76
+ def test_node_set_namespace_mem_leak
77
+ xml = Nokogiri::XML "<foo></foo>"
78
+ ctx = Nokogiri::XML::XPathContext.new(xml)
79
+ loop do
80
+ ctx.evaluate("//namespace::*")
81
+ end
82
+ end
83
+
84
+ def test_leak_on_node_replace
85
+ loop do
86
+ doc = Nokogiri.XML("<root><foo /></root>")
87
+ n = Nokogiri::XML::CDATA.new(doc, "bar")
88
+ pivot = doc.root.children[0]
89
+ pivot.replace(n)
90
+ end
91
+ end
92
+
93
+ def test_sax_parser_context
94
+ io = StringIO.new(@str)
95
+
96
+ loop do
97
+ Nokogiri::XML::SAX::ParserContext.new(@str)
98
+ Nokogiri::XML::SAX::ParserContext.new(io)
99
+ io.rewind
100
+
101
+ Nokogiri::HTML::SAX::ParserContext.new(@str)
102
+ Nokogiri::HTML::SAX::ParserContext.new(io)
103
+ io.rewind
104
+ end
105
+ end
106
+
107
+ class JumpingSaxHandler < Nokogiri::XML::SAX::Document
108
+ def initialize(jumptag)
109
+ @jumptag = jumptag
110
+ super()
111
+ end
112
+
113
+ def start_element(name, attrs = [])
114
+ throw @jumptag
115
+ end
116
+ end
117
+
118
+ def test_jumping_sax_handler
119
+ doc = JumpingSaxHandler.new(:foo)
120
+
121
+ loop do
122
+ catch(:foo) do
123
+ Nokogiri::HTML::SAX::Parser.new(doc).parse(@str)
124
+ end
125
+ end
126
+ end
127
+
128
+ def test_in_context_parser_leak
129
+ loop do
130
+ doc = Nokogiri::XML::Document.new
131
+ fragment1 = Nokogiri::XML::DocumentFragment.new(doc, '<foo/>')
132
+ node = fragment1.children[0]
133
+ node.parse('<bar></bar>')
134
+ end
135
+ end
136
+
137
+ def test_in_context_parser_leak_ii
138
+ loop { Nokogiri::XML('<a/>').root.parse('<b/>') }
139
+ end
140
+
141
+ def test_leak_on_xpath_string_function
142
+ doc = Nokogiri::XML(@str)
143
+ loop do
144
+ doc.xpath('name(//node())')
145
+ end
146
+ end
147
+ end # if NOKOGIRI_GC
148
+
149
+ private
150
+
151
+ def count_object_space_documents
152
+ count = 0
153
+ ObjectSpace.each_object {|j| count += 1 if j.is_a?(Nokogiri::XML::Document) }
154
+ count
155
+ end
156
+ end