challah 1.0.0.beta2 → 1.0.0.beta3
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.
- checksums.yaml +4 -4
- data/lib/challah/authorization.rb +13 -6
- data/lib/challah/user/providers.rb +3 -1
- data/lib/challah/version.rb +1 -1
- data/test/authorization_test.rb +15 -0
- data/test/user_test.rb +2 -1
- data/vendor/bundle/build_info/highline-1.6.18.info +1 -0
- data/vendor/bundle/build_info/mime-types-1.23.info +1 -0
- data/vendor/bundle/build_info/minitest-4.7.4.info +1 -0
- data/vendor/bundle/build_info/multi_json-1.7.3.info +1 -0
- data/vendor/bundle/build_info/rdiscount-2.0.7.3.info +1 -0
- data/vendor/bundle/build_info/shoulda-3.5.0.info +1 -0
- data/vendor/bundle/build_info/shoulda-matchers-2.1.0.info +1 -0
- data/vendor/bundle/build_info/tilt-1.4.1.info +1 -0
- data/vendor/bundle/build_info/yard-0.8.6.1.info +1 -0
- data/vendor/bundle/cache/highline-1.6.18.gem +0 -0
- data/vendor/bundle/cache/mime-types-1.23.gem +0 -0
- data/vendor/bundle/cache/minitest-4.7.4.gem +0 -0
- data/vendor/bundle/cache/multi_json-1.7.3.gem +0 -0
- data/vendor/bundle/cache/rdiscount-2.0.7.3.gem +0 -0
- data/vendor/bundle/cache/shoulda-3.5.0.gem +0 -0
- data/vendor/bundle/cache/shoulda-matchers-2.1.0.gem +0 -0
- data/vendor/bundle/cache/tilt-1.4.1.gem +0 -0
- data/vendor/bundle/cache/yard-0.8.6.1.gem +0 -0
- data/vendor/bundle/gems/highline-1.6.18/AUTHORS +3 -0
- data/vendor/bundle/gems/highline-1.6.18/CHANGELOG +342 -0
- data/vendor/bundle/gems/highline-1.6.18/COPYING +340 -0
- data/vendor/bundle/gems/highline-1.6.18/INSTALL +55 -0
- data/vendor/bundle/gems/highline-1.6.18/LICENSE +7 -0
- data/vendor/bundle/gems/highline-1.6.18/README.rdoc +63 -0
- data/vendor/bundle/gems/highline-1.6.18/Rakefile +50 -0
- data/vendor/bundle/gems/highline-1.6.18/TODO +6 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/ansi_colors.rb +38 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/asking_for_arrays.rb +18 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/basic_usage.rb +75 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/color_scheme.rb +32 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/get_character.rb +12 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/limit.rb +12 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/menus.rb +65 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/overwrite.rb +19 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/page_and_wrap.rb +322 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/password.rb +7 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/repeat_entry.rb +21 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/trapping_eof.rb +22 -0
- data/vendor/bundle/gems/highline-1.6.18/examples/using_readline.rb +17 -0
- data/vendor/bundle/gems/highline-1.6.18/highline.gemspec +37 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/color_scheme.rb +134 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/compatibility.rb +16 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/import.rb +41 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/menu.rb +398 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/question.rb +475 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/simulate.rb +48 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/string_extensions.rb +131 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/style.rb +181 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline/system_extensions.rb +218 -0
- data/vendor/bundle/gems/highline-1.6.18/lib/highline.rb +1012 -0
- data/vendor/bundle/gems/highline-1.6.18/setup.rb +1360 -0
- data/vendor/bundle/gems/highline-1.6.18/site/highline.css +65 -0
- data/vendor/bundle/gems/highline-1.6.18/site/images/logo.png +0 -0
- data/vendor/bundle/gems/highline-1.6.18/site/index.html +58 -0
- data/vendor/bundle/gems/highline-1.6.18/test/string_methods.rb +32 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_color_scheme.rb +96 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_highline.rb +1123 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_import.rb +52 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_menu.rb +439 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_string_extension.rb +20 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_string_highline.rb +38 -0
- data/vendor/bundle/gems/highline-1.6.18/test/tc_style.rb +567 -0
- data/vendor/bundle/gems/highline-1.6.18/test/ts_all.rb +16 -0
- data/vendor/bundle/gems/mime-types-1.23/Contributing.rdoc +68 -0
- data/vendor/bundle/gems/mime-types-1.23/Gemfile +21 -0
- data/vendor/bundle/gems/mime-types-1.23/History.rdoc +215 -0
- data/vendor/bundle/gems/mime-types-1.23/Licence.rdoc +37 -0
- data/vendor/bundle/gems/mime-types-1.23/Manifest.txt +40 -0
- data/vendor/bundle/gems/mime-types-1.23/README.rdoc +63 -0
- data/vendor/bundle/gems/mime-types-1.23/Rakefile +206 -0
- data/vendor/bundle/gems/mime-types-1.23/docs/COPYING.txt +339 -0
- data/vendor/bundle/gems/mime-types-1.23/docs/artistic.txt +127 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application +1002 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.mac +3 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.nonstandard +131 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.obsolete +41 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio +138 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.nonstandard +11 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.obsolete +1 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image +46 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.nonstandard +20 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.obsolete +5 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message +18 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message.obsolete +2 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/model +15 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart +14 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.nonstandard +1 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.obsolete +7 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/other.nonstandard +8 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text +61 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.nonstandard +7 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.obsolete +8 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.vms +1 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video +73 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.nonstandard +16 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.obsolete +3 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime/types.rb +881 -0
- data/vendor/bundle/gems/mime-types-1.23/lib/mime-types.rb +3 -0
- data/vendor/bundle/gems/mime-types-1.23/test/test_mime_type.rb +319 -0
- data/vendor/bundle/gems/mime-types-1.23/test/test_mime_types.rb +119 -0
- data/vendor/bundle/gems/minitest-4.7.4/History.txt +796 -0
- data/vendor/bundle/gems/minitest-4.7.4/Manifest.txt +20 -0
- data/vendor/bundle/gems/minitest-4.7.4/README.txt +457 -0
- data/vendor/bundle/gems/minitest-4.7.4/Rakefile +94 -0
- data/vendor/bundle/gems/minitest-4.7.4/design_rationale.rb +52 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/hoe/minitest.rb +22 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/autorun.rb +12 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/benchmark.rb +416 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/hell.rb +13 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/mock.rb +193 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/parallel_each.rb +73 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/pride.rb +112 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/spec.rb +545 -0
- data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/unit.rb +1415 -0
- data/vendor/bundle/gems/minitest-4.7.4/test/minitest/metametameta.rb +67 -0
- data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_benchmark.rb +128 -0
- data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_mock.rb +403 -0
- data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_spec.rb +804 -0
- data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_unit.rb +1860 -0
- data/vendor/bundle/gems/multi_json-1.7.3/CHANGELOG.md +147 -0
- data/vendor/bundle/gems/multi_json-1.7.3/CONTRIBUTING.md +46 -0
- data/vendor/bundle/gems/multi_json-1.7.3/Gemfile +31 -0
- data/vendor/bundle/gems/multi_json-1.7.3/LICENSE.md +20 -0
- data/vendor/bundle/gems/multi_json-1.7.3/README.md +109 -0
- data/vendor/bundle/gems/multi_json-1.7.3/Rakefile +12 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapter.rb +43 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/gson.rb +19 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/jr_jackson.rb +19 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_common.rb +35 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_gem.rb +15 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_pure.rb +15 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/nsjsonserialization.rb +34 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/oj.rb +28 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/ok_json.rb +22 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/yajl.rb +19 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/convertible_hash_keys.rb +43 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/options.rb +39 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/vendor/okjson.rb +600 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/version.rb +3 -0
- data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json.rb +154 -0
- data/vendor/bundle/gems/multi_json-1.7.3/multi_json.gemspec +22 -0
- data/vendor/bundle/gems/multi_json-1.7.3/spec/adapter_shared_example.rb +235 -0
- data/vendor/bundle/gems/multi_json-1.7.3/spec/has_options.rb +74 -0
- data/vendor/bundle/gems/multi_json-1.7.3/spec/helper.rb +32 -0
- data/vendor/bundle/gems/multi_json-1.7.3/spec/json_common_shared_example.rb +30 -0
- data/vendor/bundle/gems/multi_json-1.7.3/spec/multi_json_spec.rb +224 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/BUILDING +142 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/COPYING +52 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/README.markdown +72 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/Rakefile +218 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/bin/rdiscount +13 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.c +61 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Makefile +237 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/VERSION +1 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.c +111 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.h +29 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.c +43 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/config.h +25 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.c +85 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/cstring.h +77 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.c +49 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.c +152 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.c +188 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/extconf.rb +37 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.c +84 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.c +1717 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.c +24 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.c +1227 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.h +181 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.c +354 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.h +108 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkmf.log +191 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.bundle +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.c +147 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.c +157 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/ruby-config.h +10 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.c +47 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/siteconf20130510-69347-e72tzr.rb +6 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.c +123 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.h +19 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.c +103 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.c +22 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.c +82 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.c +48 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.o +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/markdown.rb +1 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.bundle +0 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.rb +100 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/man/markdown.7 +1020 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1 +22 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1.ronn +24 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/rdiscount.gemspec +65 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.rb +56 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.txt +306 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/test/markdown_test.rb +158 -0
- data/vendor/bundle/gems/rdiscount-2.0.7.3/test/rdiscount_test.rb +132 -0
- data/vendor/bundle/gems/shoulda-3.5.0/Appraisals +15 -0
- data/vendor/bundle/gems/shoulda-3.5.0/CONTRIBUTING.md +38 -0
- data/vendor/bundle/gems/shoulda-3.5.0/Gemfile +3 -0
- data/vendor/bundle/gems/shoulda-3.5.0/MIT-LICENSE +22 -0
- data/vendor/bundle/gems/shoulda-3.5.0/README.md +103 -0
- data/vendor/bundle/gems/shoulda-3.5.0/Rakefile +17 -0
- data/vendor/bundle/gems/shoulda-3.5.0/features/rails_integration.feature +87 -0
- data/vendor/bundle/gems/shoulda-3.5.0/features/step_definitions/rails_steps.rb +77 -0
- data/vendor/bundle/gems/shoulda-3.5.0/features/support/env.rb +14 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile +7 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile.lock +127 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile +9 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile.lock +148 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile +9 -0
- data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile.lock +146 -0
- data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda/version.rb +3 -0
- data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda.rb +3 -0
- data/vendor/bundle/gems/shoulda-3.5.0/shoulda.gemspec +30 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/Appraisals +17 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/CONTRIBUTING.md +41 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile +15 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile.lock +148 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/MIT-LICENSE +22 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/NEWS.md +181 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/README.md +93 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/Rakefile +28 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/rails_integration.feature +114 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/step_definitions/rails_steps.rb +130 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/support/env.rb +5 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile +14 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile.lock +139 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile +16 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile.lock +160 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile +16 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile.lock +158 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/filter_param_matcher.rb +46 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/redirect_to_matcher.rb +65 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_template_matcher.rb +61 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb +94 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/respond_with_matcher.rb +83 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/route_matcher.rb +96 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_session_matcher.rb +105 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_the_flash_matcher.rb +147 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller.rb +35 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_mass_assignment_of_matcher.rb +113 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_value_matcher.rb +174 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/disallow_value_matcher.rb +42 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_exclusion_of_matcher.rb +94 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_inclusion_of_matcher.rb +156 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_length_of_matcher.rb +176 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/errors.rb +7 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/exception_message_finder.rb +58 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/helpers.rb +45 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/odd_even_number_matcher.rb +47 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/only_integer_matcher.rb +37 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb +41 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb +65 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb +115 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb +64 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_uniqueness_of_matcher.rb +221 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_matcher.rb +89 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_message_finder.rb +70 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model.rb +50 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/accept_nested_attributes_for_matcher.rb +140 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/association_matcher.rb +368 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_column_matcher.rb +195 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_index_matcher.rb +111 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_readonly_attribute_matcher.rb +55 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/serialize_matcher.rb +112 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record.rb +25 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/assertion_error.rb +16 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/rspec.rb +20 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/test_unit.rb +42 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/version.rb +5 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers.rb +8 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda-matchers.rb +1 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/shoulda-matchers.gemspec +33 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/active_model/validate_uniqueness_of_matcher_spec.rb +195 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/filter_param_matcher_spec.rb +22 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/redirect_to_matcher_spec.rb +42 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_template_matcher_spec.rb +78 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb +58 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/respond_with_matcher_spec.rb +31 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/route_matcher_spec.rb +65 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_session_matcher_spec.rb +51 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_the_flash_matcher_spec.rb +153 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb +111 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_value_matcher_spec.rb +146 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/disallow_value_matcher_spec.rb +43 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_exclusion_of_matcher_spec.rb +95 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_inclusion_of_matcher_spec.rb +194 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_length_of_matcher_spec.rb +159 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/exception_message_finder_spec.rb +112 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/helpers_spec.rb +158 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/odd_even_number_matcher_spec.rb +93 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/only_integer_matcher_spec.rb +52 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_acceptance_of_matcher_spec.rb +41 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_confirmation_of_matcher_spec.rb +47 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb +133 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb +143 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb +212 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validation_message_finder_spec.rb +119 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/accept_nested_attributes_for_matcher_spec.rb +106 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/association_matcher_spec.rb +606 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_column_matcher_spec.rb +111 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_index_matcher_spec.rb +78 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_readonly_attributes_matcher_spec.rb +41 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/serialize_matcher_spec.rb +86 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/spec_helper.rb +28 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/active_model_versions.rb +13 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/activemodel_helpers.rb +19 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/class_builder.rb +42 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/controller_builder.rb +80 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/i18n_faker.rb +10 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/mailer_builder.rb +10 -0
- data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/model_builder.rb +77 -0
- data/vendor/bundle/gems/tilt-1.4.1/CHANGELOG.md +44 -0
- data/vendor/bundle/gems/tilt-1.4.1/COPYING +18 -0
- data/vendor/bundle/gems/tilt-1.4.1/Gemfile +32 -0
- data/vendor/bundle/gems/tilt-1.4.1/HACKING +16 -0
- data/vendor/bundle/gems/tilt-1.4.1/README.md +232 -0
- data/vendor/bundle/gems/tilt-1.4.1/Rakefile +104 -0
- data/vendor/bundle/gems/tilt-1.4.1/TEMPLATES.md +516 -0
- data/vendor/bundle/gems/tilt-1.4.1/bin/tilt +112 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/asciidoc.rb +34 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/builder.rb +40 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/coffee.rb +54 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/css.rb +80 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/csv.rb +71 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/erb.rb +110 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/etanni.rb +27 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/haml.rb +64 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/liquid.rb +45 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markaby.rb +52 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markdown.rb +214 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/nokogiri.rb +43 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/plain.rb +20 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/radius.rb +55 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/rdoc.rb +47 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/string.rb +21 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/template.rb +292 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/textile.rb +30 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/wiki.rb +58 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/yajl.rb +94 -0
- data/vendor/bundle/gems/tilt-1.4.1/lib/tilt.rb +204 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/contest.rb +68 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/locals.mab +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby.mab +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby_other_static.mab +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/render_twice.mab +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/scope.mab +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/markaby/yielding.mab +2 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_asciidoctor_test.rb +44 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_blueclothtemplate_test.rb +45 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_buildertemplate_test.rb +59 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_cache_test.rb +32 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_coffeescripttemplate_test.rb +114 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_compilesite_test.rb +51 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_creoletemplate_test.rb +28 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_csv_test.rb +69 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erbtemplate_test.rb +239 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erubistemplate_test.rb +151 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_etannitemplate_test.rb +173 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_fallback_test.rb +122 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_hamltemplate_test.rb +144 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_kramdown_test.rb +42 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.less +1 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.rb +42 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_liquidtemplate_test.rb +78 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markaby_test.rb +88 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markdown_test.rb +172 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_marukutemplate_test.rb +48 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_nokogiritemplate_test.rb +87 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_radiustemplate_test.rb +75 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdiscounttemplate_test.rb +55 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdoctemplate_test.rb +31 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redcarpettemplate_test.rb +71 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redclothtemplate_test.rb +36 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_sasstemplate_test.rb +41 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_stringtemplate_test.rb +170 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_template_test.rb +323 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_test.rb +65 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_wikiclothtemplate_test.rb +32 -0
- data/vendor/bundle/gems/tilt-1.4.1/test/tilt_yajltemplate_test.rb +101 -0
- data/vendor/bundle/gems/tilt-1.4.1/tilt.gemspec +120 -0
- data/vendor/bundle/gems/yard-0.8.6.1/LEGAL +66 -0
- data/vendor/bundle/gems/yard-0.8.6.1/LICENSE +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/README.md +601 -0
- data/vendor/bundle/gems/yard-0.8.6.1/Rakefile +61 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/builtins_vs_eval.rb +23 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/concat_vs_join.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/erb_vs_erubis.rb +53 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/format_args.rb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/generation.rb +37 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/marshal_vs_dbm.rb +63 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/parsing.rb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/pathname_vs_string.rb +50 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/rdoc_vs_yardoc.rb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/registry_store_types.rb +48 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ri_vs_yri.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ripper_parser.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/splat_vs_flatten.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_erb.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_format.rb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_profile.rb +17 -0
- data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/yri_cache.rb +19 -0
- data/vendor/bundle/gems/yard-0.8.6.1/bin/yard +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/bin/yardoc +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/bin/yri +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/CodeObjects.md +115 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/GettingStarted.md +592 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/Handlers.md +152 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/Overview.md +61 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/Parser.md +191 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/Tags.md +282 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/TagsArch.md +123 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/Templates.md +496 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/WhatsNew.md +1244 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/images/code-objects-class-diagram.png +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/images/handlers-class-diagram.png +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/images/overview-class-diagram.png +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/images/parser-class-diagram.png +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/images/tags-class-diagram.png +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/full_list_tag.erb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/setup.rb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/setup.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/tag_list.erb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/list.erb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/setup.rb +27 -0
- data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/plugin.rb +65 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/rubygems_plugin.rb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/autoload.rb +290 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command.rb +84 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command_parser.rb +92 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/config.rb +136 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/diff.rb +270 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/display.rb +68 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/gems.rb +83 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/graph.rb +125 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/help.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/i18n.rb +69 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/list.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/markup_types.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/server.rb +253 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/stats.rb +213 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardoc.rb +731 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardopts_command.rb +109 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yri.rb +214 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/base.rb +585 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_object.rb +143 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_variable_object.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/constant_object.rb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extended_method_object.rb +23 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extra_file_object.rb +128 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/macro_object.rb +172 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/method_object.rb +191 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/module_object.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/namespace_object.rb +200 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/proxy.rb +258 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/root_object.rb +17 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/config.rb +269 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/array.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/file.rb +65 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/hash.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/insertion.rb +60 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/module.rb +19 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/string.rb +67 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/symbol_hash.rb +73 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring.rb +364 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring_parser.rb +321 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/globals.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/base.rb +597 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/alias_handler.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/attribute_handler.rb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/base.rb +110 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/class_handler.rb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/constant_handler.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/handler_methods.rb +166 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/init_handler.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/method_handler.rb +35 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/mixin_handler.rb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/module_handler.rb +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/override_comment_handler.rb +30 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/path_handler.rb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/struct_handler.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/symbol_handler.rb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/processor.rb +201 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/alias_handler.rb +41 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/attribute_handler.rb +82 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/base.rb +164 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_condition_handler.rb +86 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_handler.rb +121 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_variable_handler.rb +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/comment_handler.rb +9 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/constant_handler.rb +45 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler_methods.rb +77 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/exception_handler.rb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/extend_handler.rb +21 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/alias_handler.rb +34 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/attribute_handler.rb +60 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/base.rb +250 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_condition_handler.rb +83 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_handler.rb +111 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_variable_handler.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/comment_handler.rb +9 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/constant_handler.rb +28 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/dsl_handler.rb +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/exception_handler.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/extend_handler.rb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/method_handler.rb +85 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/mixin_handler.rb +39 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_function_handler.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_handler.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/private_constant_handler.rb +21 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/visibility_handler.rb +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/yield_handler.rb +28 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_condition_handler.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_handler.rb +92 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/mixin_handler.rb +36 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_function_handler.rb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_handler.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/private_constant_handler.rb +36 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/struct_handler_methods.rb +141 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/visibility_handler.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/yield_handler.rb +30 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/locale.rb +74 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/message.rb +56 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/messages.rb +55 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/pot_generator.rb +280 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/text.rb +173 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/logging.rb +190 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/options.rb +216 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/base.rb +56 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/c_parser.rb +225 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/comment_parser.rb +131 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/statement.rb +63 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ast_node.rb +496 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_lex.rb +1377 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_parser.rb +31 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement.rb +65 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement_list.rb +384 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/token_list.rb +71 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ruby_parser.rb +625 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/source_parser.rb +517 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rake/yardoc_task.rb +74 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry.rb +438 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry_store.rb +319 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/LICENSE.txt +57 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/MIT.txt +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/gem.rb +9 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/source_index.rb +370 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/doc_manager.rb +88 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/specification.rb +41 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/base.rb +80 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/file_system_serializer.rb +90 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/process_serializer.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/stdout_serializer.rb +32 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/yardoc_serializer.rb +124 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/adapter.rb +100 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/base.rb +192 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_file_command.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_object_command.rb +58 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/frames_command.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_command.rb +148 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_index_command.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/list_command.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/search_command.rb +78 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/static_file_command.rb +57 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_helper.rb +76 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_serializer.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/library_version.rb +227 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/rack_adapter.rb +88 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/router.rb +176 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/static_caching.rb +45 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/css/custom.css +78 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/images/processing.gif +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/js/autocomplete.js +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/breadcrumb.erb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/script_setup.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/setup.rb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/permalink.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/setup.rb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/contents.erb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/headers.erb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/library_list.erb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/setup.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/title.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/processing.erb +51 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/setup.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/search.erb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/setup.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/webrick_adapter.rb +43 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_factory.rb +176 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_tag.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/directives.rb +595 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/library.rb +630 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/option_tag.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/overload_tag.rb +65 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag.rb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag_list.rb +27 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag.rb +57 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag_format_error.rb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/engine.rb +185 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/erb_cache.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/base_helper.rb +212 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/filter_helper.rb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_helper.rb +599 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_syntax_highlight_helper.rb +59 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markdown.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markup.rb +106 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup_helper.rb +169 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/method_helper.rb +74 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/module_helper.rb +19 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/text_helper.rb +95 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/uml_helper.rb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/section.rb +106 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template.rb +407 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template_options.rb +88 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/verifier.rb +148 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/version.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/lib/yard.rb +71 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_parser_spec.rb +43 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_spec.rb +36 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/config_spec.rb +92 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/diff_spec.rb +260 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/display_spec.rb +30 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/gems_spec.rb +81 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/graph_spec.rb +17 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/help_spec.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/i18n_spec.rb +111 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/list_spec.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/markup_types_spec.rb +22 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/server_spec.rb +327 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/stats_spec.rb +90 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yardoc_spec.rb +777 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yri_spec.rb +99 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/base_spec.rb +438 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/class_object_spec.rb +225 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/code_object_list_spec.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/constants_spec.rb +82 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/extra_file_object_spec.rb +147 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/macro_object_spec.rb +148 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/method_object_spec.rb +175 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/module_object_spec.rb +141 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/namespace_object_spec.rb +170 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/proxy_spec.rb +140 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/spec_helper.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/config_spec.rb +176 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/array_spec.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/file_spec.rb +68 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/hash_spec.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/insertion_spec.rb +37 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/module_spec.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/string_spec.rb +42 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/symbol_hash_spec.rb +86 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_parser_spec.rb +228 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_spec.rb +325 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/alias_handler_spec.rb +80 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/attribute_handler_spec.rb +94 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/base_spec.rb +206 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/alias_handler_spec.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/attribute_handler_spec.rb +40 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/class_handler_spec.rb +63 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/constant_handler_spec.rb +68 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/init_handler_spec.rb +47 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/method_handler_spec.rb +229 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/mixin_handler_spec.rb +27 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/module_handler_spec.rb +38 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/override_comment_handler_spec.rb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/path_handler_spec.rb +35 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/spec_helper.rb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/struct_handler_spec.rb +15 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_condition_handler_spec.rb +67 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_handler_spec.rb +246 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_variable_handler_spec.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/constant_handler_spec.rb +64 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/dsl_handler_spec.rb +197 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/alias_handler_001.rb.txt +44 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/attribute_handler_001.rb.txt +32 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_condition_handler_001.rb.txt +69 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_handler_001.rb.txt +120 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_variable_handler_001.rb.txt +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/constant_handler_001.rb.txt +25 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/dsl_handler_001.rb.txt +125 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/exception_handler_001.rb.txt +59 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/extend_handler_001.rb.txt +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_condition_handler_001.rb.txt +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_handler_001.rb.txt +126 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/mixin_handler_001.rb.txt +37 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/module_handler_001.rb.txt +29 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/private_constant_handler_001.rb.txt +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/process_handler_001.rb.txt +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/visibility_handler_001.rb.txt +32 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/yield_handler_001.rb.txt +54 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/exception_handler_spec.rb +48 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/extend_handler_spec.rb +23 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/legacy_base_spec.rb +128 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_condition_handler_spec.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_handler_spec.rb +184 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/mixin_handler_spec.rb +55 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_function_handler_spec.rb +105 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_handler_spec.rb +34 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/private_constant_handler_spec.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/processor_spec.rb +34 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/base_spec.rb +94 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/legacy/base_spec.rb +82 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/spec_helper.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/visibility_handler_spec.rb +39 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/yield_handler_spec.rb +51 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/locale_spec.rb +68 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/message_spec.rb +52 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/messages_spec.rb +67 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/pot_generator_spec.rb +262 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/text_spec.rb +180 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/logging_spec.rb +35 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/options_spec.rb +171 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/base_spec.rb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/c_parser_spec.rb +166 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/array.c.txt +3887 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/example1.rb.txt +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/extrafile.c.txt +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/multifile.c.txt +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/override.c.txt +424 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_001.rb.txt +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_002.rb.txt +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/tag_handler_001.rb.txt +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ast_node_spec.rb +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/statement_list_spec.rb +299 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/token_list_spec.rb +77 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ruby_parser_spec.rb +334 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/source_parser_spec.rb +717 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/tag_parsing_spec.rb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/rake/yardoc_task_spec.rb +101 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_spec.rb +393 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_store_spec.rb +315 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/rubygems/doc_manager_spec.rb +112 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/checksums +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo.dat +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/root.dat +0 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/proxy_types +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/file_system_serializer_spec.rb +124 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/spec_helper.rb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/yardoc_serializer_spec.rb +46 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/adapter_spec.rb +38 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/base_spec.rb +87 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/library_command_spec.rb +39 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/static_file_command_spec.rb +84 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_helper_spec.rb +53 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_serializer_spec.rb +45 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/rack_adapter_spec.rb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/router_spec.rb +122 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/spec_helper.rb +17 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/static_caching_spec.rb +39 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server/webrick_servlet_spec.rb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/server_spec.rb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/spec_helper.rb +128 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_factory_spec.rb +152 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_tag_spec.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/directives_spec.rb +436 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/library_spec.rb +34 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/overload_tag_spec.rb +53 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/ref_tag_list_spec.rb +53 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/class_spec.rb +44 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/constant_spec.rb +40 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/engine_spec.rb +121 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.html +280 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.txt +36 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class002.html +35 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant001.txt +25 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant002.txt +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant003.txt +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.html +130 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.txt +35 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.html +86 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.txt +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.html +159 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.txt +45 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.html +44 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.txt +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.html +99 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.txt +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.dot +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.html +791 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.txt +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module002.html +318 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module003.html +185 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module004.html +387 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/tag001.txt +82 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/base_helper_spec.rb +175 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_helper_spec.rb +612 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +48 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup/rdoc_markup_spec.rb +84 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup_helper_spec.rb +135 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/method_helper_spec.rb +82 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/shared_signature_examples.rb +123 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/text_helper_spec.rb +44 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/method_spec.rb +102 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/module_spec.rb +181 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/onefile_spec.rb +64 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/section_spec.rb +146 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/spec_helper.rb +73 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/tag_spec.rb +51 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/template_spec.rb +409 -0
- data/vendor/bundle/gems/yard-0.8.6.1/spec/verifier_spec.rb +106 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/setup.rb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/superklass.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/constructor_details.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/setup.rb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/subclasses.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/setup.rb +36 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/setup.rb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/subclasses.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/header.erb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/setup.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/abstract.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/deprecated.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/index.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/note.erb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/private.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/returns_void.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/text.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/todo.erb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/setup.rb +49 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/abstract.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/deprecated.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/index.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/note.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/private.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/returns_void.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/text.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/todo.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/common.css +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/full_list.css +57 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/style.css +338 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/frames.erb +28 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list.erb +39 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_class.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_file.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_method.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/app.js +214 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/full_list.js +178 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/jquery.js +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/setup.rb +199 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/header.erb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/setup.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/breadcrumb.erb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/files.erb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/footer.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/headers.erb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/index.erb +2 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/layout.erb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/listing.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/objects.erb +32 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/script_setup.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/search.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/setup.rb +71 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/html/header.erb +16 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/setup.rb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/text/header.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/header.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/method_signature.erb +25 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/source.erb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/setup.rb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/header.erb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/method_signature.erb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/setup.rb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/child.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/dependencies.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/header.erb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/info.erb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/setup.rb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_details.erb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_summary.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/box_info.erb +37 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/children.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/constant_summary.erb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/defines.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/header.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_attributes.erb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_constants.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_methods.erb +19 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/item_summary.erb +40 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_details_list.erb +9 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_summary.erb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/methodmissing.erb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/pre_docstring.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/setup.rb +164 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/children.erb +10 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/class_meths_list.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/extends.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/header.erb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/includes.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/instance_meths_list.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/setup.rb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/files.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/headers.erb +6 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/layout.erb +17 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/readme.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/setup.rb +61 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/child.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/setup.rb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/html/setup.rb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/example.erb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/index.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/option.erb +24 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/overload.erb +14 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/see.erb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/tag.erb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/setup.rb +55 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/example.erb +12 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/index.erb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/option.erb +20 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/overload.erb +19 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/see.erb +11 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/tag.erb +13 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/class/html/setup.rb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/docstring/html/setup.rb +1 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/css/style.css +108 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/js/app.js +33 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/setup.rb +73 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/layout.erb +81 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/setup.rb +28 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/header.erb +18 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/setup.rb +21 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/header.erb +7 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/method_list.erb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/setup.rb +26 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/files.erb +4 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/setup.rb +5 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/toc.erb +3 -0
- data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/tags/html/setup.rb +8 -0
- data/vendor/bundle/gems/yard-0.8.6.1/yard.gemspec +25 -0
- data/vendor/bundle/specifications/highline-1.6.18.gemspec +21 -0
- data/vendor/bundle/specifications/mime-types-1.23.gemspec +67 -0
- data/vendor/bundle/specifications/minitest-4.7.4.gemspec +36 -0
- data/vendor/bundle/specifications/multi_json-1.7.3.gemspec +30 -0
- data/vendor/bundle/specifications/rdiscount-2.0.7.3.gemspec +21 -0
- data/vendor/bundle/specifications/shoulda-3.5.0.gemspec +50 -0
- data/vendor/bundle/specifications/shoulda-matchers-2.1.0.gemspec +57 -0
- data/vendor/bundle/specifications/tilt-1.4.1.gemspec +98 -0
- data/vendor/bundle/specifications/yard-0.8.6.1.gemspec +20 -0
- metadata +964 -2
@@ -0,0 +1,1860 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
require 'minitest/metametameta'
|
3
|
+
|
4
|
+
module MyModule; end
|
5
|
+
class AnError < StandardError; include MyModule; end
|
6
|
+
class ImmutableString < String; def inspect; super.freeze; end; end
|
7
|
+
|
8
|
+
class TestMiniTestUnit < MetaMetaMetaTestCase
|
9
|
+
parallelize_me!
|
10
|
+
|
11
|
+
pwd = Pathname.new File.expand_path Dir.pwd
|
12
|
+
basedir = Pathname.new(File.expand_path "lib/minitest") + 'mini'
|
13
|
+
basedir = basedir.relative_path_from(pwd).to_s
|
14
|
+
MINITEST_BASE_DIR = basedir[/\A\./] ? basedir : "./#{basedir}"
|
15
|
+
BT_MIDDLE = ["#{MINITEST_BASE_DIR}/test.rb:161:in `each'",
|
16
|
+
"#{MINITEST_BASE_DIR}/test.rb:158:in `each'",
|
17
|
+
"#{MINITEST_BASE_DIR}/test.rb:139:in `run'",
|
18
|
+
"#{MINITEST_BASE_DIR}/test.rb:106:in `run'"]
|
19
|
+
|
20
|
+
def test_class_puke_with_assertion_failed
|
21
|
+
exception = MiniTest::Assertion.new "Oh no!"
|
22
|
+
exception.set_backtrace ["unhappy"]
|
23
|
+
assert_equal 'F', @tu.puke('SomeClass', 'method_name', exception)
|
24
|
+
assert_equal 1, @tu.failures
|
25
|
+
assert_match(/^Failure.*Oh no!/m, @tu.report.first)
|
26
|
+
assert_match("SomeClass#method_name [unhappy]", @tu.report.first)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_class_puke_with_assertion_failed_and_long_backtrace
|
30
|
+
bt = (["test/test_some_class.rb:615:in `method_name'",
|
31
|
+
"#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
|
32
|
+
"test/test_some_class.rb:615:in `each'",
|
33
|
+
"test/test_some_class.rb:614:in `test_method_name'",
|
34
|
+
"#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
35
|
+
BT_MIDDLE +
|
36
|
+
["#{MINITEST_BASE_DIR}/test.rb:29"])
|
37
|
+
bt = util_expand_bt bt
|
38
|
+
|
39
|
+
ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
|
40
|
+
|
41
|
+
exception = MiniTest::Assertion.new "Oh no!"
|
42
|
+
exception.set_backtrace bt
|
43
|
+
assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
|
44
|
+
assert_equal 1, @tu.failures
|
45
|
+
assert_match(/^Failure.*Oh no!/m, @tu.report.first)
|
46
|
+
assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_class_puke_with_assertion_failed_and_user_defined_assertions
|
50
|
+
bt = (["lib/test/my/util.rb:16:in `another_method_name'",
|
51
|
+
"#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
|
52
|
+
"lib/test/my/util.rb:15:in `block in assert_something'",
|
53
|
+
"lib/test/my/util.rb:14:in `each'",
|
54
|
+
"lib/test/my/util.rb:14:in `assert_something'",
|
55
|
+
"test/test_some_class.rb:615:in `each'",
|
56
|
+
"test/test_some_class.rb:614:in `test_method_name'",
|
57
|
+
"#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
58
|
+
BT_MIDDLE +
|
59
|
+
["#{MINITEST_BASE_DIR}/test.rb:29"])
|
60
|
+
bt = util_expand_bt bt
|
61
|
+
|
62
|
+
ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
|
63
|
+
|
64
|
+
exception = MiniTest::Assertion.new "Oh no!"
|
65
|
+
exception.set_backtrace bt
|
66
|
+
assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
|
67
|
+
assert_equal 1, @tu.failures
|
68
|
+
assert_match(/^Failure.*Oh no!/m, @tu.report.first)
|
69
|
+
assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
|
70
|
+
end
|
71
|
+
|
72
|
+
def test_class_puke_with_failure_and_flunk_in_backtrace
|
73
|
+
exception = begin
|
74
|
+
MiniTest::Unit::TestCase.new('fake tc').flunk
|
75
|
+
rescue MiniTest::Assertion => failure
|
76
|
+
failure
|
77
|
+
end
|
78
|
+
assert_equal 'F', @tu.puke('SomeClass', 'method_name', exception)
|
79
|
+
refute @tu.report.any?{|line| line =~ /in .flunk/}
|
80
|
+
end
|
81
|
+
|
82
|
+
def test_class_puke_with_flunk_and_user_defined_assertions
|
83
|
+
bt = (["lib/test/my/util.rb:16:in `flunk'",
|
84
|
+
"#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
|
85
|
+
"lib/test/my/util.rb:15:in `block in assert_something'",
|
86
|
+
"lib/test/my/util.rb:14:in `each'",
|
87
|
+
"lib/test/my/util.rb:14:in `assert_something'",
|
88
|
+
"test/test_some_class.rb:615:in `each'",
|
89
|
+
"test/test_some_class.rb:614:in `test_method_name'",
|
90
|
+
"#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
91
|
+
BT_MIDDLE +
|
92
|
+
["#{MINITEST_BASE_DIR}/test.rb:29"])
|
93
|
+
bt = util_expand_bt bt
|
94
|
+
|
95
|
+
ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
|
96
|
+
|
97
|
+
exception = MiniTest::Assertion.new "Oh no!"
|
98
|
+
exception.set_backtrace bt
|
99
|
+
assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
|
100
|
+
assert_equal 1, @tu.failures
|
101
|
+
assert_match(/^Failure.*Oh no!/m, @tu.report.first)
|
102
|
+
assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
|
103
|
+
end
|
104
|
+
|
105
|
+
def test_class_puke_with_non_failure_exception
|
106
|
+
exception = Exception.new("Oh no again!")
|
107
|
+
assert_equal 'E', @tu.puke('SomeClass', 'method_name', exception)
|
108
|
+
assert_equal 1, @tu.errors
|
109
|
+
assert_match(/^Exception.*Oh no again!/m, @tu.report.first)
|
110
|
+
end
|
111
|
+
|
112
|
+
def test_filter_backtrace
|
113
|
+
# this is a semi-lame mix of relative paths.
|
114
|
+
# I cheated by making the autotest parts not have ./
|
115
|
+
bt = (["lib/autotest.rb:571:in `add_exception'",
|
116
|
+
"test/test_autotest.rb:62:in `test_add_exception'",
|
117
|
+
"#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
118
|
+
BT_MIDDLE +
|
119
|
+
["#{MINITEST_BASE_DIR}/test.rb:29",
|
120
|
+
"test/test_autotest.rb:422"])
|
121
|
+
bt = util_expand_bt bt
|
122
|
+
|
123
|
+
ex = ["lib/autotest.rb:571:in `add_exception'",
|
124
|
+
"test/test_autotest.rb:62:in `test_add_exception'"]
|
125
|
+
ex = util_expand_bt ex
|
126
|
+
|
127
|
+
fu = MiniTest::filter_backtrace(bt)
|
128
|
+
|
129
|
+
assert_equal ex, fu
|
130
|
+
end
|
131
|
+
|
132
|
+
def test_filter_backtrace_all_unit
|
133
|
+
bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
134
|
+
BT_MIDDLE +
|
135
|
+
["#{MINITEST_BASE_DIR}/test.rb:29"])
|
136
|
+
ex = bt.clone
|
137
|
+
fu = MiniTest::filter_backtrace(bt)
|
138
|
+
assert_equal ex, fu
|
139
|
+
end
|
140
|
+
|
141
|
+
def test_filter_backtrace_unit_starts
|
142
|
+
bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
|
143
|
+
BT_MIDDLE +
|
144
|
+
["#{MINITEST_BASE_DIR}/mini/test.rb:29",
|
145
|
+
"-e:1"])
|
146
|
+
|
147
|
+
bt = util_expand_bt bt
|
148
|
+
|
149
|
+
ex = ["-e:1"]
|
150
|
+
fu = MiniTest::filter_backtrace bt
|
151
|
+
assert_equal ex, fu
|
152
|
+
end
|
153
|
+
|
154
|
+
def test_default_runner_is_minitest_unit
|
155
|
+
assert_instance_of MiniTest::Unit, MiniTest::Unit.runner
|
156
|
+
end
|
157
|
+
|
158
|
+
|
159
|
+
def test_passed_eh_teardown_good
|
160
|
+
test_class = Class.new MiniTest::Unit::TestCase do
|
161
|
+
def teardown; assert true; end
|
162
|
+
def test_omg; assert true; end
|
163
|
+
end
|
164
|
+
|
165
|
+
test = test_class.new :test_omg
|
166
|
+
test.run @tu
|
167
|
+
assert test.passed?
|
168
|
+
end
|
169
|
+
|
170
|
+
def test_passed_eh_teardown_skipped
|
171
|
+
test_class = Class.new MiniTest::Unit::TestCase do
|
172
|
+
def teardown; assert true; end
|
173
|
+
def test_omg; skip "bork"; end
|
174
|
+
end
|
175
|
+
|
176
|
+
test = test_class.new :test_omg
|
177
|
+
test.run @tu
|
178
|
+
assert test.passed?
|
179
|
+
end
|
180
|
+
|
181
|
+
def test_passed_eh_teardown_flunked
|
182
|
+
test_class = Class.new MiniTest::Unit::TestCase do
|
183
|
+
def teardown; flunk; end
|
184
|
+
def test_omg; assert true; end
|
185
|
+
end
|
186
|
+
|
187
|
+
test = test_class.new :test_omg
|
188
|
+
test.run @tu
|
189
|
+
refute test.passed?
|
190
|
+
end
|
191
|
+
|
192
|
+
def util_expand_bt bt
|
193
|
+
if RUBY_VERSION >= '1.9.0' then
|
194
|
+
bt.map { |f| (f =~ /^\./) ? File.expand_path(f) : f }
|
195
|
+
else
|
196
|
+
bt
|
197
|
+
end
|
198
|
+
end
|
199
|
+
end
|
200
|
+
|
201
|
+
class TestMiniTestUnitInherited < MetaMetaMetaTestCase
|
202
|
+
def with_overridden_include
|
203
|
+
Class.class_eval do
|
204
|
+
def inherited_with_hacks klass
|
205
|
+
throw :inherited_hook
|
206
|
+
end
|
207
|
+
|
208
|
+
alias inherited_without_hacks inherited
|
209
|
+
alias inherited inherited_with_hacks
|
210
|
+
alias IGNORE_ME! inherited # 1.8 bug. god I love venture bros
|
211
|
+
end
|
212
|
+
|
213
|
+
yield
|
214
|
+
ensure
|
215
|
+
Class.class_eval do
|
216
|
+
alias inherited inherited_without_hacks
|
217
|
+
|
218
|
+
undef_method :inherited_with_hacks
|
219
|
+
undef_method :inherited_without_hacks
|
220
|
+
end
|
221
|
+
|
222
|
+
refute_respond_to Class, :inherited_with_hacks
|
223
|
+
refute_respond_to Class, :inherited_without_hacks
|
224
|
+
end
|
225
|
+
|
226
|
+
def test_inherited_hook_plays_nice_with_others
|
227
|
+
with_overridden_include do
|
228
|
+
assert_throws :inherited_hook do
|
229
|
+
Class.new MiniTest::Unit::TestCase
|
230
|
+
end
|
231
|
+
end
|
232
|
+
end
|
233
|
+
end
|
234
|
+
|
235
|
+
class TestMiniTestRunner < MetaMetaMetaTestCase
|
236
|
+
# do not parallelize this suite... it just can't handle it.
|
237
|
+
|
238
|
+
def test_class_test_suites
|
239
|
+
@assertion_count = 0
|
240
|
+
|
241
|
+
tc = Class.new(MiniTest::Unit::TestCase)
|
242
|
+
|
243
|
+
assert_equal 1, MiniTest::Unit::TestCase.test_suites.size
|
244
|
+
assert_equal [tc], MiniTest::Unit::TestCase.test_suites
|
245
|
+
end
|
246
|
+
|
247
|
+
def test_run_test
|
248
|
+
Class.new MiniTest::Unit::TestCase do
|
249
|
+
attr_reader :foo
|
250
|
+
|
251
|
+
def run_test name
|
252
|
+
@foo = "hi mom!"
|
253
|
+
super
|
254
|
+
@foo = "okay"
|
255
|
+
end
|
256
|
+
|
257
|
+
def test_something
|
258
|
+
assert_equal "hi mom!", foo
|
259
|
+
end
|
260
|
+
end
|
261
|
+
|
262
|
+
expected = clean <<-EOM
|
263
|
+
.
|
264
|
+
|
265
|
+
Finished tests in 0.00
|
266
|
+
|
267
|
+
1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
|
268
|
+
EOM
|
269
|
+
|
270
|
+
assert_report expected
|
271
|
+
end
|
272
|
+
|
273
|
+
def test_run_error
|
274
|
+
Class.new MiniTest::Unit::TestCase do
|
275
|
+
def test_something
|
276
|
+
assert true
|
277
|
+
end
|
278
|
+
|
279
|
+
def test_error
|
280
|
+
raise "unhandled exception"
|
281
|
+
end
|
282
|
+
end
|
283
|
+
|
284
|
+
expected = clean <<-EOM
|
285
|
+
E.
|
286
|
+
|
287
|
+
Finished tests in 0.00
|
288
|
+
|
289
|
+
1) Error:
|
290
|
+
#<Class:0xXXX>#test_error:
|
291
|
+
RuntimeError: unhandled exception
|
292
|
+
FILE:LINE:in \`test_error\'
|
293
|
+
|
294
|
+
2 tests, 1 assertions, 0 failures, 1 errors, 0 skips
|
295
|
+
EOM
|
296
|
+
|
297
|
+
assert_report expected
|
298
|
+
end
|
299
|
+
|
300
|
+
def test_run_error_teardown
|
301
|
+
Class.new MiniTest::Unit::TestCase do
|
302
|
+
def test_something
|
303
|
+
assert true
|
304
|
+
end
|
305
|
+
|
306
|
+
def teardown
|
307
|
+
raise "unhandled exception"
|
308
|
+
end
|
309
|
+
end
|
310
|
+
|
311
|
+
expected = clean <<-EOM
|
312
|
+
E
|
313
|
+
|
314
|
+
Finished tests in 0.00
|
315
|
+
|
316
|
+
1) Error:
|
317
|
+
#<Class:0xXXX>#test_something:
|
318
|
+
RuntimeError: unhandled exception
|
319
|
+
FILE:LINE:in \`teardown\'
|
320
|
+
|
321
|
+
1 tests, 1 assertions, 0 failures, 1 errors, 0 skips
|
322
|
+
EOM
|
323
|
+
|
324
|
+
assert_report expected
|
325
|
+
end
|
326
|
+
|
327
|
+
def test_run_failing
|
328
|
+
Class.new MiniTest::Unit::TestCase do
|
329
|
+
def test_something
|
330
|
+
assert true
|
331
|
+
end
|
332
|
+
|
333
|
+
def test_failure
|
334
|
+
assert false
|
335
|
+
end
|
336
|
+
end
|
337
|
+
|
338
|
+
expected = clean <<-EOM
|
339
|
+
F.
|
340
|
+
|
341
|
+
Finished tests in 0.00
|
342
|
+
|
343
|
+
1) Failure:
|
344
|
+
#<Class:0xXXX>#test_failure [FILE:LINE]:
|
345
|
+
Failed assertion, no message given.
|
346
|
+
|
347
|
+
2 tests, 2 assertions, 1 failures, 0 errors, 0 skips
|
348
|
+
EOM
|
349
|
+
|
350
|
+
assert_report expected
|
351
|
+
end
|
352
|
+
|
353
|
+
def test_run_failing_filtered
|
354
|
+
Class.new MiniTest::Unit::TestCase do
|
355
|
+
def test_something
|
356
|
+
assert true
|
357
|
+
end
|
358
|
+
|
359
|
+
def test_failure
|
360
|
+
assert false
|
361
|
+
end
|
362
|
+
end
|
363
|
+
|
364
|
+
expected = clean <<-EOM
|
365
|
+
.
|
366
|
+
|
367
|
+
Finished tests in 0.00
|
368
|
+
|
369
|
+
1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
|
370
|
+
EOM
|
371
|
+
|
372
|
+
assert_report expected, %w[--name /some|thing/ --seed 42]
|
373
|
+
end
|
374
|
+
|
375
|
+
def assert_filtering name, expected, a = false
|
376
|
+
args = %W[--name #{name} --seed 42]
|
377
|
+
|
378
|
+
alpha = Class.new MiniTest::Unit::TestCase do
|
379
|
+
define_method :test_something do
|
380
|
+
assert a
|
381
|
+
end
|
382
|
+
end
|
383
|
+
Object.const_set(:Alpha, alpha)
|
384
|
+
|
385
|
+
beta = Class.new MiniTest::Unit::TestCase do
|
386
|
+
define_method :test_something do
|
387
|
+
assert true
|
388
|
+
end
|
389
|
+
end
|
390
|
+
Object.const_set(:Beta, beta)
|
391
|
+
|
392
|
+
assert_report expected, args
|
393
|
+
ensure
|
394
|
+
Object.send :remove_const, :Alpha
|
395
|
+
Object.send :remove_const, :Beta
|
396
|
+
end
|
397
|
+
|
398
|
+
def test_run_filtered_including_suite_name
|
399
|
+
expected = clean <<-EOM
|
400
|
+
.
|
401
|
+
|
402
|
+
Finished tests in 0.00
|
403
|
+
|
404
|
+
1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
|
405
|
+
EOM
|
406
|
+
|
407
|
+
assert_filtering "/Beta#test_something/", expected
|
408
|
+
end
|
409
|
+
|
410
|
+
def test_run_filtered_including_suite_name_string
|
411
|
+
expected = clean <<-EOM
|
412
|
+
.
|
413
|
+
|
414
|
+
Finished tests in 0.00
|
415
|
+
|
416
|
+
1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
|
417
|
+
EOM
|
418
|
+
|
419
|
+
assert_filtering "Beta#test_something", expected
|
420
|
+
end
|
421
|
+
|
422
|
+
def test_run_filtered_string_method_only
|
423
|
+
expected = clean <<-EOM
|
424
|
+
..
|
425
|
+
|
426
|
+
Finished tests in 0.00
|
427
|
+
|
428
|
+
2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
|
429
|
+
EOM
|
430
|
+
|
431
|
+
assert_filtering "test_something", expected, :pass
|
432
|
+
end
|
433
|
+
|
434
|
+
def test_run_passing
|
435
|
+
Class.new MiniTest::Unit::TestCase do
|
436
|
+
def test_something
|
437
|
+
assert true
|
438
|
+
end
|
439
|
+
end
|
440
|
+
|
441
|
+
expected = clean <<-EOM
|
442
|
+
.
|
443
|
+
|
444
|
+
Finished tests in 0.00
|
445
|
+
|
446
|
+
1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
|
447
|
+
EOM
|
448
|
+
|
449
|
+
assert_report expected
|
450
|
+
end
|
451
|
+
|
452
|
+
def test_run_skip
|
453
|
+
Class.new MiniTest::Unit::TestCase do
|
454
|
+
def test_something
|
455
|
+
assert true
|
456
|
+
end
|
457
|
+
|
458
|
+
def test_skip
|
459
|
+
skip "not yet"
|
460
|
+
end
|
461
|
+
end
|
462
|
+
|
463
|
+
expected = clean <<-EOM
|
464
|
+
S.
|
465
|
+
|
466
|
+
Finished tests in 0.00
|
467
|
+
|
468
|
+
2 tests, 1 assertions, 0 failures, 0 errors, 1 skips
|
469
|
+
EOM
|
470
|
+
|
471
|
+
assert_report expected
|
472
|
+
end
|
473
|
+
|
474
|
+
def test_run_skip_verbose
|
475
|
+
Class.new MiniTest::Unit::TestCase do
|
476
|
+
def test_something
|
477
|
+
assert true
|
478
|
+
end
|
479
|
+
|
480
|
+
def test_skip
|
481
|
+
skip "not yet"
|
482
|
+
end
|
483
|
+
end
|
484
|
+
|
485
|
+
expected = clean <<-EOM
|
486
|
+
#<Class:0xXXX>#test_skip = 0.00 s = S
|
487
|
+
#<Class:0xXXX>#test_something = 0.00 s = .
|
488
|
+
|
489
|
+
|
490
|
+
Finished tests in 0.00
|
491
|
+
|
492
|
+
1) Skipped:
|
493
|
+
#<Class:0xXXX>#test_skip [FILE:LINE]:
|
494
|
+
not yet
|
495
|
+
|
496
|
+
2 tests, 1 assertions, 0 failures, 0 errors, 1 skips
|
497
|
+
EOM
|
498
|
+
|
499
|
+
assert_report expected, %w[--seed 42 --verbose]
|
500
|
+
end
|
501
|
+
|
502
|
+
def test_run_with_other_runner
|
503
|
+
MiniTest::Unit.runner = Class.new MiniTest::Unit do
|
504
|
+
def _run_suite suite, type
|
505
|
+
suite.before_suite # Run once before each suite
|
506
|
+
super suite, type
|
507
|
+
end
|
508
|
+
end.new
|
509
|
+
|
510
|
+
Class.new MiniTest::Unit::TestCase do
|
511
|
+
def self.name; "wacky!" end
|
512
|
+
|
513
|
+
def self.before_suite
|
514
|
+
MiniTest::Unit.output.puts "Running #{self.name} tests"
|
515
|
+
@@foo = 1
|
516
|
+
end
|
517
|
+
|
518
|
+
def test_something
|
519
|
+
assert_equal 1, @@foo
|
520
|
+
end
|
521
|
+
|
522
|
+
def test_something_else
|
523
|
+
assert_equal 1, @@foo
|
524
|
+
end
|
525
|
+
end
|
526
|
+
|
527
|
+
expected = clean <<-EOM
|
528
|
+
Running wacky! tests
|
529
|
+
..
|
530
|
+
|
531
|
+
Finished tests in 0.00
|
532
|
+
|
533
|
+
2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
|
534
|
+
EOM
|
535
|
+
|
536
|
+
assert_report expected
|
537
|
+
end
|
538
|
+
|
539
|
+
require 'monitor'
|
540
|
+
|
541
|
+
class Latch
|
542
|
+
def initialize count = 1
|
543
|
+
@count = count
|
544
|
+
@lock = Monitor.new
|
545
|
+
@cv = @lock.new_cond
|
546
|
+
end
|
547
|
+
|
548
|
+
def release
|
549
|
+
@lock.synchronize do
|
550
|
+
@count -= 1 if @count > 0
|
551
|
+
@cv.broadcast if @count == 0
|
552
|
+
end
|
553
|
+
end
|
554
|
+
|
555
|
+
def await
|
556
|
+
@lock.synchronize { @cv.wait_while { @count > 0 } }
|
557
|
+
end
|
558
|
+
end
|
559
|
+
|
560
|
+
def test_parallel_each_size
|
561
|
+
assert_equal 0, ParallelEach.new([]).size
|
562
|
+
end
|
563
|
+
|
564
|
+
def test_run_parallel
|
565
|
+
skip "I don't have ParallelEach debugged yet" if maglev?
|
566
|
+
|
567
|
+
test_count = 2
|
568
|
+
test_latch = Latch.new test_count
|
569
|
+
main_latch = Latch.new
|
570
|
+
|
571
|
+
thread = Thread.new {
|
572
|
+
Thread.current.abort_on_exception = true
|
573
|
+
|
574
|
+
# This latch waits until both test latches have been released. Both
|
575
|
+
# latches can't be released unless done in separate threads because
|
576
|
+
# `main_latch` keeps the test method from finishing.
|
577
|
+
test_latch.await
|
578
|
+
main_latch.release
|
579
|
+
}
|
580
|
+
|
581
|
+
Class.new MiniTest::Unit::TestCase do
|
582
|
+
parallelize_me!
|
583
|
+
|
584
|
+
test_count.times do |i|
|
585
|
+
define_method :"test_wait_on_main_thread_#{i}" do
|
586
|
+
test_latch.release
|
587
|
+
|
588
|
+
# This latch blocks until the "main thread" releases it. The main
|
589
|
+
# thread can't release this latch until both test latches have
|
590
|
+
# been released. This forces the latches to be released in separate
|
591
|
+
# threads.
|
592
|
+
main_latch.await
|
593
|
+
assert true
|
594
|
+
end
|
595
|
+
end
|
596
|
+
end
|
597
|
+
|
598
|
+
expected = clean <<-EOM
|
599
|
+
..
|
600
|
+
|
601
|
+
Finished tests in 0.00
|
602
|
+
|
603
|
+
2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
|
604
|
+
EOM
|
605
|
+
|
606
|
+
assert_report expected
|
607
|
+
assert thread.join
|
608
|
+
end
|
609
|
+
end
|
610
|
+
|
611
|
+
class TestMiniTestUnitOrder < MetaMetaMetaTestCase
|
612
|
+
# do not parallelize this suite... it just can't handle it.
|
613
|
+
|
614
|
+
def test_before_setup
|
615
|
+
call_order = []
|
616
|
+
Class.new MiniTest::Unit::TestCase do
|
617
|
+
define_method :setup do
|
618
|
+
super()
|
619
|
+
call_order << :setup
|
620
|
+
end
|
621
|
+
|
622
|
+
define_method :before_setup do
|
623
|
+
call_order << :before_setup
|
624
|
+
end
|
625
|
+
|
626
|
+
def test_omg; assert true; end
|
627
|
+
end
|
628
|
+
|
629
|
+
with_output do
|
630
|
+
@tu.run %w[--seed 42]
|
631
|
+
end
|
632
|
+
|
633
|
+
expected = [:before_setup, :setup]
|
634
|
+
assert_equal expected, call_order
|
635
|
+
end
|
636
|
+
|
637
|
+
def test_after_teardown
|
638
|
+
call_order = []
|
639
|
+
Class.new MiniTest::Unit::TestCase do
|
640
|
+
define_method :teardown do
|
641
|
+
super()
|
642
|
+
call_order << :teardown
|
643
|
+
end
|
644
|
+
|
645
|
+
define_method :after_teardown do
|
646
|
+
call_order << :after_teardown
|
647
|
+
end
|
648
|
+
|
649
|
+
def test_omg; assert true; end
|
650
|
+
end
|
651
|
+
|
652
|
+
with_output do
|
653
|
+
@tu.run %w[--seed 42]
|
654
|
+
end
|
655
|
+
|
656
|
+
expected = [:teardown, :after_teardown]
|
657
|
+
assert_equal expected, call_order
|
658
|
+
end
|
659
|
+
|
660
|
+
def test_all_teardowns_are_guaranteed_to_run
|
661
|
+
call_order = []
|
662
|
+
Class.new MiniTest::Unit::TestCase do
|
663
|
+
define_method :after_teardown do
|
664
|
+
super()
|
665
|
+
call_order << :after_teardown
|
666
|
+
raise
|
667
|
+
end
|
668
|
+
|
669
|
+
define_method :teardown do
|
670
|
+
super()
|
671
|
+
call_order << :teardown
|
672
|
+
raise
|
673
|
+
end
|
674
|
+
|
675
|
+
define_method :before_teardown do
|
676
|
+
super()
|
677
|
+
call_order << :before_teardown
|
678
|
+
raise
|
679
|
+
end
|
680
|
+
|
681
|
+
def test_omg; assert true; end
|
682
|
+
end
|
683
|
+
|
684
|
+
with_output do
|
685
|
+
@tu.run %w[--seed 42]
|
686
|
+
end
|
687
|
+
|
688
|
+
expected = [:before_teardown, :teardown, :after_teardown]
|
689
|
+
assert_equal expected, call_order
|
690
|
+
end
|
691
|
+
|
692
|
+
def test_setup_and_teardown_survive_inheritance
|
693
|
+
call_order = []
|
694
|
+
|
695
|
+
parent = Class.new MiniTest::Unit::TestCase do
|
696
|
+
define_method :setup do
|
697
|
+
call_order << :setup_method
|
698
|
+
end
|
699
|
+
|
700
|
+
define_method :teardown do
|
701
|
+
call_order << :teardown_method
|
702
|
+
end
|
703
|
+
|
704
|
+
define_method :test_something do
|
705
|
+
call_order << :test
|
706
|
+
end
|
707
|
+
end
|
708
|
+
|
709
|
+
_ = Class.new parent
|
710
|
+
|
711
|
+
with_output do
|
712
|
+
@tu.run %w[--seed 42]
|
713
|
+
end
|
714
|
+
|
715
|
+
# Once for the parent class, once for the child
|
716
|
+
expected = [:setup_method, :test, :teardown_method] * 2
|
717
|
+
|
718
|
+
assert_equal expected, call_order
|
719
|
+
end
|
720
|
+
end
|
721
|
+
|
722
|
+
class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase
|
723
|
+
# do not call parallelize_me! - teardown accesses @tc._assertions
|
724
|
+
# which is not threadsafe. Nearly every method in here is an
|
725
|
+
# assertion test so it isn't worth splitting it out further.
|
726
|
+
|
727
|
+
RUBY18 = ! defined? Encoding
|
728
|
+
|
729
|
+
def setup
|
730
|
+
super
|
731
|
+
|
732
|
+
MiniTest::Unit::TestCase.reset
|
733
|
+
|
734
|
+
@tc = MiniTest::Unit::TestCase.new 'fake tc'
|
735
|
+
@zomg = "zomg ponies!"
|
736
|
+
@assertion_count = 1
|
737
|
+
end
|
738
|
+
|
739
|
+
def teardown
|
740
|
+
assert_equal(@assertion_count, @tc._assertions,
|
741
|
+
"expected #{@assertion_count} assertions to be fired during the test, not #{@tc._assertions}") if @tc.passed?
|
742
|
+
end
|
743
|
+
|
744
|
+
def non_verbose
|
745
|
+
orig_verbose = $VERBOSE
|
746
|
+
$VERBOSE = false
|
747
|
+
|
748
|
+
yield
|
749
|
+
ensure
|
750
|
+
$VERBOSE = orig_verbose
|
751
|
+
end
|
752
|
+
|
753
|
+
def test_assert
|
754
|
+
@assertion_count = 2
|
755
|
+
|
756
|
+
@tc.assert_equal true, @tc.assert(true), "returns true on success"
|
757
|
+
end
|
758
|
+
|
759
|
+
def test_assert__triggered
|
760
|
+
util_assert_triggered "Failed assertion, no message given." do
|
761
|
+
@tc.assert false
|
762
|
+
end
|
763
|
+
end
|
764
|
+
|
765
|
+
def test_assert__triggered_message
|
766
|
+
util_assert_triggered @zomg do
|
767
|
+
@tc.assert false, @zomg
|
768
|
+
end
|
769
|
+
end
|
770
|
+
|
771
|
+
def test_assert_empty
|
772
|
+
@assertion_count = 2
|
773
|
+
|
774
|
+
@tc.assert_empty []
|
775
|
+
end
|
776
|
+
|
777
|
+
def test_assert_empty_triggered
|
778
|
+
@assertion_count = 2
|
779
|
+
|
780
|
+
util_assert_triggered "Expected [1] to be empty." do
|
781
|
+
@tc.assert_empty [1]
|
782
|
+
end
|
783
|
+
end
|
784
|
+
|
785
|
+
def test_assert_equal
|
786
|
+
@tc.assert_equal 1, 1
|
787
|
+
end
|
788
|
+
|
789
|
+
def test_assert_equal_different_collection_array_hex_invisible
|
790
|
+
object1 = Object.new
|
791
|
+
object2 = Object.new
|
792
|
+
msg = "No visible difference in the Array#inspect output.
|
793
|
+
You should look at the implementation of #== on Array or its members.
|
794
|
+
[#<Object:0xXXXXXX>]".gsub(/^ +/, "")
|
795
|
+
util_assert_triggered msg do
|
796
|
+
@tc.assert_equal [object1], [object2]
|
797
|
+
end
|
798
|
+
end
|
799
|
+
|
800
|
+
def test_assert_equal_different_collection_hash_hex_invisible
|
801
|
+
h1, h2 = {}, {}
|
802
|
+
h1[1] = Object.new
|
803
|
+
h2[1] = Object.new
|
804
|
+
msg = "No visible difference in the Hash#inspect output.
|
805
|
+
You should look at the implementation of #== on Hash or its members.
|
806
|
+
{1=>#<Object:0xXXXXXX>}".gsub(/^ +/, "")
|
807
|
+
|
808
|
+
util_assert_triggered msg do
|
809
|
+
@tc.assert_equal h1, h2
|
810
|
+
end
|
811
|
+
end
|
812
|
+
|
813
|
+
def test_assert_equal_different_diff_deactivated
|
814
|
+
skip "https://github.com/MagLev/maglev/issues/209" if maglev?
|
815
|
+
|
816
|
+
without_diff do
|
817
|
+
util_assert_triggered util_msg("haha" * 10, "blah" * 10) do
|
818
|
+
o1 = "haha" * 10
|
819
|
+
o2 = "blah" * 10
|
820
|
+
|
821
|
+
@tc.assert_equal o1, o2
|
822
|
+
end
|
823
|
+
end
|
824
|
+
end
|
825
|
+
|
826
|
+
def test_assert_equal_different_hex
|
827
|
+
c = Class.new do
|
828
|
+
def initialize s; @name = s; end
|
829
|
+
end
|
830
|
+
|
831
|
+
o1 = c.new "a"
|
832
|
+
o2 = c.new "b"
|
833
|
+
msg = "--- expected
|
834
|
+
+++ actual
|
835
|
+
@@ -1 +1 @@
|
836
|
+
-#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"a\">
|
837
|
+
+#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"b\">
|
838
|
+
".gsub(/^ +/, "")
|
839
|
+
|
840
|
+
util_assert_triggered msg do
|
841
|
+
@tc.assert_equal o1, o2
|
842
|
+
end
|
843
|
+
end
|
844
|
+
|
845
|
+
def test_assert_equal_different_hex_invisible
|
846
|
+
o1 = Object.new
|
847
|
+
o2 = Object.new
|
848
|
+
|
849
|
+
msg = "No visible difference in the Object#inspect output.
|
850
|
+
You should look at the implementation of #== on Object or its members.
|
851
|
+
#<Object:0xXXXXXX>".gsub(/^ +/, "")
|
852
|
+
|
853
|
+
util_assert_triggered msg do
|
854
|
+
@tc.assert_equal o1, o2
|
855
|
+
end
|
856
|
+
end
|
857
|
+
|
858
|
+
def test_assert_equal_different_long
|
859
|
+
msg = "--- expected
|
860
|
+
+++ actual
|
861
|
+
@@ -1 +1 @@
|
862
|
+
-\"hahahahahahahahahahahahahahahahahahahaha\"
|
863
|
+
+\"blahblahblahblahblahblahblahblahblahblah\"
|
864
|
+
".gsub(/^ +/, "")
|
865
|
+
|
866
|
+
util_assert_triggered msg do
|
867
|
+
o1 = "haha" * 10
|
868
|
+
o2 = "blah" * 10
|
869
|
+
|
870
|
+
@tc.assert_equal o1, o2
|
871
|
+
end
|
872
|
+
end
|
873
|
+
|
874
|
+
def test_assert_equal_different_long_invisible
|
875
|
+
msg = "No visible difference in the String#inspect output.
|
876
|
+
You should look at the implementation of #== on String or its members.
|
877
|
+
\"blahblahblahblahblahblahblahblahblahblah\"".gsub(/^ +/, "")
|
878
|
+
|
879
|
+
util_assert_triggered msg do
|
880
|
+
o1 = "blah" * 10
|
881
|
+
o2 = "blah" * 10
|
882
|
+
def o1.== o
|
883
|
+
false
|
884
|
+
end
|
885
|
+
@tc.assert_equal o1, o2
|
886
|
+
end
|
887
|
+
end
|
888
|
+
|
889
|
+
def test_assert_equal_different_long_msg
|
890
|
+
msg = "message.
|
891
|
+
--- expected
|
892
|
+
+++ actual
|
893
|
+
@@ -1 +1 @@
|
894
|
+
-\"hahahahahahahahahahahahahahahahahahahaha\"
|
895
|
+
+\"blahblahblahblahblahblahblahblahblahblah\"
|
896
|
+
".gsub(/^ +/, "")
|
897
|
+
|
898
|
+
util_assert_triggered msg do
|
899
|
+
o1 = "haha" * 10
|
900
|
+
o2 = "blah" * 10
|
901
|
+
@tc.assert_equal o1, o2, "message"
|
902
|
+
end
|
903
|
+
end
|
904
|
+
|
905
|
+
def test_assert_equal_different_short
|
906
|
+
util_assert_triggered util_msg(1, 2) do
|
907
|
+
@tc.assert_equal 1, 2
|
908
|
+
end
|
909
|
+
end
|
910
|
+
|
911
|
+
def test_assert_equal_different_short_msg
|
912
|
+
util_assert_triggered util_msg(1, 2, "message") do
|
913
|
+
@tc.assert_equal 1, 2, "message"
|
914
|
+
end
|
915
|
+
end
|
916
|
+
|
917
|
+
def test_assert_equal_different_short_multiline
|
918
|
+
msg = "--- expected\n+++ actual\n@@ -1,2 +1,2 @@\n \"a\n-b\"\n+c\"\n"
|
919
|
+
util_assert_triggered msg do
|
920
|
+
@tc.assert_equal "a\nb", "a\nc"
|
921
|
+
end
|
922
|
+
end
|
923
|
+
|
924
|
+
def test_assert_in_delta
|
925
|
+
@tc.assert_in_delta 0.0, 1.0 / 1000, 0.1
|
926
|
+
end
|
927
|
+
|
928
|
+
def test_delta_consistency
|
929
|
+
@tc.assert_in_delta 0, 1, 1
|
930
|
+
|
931
|
+
util_assert_triggered "Expected |0 - 1| (1) to not be <= 1." do
|
932
|
+
@tc.refute_in_delta 0, 1, 1
|
933
|
+
end
|
934
|
+
end
|
935
|
+
|
936
|
+
def test_assert_in_delta_triggered
|
937
|
+
x = maglev? ? "9.999999xxxe-07" : "1.0e-06"
|
938
|
+
util_assert_triggered "Expected |0.0 - 0.001| (0.001) to be <= #{x}." do
|
939
|
+
@tc.assert_in_delta 0.0, 1.0 / 1000, 0.000001
|
940
|
+
end
|
941
|
+
end
|
942
|
+
|
943
|
+
def test_assert_in_epsilon
|
944
|
+
@assertion_count = 10
|
945
|
+
|
946
|
+
@tc.assert_in_epsilon 10000, 9991
|
947
|
+
@tc.assert_in_epsilon 9991, 10000
|
948
|
+
@tc.assert_in_epsilon 1.0, 1.001
|
949
|
+
@tc.assert_in_epsilon 1.001, 1.0
|
950
|
+
|
951
|
+
@tc.assert_in_epsilon 10000, 9999.1, 0.0001
|
952
|
+
@tc.assert_in_epsilon 9999.1, 10000, 0.0001
|
953
|
+
@tc.assert_in_epsilon 1.0, 1.0001, 0.0001
|
954
|
+
@tc.assert_in_epsilon 1.0001, 1.0, 0.0001
|
955
|
+
|
956
|
+
@tc.assert_in_epsilon(-1, -1)
|
957
|
+
@tc.assert_in_epsilon(-10000, -9991)
|
958
|
+
end
|
959
|
+
|
960
|
+
def test_epsilon_consistency
|
961
|
+
@tc.assert_in_epsilon 1.0, 1.001
|
962
|
+
|
963
|
+
msg = "Expected |1.0 - 1.001| (0.000999xxx) to not be <= 0.001."
|
964
|
+
util_assert_triggered msg do
|
965
|
+
@tc.refute_in_epsilon 1.0, 1.001
|
966
|
+
end
|
967
|
+
end
|
968
|
+
|
969
|
+
def test_assert_in_epsilon_triggered
|
970
|
+
util_assert_triggered 'Expected |10000 - 9990| (10) to be <= 9.99.' do
|
971
|
+
@tc.assert_in_epsilon 10000, 9990
|
972
|
+
end
|
973
|
+
end
|
974
|
+
|
975
|
+
def test_assert_in_epsilon_triggered_negative_case
|
976
|
+
x = (RUBY18 and not maglev?) ? "0.1" : "0.100000xxx"
|
977
|
+
y = maglev? ? "0.100000xxx" : "0.1"
|
978
|
+
util_assert_triggered "Expected |-1.1 - -1| (#{x}) to be <= #{y}." do
|
979
|
+
@tc.assert_in_epsilon(-1.1, -1, 0.1)
|
980
|
+
end
|
981
|
+
end
|
982
|
+
|
983
|
+
def test_assert_includes
|
984
|
+
@assertion_count = 2
|
985
|
+
|
986
|
+
@tc.assert_includes [true], true
|
987
|
+
end
|
988
|
+
|
989
|
+
def test_assert_includes_triggered
|
990
|
+
@assertion_count = 3
|
991
|
+
|
992
|
+
e = @tc.assert_raises MiniTest::Assertion do
|
993
|
+
@tc.assert_includes [true], false
|
994
|
+
end
|
995
|
+
|
996
|
+
expected = "Expected [true] to include false."
|
997
|
+
assert_equal expected, e.message
|
998
|
+
end
|
999
|
+
|
1000
|
+
def test_assert_instance_of
|
1001
|
+
@tc.assert_instance_of String, "blah"
|
1002
|
+
end
|
1003
|
+
|
1004
|
+
def test_assert_instance_of_triggered
|
1005
|
+
util_assert_triggered 'Expected "blah" to be an instance of Array, not String.' do
|
1006
|
+
@tc.assert_instance_of Array, "blah"
|
1007
|
+
end
|
1008
|
+
end
|
1009
|
+
|
1010
|
+
def test_assert_kind_of
|
1011
|
+
@tc.assert_kind_of String, "blah"
|
1012
|
+
end
|
1013
|
+
|
1014
|
+
def test_assert_kind_of_triggered
|
1015
|
+
util_assert_triggered 'Expected "blah" to be a kind of Array, not String.' do
|
1016
|
+
@tc.assert_kind_of Array, "blah"
|
1017
|
+
end
|
1018
|
+
end
|
1019
|
+
|
1020
|
+
def test_assert_match
|
1021
|
+
@assertion_count = 2
|
1022
|
+
@tc.assert_match(/\w+/, "blah blah blah")
|
1023
|
+
end
|
1024
|
+
|
1025
|
+
def test_assert_match_matcher_object
|
1026
|
+
@assertion_count = 2
|
1027
|
+
|
1028
|
+
pattern = Object.new
|
1029
|
+
def pattern.=~(other) true end
|
1030
|
+
|
1031
|
+
@tc.assert_match pattern, 5
|
1032
|
+
end
|
1033
|
+
|
1034
|
+
def test_assert_match_matchee_to_str
|
1035
|
+
@assertion_count = 2
|
1036
|
+
|
1037
|
+
obj = Object.new
|
1038
|
+
def obj.to_str; "blah" end
|
1039
|
+
|
1040
|
+
@tc.assert_match "blah", obj
|
1041
|
+
end
|
1042
|
+
|
1043
|
+
def test_assert_match_object_triggered
|
1044
|
+
@assertion_count = 2
|
1045
|
+
|
1046
|
+
pattern = Object.new
|
1047
|
+
def pattern.=~(other) false end
|
1048
|
+
def pattern.inspect; "[Object]" end
|
1049
|
+
|
1050
|
+
util_assert_triggered 'Expected [Object] to match 5.' do
|
1051
|
+
@tc.assert_match pattern, 5
|
1052
|
+
end
|
1053
|
+
end
|
1054
|
+
|
1055
|
+
def test_assert_match_triggered
|
1056
|
+
@assertion_count = 2
|
1057
|
+
util_assert_triggered 'Expected /\d+/ to match "blah blah blah".' do
|
1058
|
+
@tc.assert_match(/\d+/, "blah blah blah")
|
1059
|
+
end
|
1060
|
+
end
|
1061
|
+
|
1062
|
+
def test_assert_nil
|
1063
|
+
@tc.assert_nil nil
|
1064
|
+
end
|
1065
|
+
|
1066
|
+
def test_assert_nil_triggered
|
1067
|
+
util_assert_triggered 'Expected 42 to be nil.' do
|
1068
|
+
@tc.assert_nil 42
|
1069
|
+
end
|
1070
|
+
end
|
1071
|
+
|
1072
|
+
def test_assert_operator
|
1073
|
+
@tc.assert_operator 2, :>, 1
|
1074
|
+
end
|
1075
|
+
|
1076
|
+
def test_assert_operator_bad_object
|
1077
|
+
bad = Object.new
|
1078
|
+
def bad.==(other) true end
|
1079
|
+
|
1080
|
+
@tc.assert_operator bad, :equal?, bad
|
1081
|
+
end
|
1082
|
+
|
1083
|
+
def test_assert_operator_triggered
|
1084
|
+
util_assert_triggered "Expected 2 to be < 1." do
|
1085
|
+
@tc.assert_operator 2, :<, 1
|
1086
|
+
end
|
1087
|
+
end
|
1088
|
+
|
1089
|
+
def test_assert_output_both
|
1090
|
+
@assertion_count = 2
|
1091
|
+
|
1092
|
+
@tc.assert_output "yay", "blah" do
|
1093
|
+
print "yay"
|
1094
|
+
$stderr.print "blah"
|
1095
|
+
end
|
1096
|
+
end
|
1097
|
+
|
1098
|
+
def test_assert_output_both_regexps
|
1099
|
+
@assertion_count = 4
|
1100
|
+
|
1101
|
+
@tc.assert_output(/y.y/, /bl.h/) do
|
1102
|
+
print "yay"
|
1103
|
+
$stderr.print "blah"
|
1104
|
+
end
|
1105
|
+
end
|
1106
|
+
|
1107
|
+
def test_assert_output_err
|
1108
|
+
@tc.assert_output nil, "blah" do
|
1109
|
+
$stderr.print "blah"
|
1110
|
+
end
|
1111
|
+
end
|
1112
|
+
|
1113
|
+
def test_assert_output_neither
|
1114
|
+
@assertion_count = 0
|
1115
|
+
|
1116
|
+
@tc.assert_output do
|
1117
|
+
# do nothing
|
1118
|
+
end
|
1119
|
+
end
|
1120
|
+
|
1121
|
+
def test_assert_output_out
|
1122
|
+
@tc.assert_output "blah" do
|
1123
|
+
print "blah"
|
1124
|
+
end
|
1125
|
+
end
|
1126
|
+
|
1127
|
+
def test_assert_output_triggered_both
|
1128
|
+
util_assert_triggered util_msg("blah", "blah blah", "In stderr") do
|
1129
|
+
@tc.assert_output "yay", "blah" do
|
1130
|
+
print "boo"
|
1131
|
+
$stderr.print "blah blah"
|
1132
|
+
end
|
1133
|
+
end
|
1134
|
+
end
|
1135
|
+
|
1136
|
+
def test_assert_output_triggered_err
|
1137
|
+
util_assert_triggered util_msg("blah", "blah blah", "In stderr") do
|
1138
|
+
@tc.assert_output nil, "blah" do
|
1139
|
+
$stderr.print "blah blah"
|
1140
|
+
end
|
1141
|
+
end
|
1142
|
+
end
|
1143
|
+
|
1144
|
+
def test_assert_output_triggered_out
|
1145
|
+
util_assert_triggered util_msg("blah", "blah blah", "In stdout") do
|
1146
|
+
@tc.assert_output "blah" do
|
1147
|
+
print "blah blah"
|
1148
|
+
end
|
1149
|
+
end
|
1150
|
+
end
|
1151
|
+
|
1152
|
+
def test_assert_predicate
|
1153
|
+
@tc.assert_predicate "", :empty?
|
1154
|
+
end
|
1155
|
+
|
1156
|
+
def test_assert_predicate_triggered
|
1157
|
+
util_assert_triggered 'Expected "blah" to be empty?.' do
|
1158
|
+
@tc.assert_predicate "blah", :empty?
|
1159
|
+
end
|
1160
|
+
end
|
1161
|
+
|
1162
|
+
def test_assert_raises
|
1163
|
+
@tc.assert_raises RuntimeError do
|
1164
|
+
raise "blah"
|
1165
|
+
end
|
1166
|
+
end
|
1167
|
+
|
1168
|
+
def test_assert_raises_module
|
1169
|
+
@tc.assert_raises MyModule do
|
1170
|
+
raise AnError
|
1171
|
+
end
|
1172
|
+
end
|
1173
|
+
|
1174
|
+
##
|
1175
|
+
# *sigh* This is quite an odd scenario, but it is from real (albeit
|
1176
|
+
# ugly) test code in ruby-core:
|
1177
|
+
#
|
1178
|
+
# http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29259
|
1179
|
+
|
1180
|
+
def test_assert_raises_skip
|
1181
|
+
@assertion_count = 0
|
1182
|
+
|
1183
|
+
util_assert_triggered "skipped", MiniTest::Skip do
|
1184
|
+
@tc.assert_raises ArgumentError do
|
1185
|
+
begin
|
1186
|
+
raise "blah"
|
1187
|
+
rescue
|
1188
|
+
skip "skipped"
|
1189
|
+
end
|
1190
|
+
end
|
1191
|
+
end
|
1192
|
+
end
|
1193
|
+
|
1194
|
+
def test_assert_raises_triggered_different
|
1195
|
+
e = assert_raises MiniTest::Assertion do
|
1196
|
+
@tc.assert_raises RuntimeError do
|
1197
|
+
raise SyntaxError, "icky"
|
1198
|
+
end
|
1199
|
+
end
|
1200
|
+
|
1201
|
+
expected = clean <<-EOM.chomp
|
1202
|
+
[RuntimeError] exception expected, not
|
1203
|
+
Class: <SyntaxError>
|
1204
|
+
Message: <\"icky\">
|
1205
|
+
---Backtrace---
|
1206
|
+
FILE:LINE:in \`test_assert_raises_triggered_different\'
|
1207
|
+
---------------
|
1208
|
+
EOM
|
1209
|
+
|
1210
|
+
actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
|
1211
|
+
actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
|
1212
|
+
|
1213
|
+
assert_equal expected, actual
|
1214
|
+
end
|
1215
|
+
|
1216
|
+
def test_assert_raises_triggered_different_msg
|
1217
|
+
e = assert_raises MiniTest::Assertion do
|
1218
|
+
@tc.assert_raises RuntimeError, "XXX" do
|
1219
|
+
raise SyntaxError, "icky"
|
1220
|
+
end
|
1221
|
+
end
|
1222
|
+
|
1223
|
+
expected = clean <<-EOM
|
1224
|
+
XXX.
|
1225
|
+
[RuntimeError] exception expected, not
|
1226
|
+
Class: <SyntaxError>
|
1227
|
+
Message: <\"icky\">
|
1228
|
+
---Backtrace---
|
1229
|
+
FILE:LINE:in \`test_assert_raises_triggered_different_msg\'
|
1230
|
+
---------------
|
1231
|
+
EOM
|
1232
|
+
|
1233
|
+
actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
|
1234
|
+
actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
|
1235
|
+
|
1236
|
+
assert_equal expected.chomp, actual
|
1237
|
+
end
|
1238
|
+
|
1239
|
+
def test_assert_raises_triggered_none
|
1240
|
+
e = assert_raises MiniTest::Assertion do
|
1241
|
+
@tc.assert_raises MiniTest::Assertion do
|
1242
|
+
# do nothing
|
1243
|
+
end
|
1244
|
+
end
|
1245
|
+
|
1246
|
+
expected = "MiniTest::Assertion expected but nothing was raised."
|
1247
|
+
|
1248
|
+
assert_equal expected, e.message
|
1249
|
+
end
|
1250
|
+
|
1251
|
+
def test_assert_raises_triggered_none_msg
|
1252
|
+
e = assert_raises MiniTest::Assertion do
|
1253
|
+
@tc.assert_raises MiniTest::Assertion, "XXX" do
|
1254
|
+
# do nothing
|
1255
|
+
end
|
1256
|
+
end
|
1257
|
+
|
1258
|
+
expected = "XXX.\nMiniTest::Assertion expected but nothing was raised."
|
1259
|
+
|
1260
|
+
assert_equal expected, e.message
|
1261
|
+
end
|
1262
|
+
|
1263
|
+
def test_assert_raises_triggered_subclass
|
1264
|
+
e = assert_raises MiniTest::Assertion do
|
1265
|
+
@tc.assert_raises StandardError do
|
1266
|
+
raise AnError
|
1267
|
+
end
|
1268
|
+
end
|
1269
|
+
|
1270
|
+
expected = clean <<-EOM.chomp
|
1271
|
+
[StandardError] exception expected, not
|
1272
|
+
Class: <AnError>
|
1273
|
+
Message: <\"AnError\">
|
1274
|
+
---Backtrace---
|
1275
|
+
FILE:LINE:in \`test_assert_raises_triggered_subclass\'
|
1276
|
+
---------------
|
1277
|
+
EOM
|
1278
|
+
|
1279
|
+
actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
|
1280
|
+
actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
|
1281
|
+
|
1282
|
+
assert_equal expected, actual
|
1283
|
+
end
|
1284
|
+
|
1285
|
+
def test_assert_respond_to
|
1286
|
+
@tc.assert_respond_to "blah", :empty?
|
1287
|
+
end
|
1288
|
+
|
1289
|
+
def test_assert_respond_to_triggered
|
1290
|
+
util_assert_triggered 'Expected "blah" (String) to respond to #rawr!.' do
|
1291
|
+
@tc.assert_respond_to "blah", :rawr!
|
1292
|
+
end
|
1293
|
+
end
|
1294
|
+
|
1295
|
+
def test_assert_same
|
1296
|
+
@assertion_count = 3
|
1297
|
+
|
1298
|
+
o = "blah"
|
1299
|
+
@tc.assert_same 1, 1
|
1300
|
+
@tc.assert_same :blah, :blah
|
1301
|
+
@tc.assert_same o, o
|
1302
|
+
end
|
1303
|
+
|
1304
|
+
def test_assert_same_triggered
|
1305
|
+
@assertion_count = 2
|
1306
|
+
|
1307
|
+
util_assert_triggered 'Expected 2 (oid=N) to be the same as 1 (oid=N).' do
|
1308
|
+
@tc.assert_same 1, 2
|
1309
|
+
end
|
1310
|
+
|
1311
|
+
s1 = "blah"
|
1312
|
+
s2 = "blah"
|
1313
|
+
|
1314
|
+
util_assert_triggered 'Expected "blah" (oid=N) to be the same as "blah" (oid=N).' do
|
1315
|
+
@tc.assert_same s1, s2
|
1316
|
+
end
|
1317
|
+
end
|
1318
|
+
|
1319
|
+
def test_assert_send
|
1320
|
+
@tc.assert_send [1, :<, 2]
|
1321
|
+
end
|
1322
|
+
|
1323
|
+
def test_assert_send_bad
|
1324
|
+
util_assert_triggered "Expected 1.>(*[2]) to return true." do
|
1325
|
+
@tc.assert_send [1, :>, 2]
|
1326
|
+
end
|
1327
|
+
end
|
1328
|
+
|
1329
|
+
def test_assert_silent
|
1330
|
+
@assertion_count = 2
|
1331
|
+
|
1332
|
+
@tc.assert_silent do
|
1333
|
+
# do nothing
|
1334
|
+
end
|
1335
|
+
end
|
1336
|
+
|
1337
|
+
def test_assert_silent_triggered_err
|
1338
|
+
util_assert_triggered util_msg("", "blah blah", "In stderr") do
|
1339
|
+
@tc.assert_silent do
|
1340
|
+
$stderr.print "blah blah"
|
1341
|
+
end
|
1342
|
+
end
|
1343
|
+
end
|
1344
|
+
|
1345
|
+
def test_assert_silent_triggered_out
|
1346
|
+
@assertion_count = 2
|
1347
|
+
|
1348
|
+
util_assert_triggered util_msg("", "blah blah", "In stdout") do
|
1349
|
+
@tc.assert_silent do
|
1350
|
+
print "blah blah"
|
1351
|
+
end
|
1352
|
+
end
|
1353
|
+
end
|
1354
|
+
|
1355
|
+
def test_assert_throws
|
1356
|
+
@tc.assert_throws :blah do
|
1357
|
+
throw :blah
|
1358
|
+
end
|
1359
|
+
end
|
1360
|
+
|
1361
|
+
def test_assert_throws_different
|
1362
|
+
util_assert_triggered 'Expected :blah to have been thrown, not :not_blah.' do
|
1363
|
+
@tc.assert_throws :blah do
|
1364
|
+
throw :not_blah
|
1365
|
+
end
|
1366
|
+
end
|
1367
|
+
end
|
1368
|
+
|
1369
|
+
def test_assert_throws_unthrown
|
1370
|
+
util_assert_triggered 'Expected :blah to have been thrown.' do
|
1371
|
+
@tc.assert_throws :blah do
|
1372
|
+
# do nothing
|
1373
|
+
end
|
1374
|
+
end
|
1375
|
+
end
|
1376
|
+
|
1377
|
+
def test_capture_io
|
1378
|
+
@assertion_count = 0
|
1379
|
+
|
1380
|
+
non_verbose do
|
1381
|
+
out, err = capture_io do
|
1382
|
+
puts 'hi'
|
1383
|
+
$stderr.puts 'bye!'
|
1384
|
+
end
|
1385
|
+
|
1386
|
+
assert_equal "hi\n", out
|
1387
|
+
assert_equal "bye!\n", err
|
1388
|
+
end
|
1389
|
+
end
|
1390
|
+
|
1391
|
+
def test_capture_subprocess_io
|
1392
|
+
@assertion_count = 0
|
1393
|
+
skip "Dunno why but the parallel run of this fails"
|
1394
|
+
|
1395
|
+
non_verbose do
|
1396
|
+
out, err = capture_subprocess_io do
|
1397
|
+
system("echo 'hi'")
|
1398
|
+
system("echo 'bye!' 1>&2")
|
1399
|
+
end
|
1400
|
+
|
1401
|
+
assert_equal "hi\n", out
|
1402
|
+
assert_equal "bye!\n", err
|
1403
|
+
end
|
1404
|
+
end
|
1405
|
+
|
1406
|
+
def test_class_asserts_match_refutes
|
1407
|
+
@assertion_count = 0
|
1408
|
+
|
1409
|
+
methods = MiniTest::Assertions.public_instance_methods
|
1410
|
+
methods.map! { |m| m.to_s } if Symbol === methods.first
|
1411
|
+
|
1412
|
+
# These don't have corresponding refutes _on purpose_. They're
|
1413
|
+
# useless and will never be added, so don't bother.
|
1414
|
+
ignores = %w[assert_output assert_raises assert_send
|
1415
|
+
assert_silent assert_throws]
|
1416
|
+
|
1417
|
+
# These are test/unit methods. I'm not actually sure why they're still here
|
1418
|
+
ignores += %w[assert_no_match assert_not_equal assert_not_nil
|
1419
|
+
assert_not_same assert_nothing_raised
|
1420
|
+
assert_nothing_thrown assert_raise]
|
1421
|
+
|
1422
|
+
asserts = methods.grep(/^assert/).sort - ignores
|
1423
|
+
refutes = methods.grep(/^refute/).sort - ignores
|
1424
|
+
|
1425
|
+
assert_empty refutes.map { |n| n.sub(/^refute/, 'assert') } - asserts
|
1426
|
+
assert_empty asserts.map { |n| n.sub(/^assert/, 'refute') } - refutes
|
1427
|
+
end
|
1428
|
+
|
1429
|
+
def test_flunk
|
1430
|
+
util_assert_triggered 'Epic Fail!' do
|
1431
|
+
@tc.flunk
|
1432
|
+
end
|
1433
|
+
end
|
1434
|
+
|
1435
|
+
def test_flunk_message
|
1436
|
+
util_assert_triggered @zomg do
|
1437
|
+
@tc.flunk @zomg
|
1438
|
+
end
|
1439
|
+
end
|
1440
|
+
|
1441
|
+
def test_message
|
1442
|
+
@assertion_count = 0
|
1443
|
+
|
1444
|
+
assert_equal "blah2.", @tc.message { "blah2" }.call
|
1445
|
+
assert_equal "blah2.", @tc.message("") { "blah2" }.call
|
1446
|
+
assert_equal "blah1.\nblah2.", @tc.message(:blah1) { "blah2" }.call
|
1447
|
+
assert_equal "blah1.\nblah2.", @tc.message("blah1") { "blah2" }.call
|
1448
|
+
|
1449
|
+
message = proc { "blah1" }
|
1450
|
+
assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
|
1451
|
+
|
1452
|
+
message = @tc.message { "blah1" }
|
1453
|
+
assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
|
1454
|
+
end
|
1455
|
+
|
1456
|
+
def test_message_message
|
1457
|
+
util_assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
|
1458
|
+
@tc.assert_equal 1, 2, message { "whoops" }
|
1459
|
+
end
|
1460
|
+
end
|
1461
|
+
|
1462
|
+
def test_message_lambda
|
1463
|
+
util_assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
|
1464
|
+
@tc.assert_equal 1, 2, lambda { "whoops" }
|
1465
|
+
end
|
1466
|
+
end
|
1467
|
+
|
1468
|
+
def test_message_deferred
|
1469
|
+
@assertion_count, var = 0, nil
|
1470
|
+
|
1471
|
+
msg = message { var = "blah" }
|
1472
|
+
|
1473
|
+
assert_nil var
|
1474
|
+
|
1475
|
+
msg.call
|
1476
|
+
|
1477
|
+
assert_equal "blah", var
|
1478
|
+
end
|
1479
|
+
|
1480
|
+
def test_pass
|
1481
|
+
@tc.pass
|
1482
|
+
end
|
1483
|
+
|
1484
|
+
def test_prints
|
1485
|
+
printer = Class.new { extend MiniTest::Assertions }
|
1486
|
+
@tc.assert_equal '"test"', printer.mu_pp(ImmutableString.new 'test')
|
1487
|
+
end
|
1488
|
+
|
1489
|
+
def test_refute
|
1490
|
+
@assertion_count = 2
|
1491
|
+
|
1492
|
+
@tc.assert_equal false, @tc.refute(false), "returns false on success"
|
1493
|
+
end
|
1494
|
+
|
1495
|
+
def test_refute_empty
|
1496
|
+
@assertion_count = 2
|
1497
|
+
|
1498
|
+
@tc.refute_empty [1]
|
1499
|
+
end
|
1500
|
+
|
1501
|
+
def test_refute_empty_triggered
|
1502
|
+
@assertion_count = 2
|
1503
|
+
|
1504
|
+
util_assert_triggered "Expected [] to not be empty." do
|
1505
|
+
@tc.refute_empty []
|
1506
|
+
end
|
1507
|
+
end
|
1508
|
+
|
1509
|
+
def test_refute_equal
|
1510
|
+
@tc.refute_equal "blah", "yay"
|
1511
|
+
end
|
1512
|
+
|
1513
|
+
def test_refute_equal_triggered
|
1514
|
+
util_assert_triggered 'Expected "blah" to not be equal to "blah".' do
|
1515
|
+
@tc.refute_equal "blah", "blah"
|
1516
|
+
end
|
1517
|
+
end
|
1518
|
+
|
1519
|
+
def test_refute_in_delta
|
1520
|
+
@tc.refute_in_delta 0.0, 1.0 / 1000, 0.000001
|
1521
|
+
end
|
1522
|
+
|
1523
|
+
def test_refute_in_delta_triggered
|
1524
|
+
x = maglev? ? "0.100000xxx" : "0.1"
|
1525
|
+
util_assert_triggered "Expected |0.0 - 0.001| (0.001) to not be <= #{x}." do
|
1526
|
+
@tc.refute_in_delta 0.0, 1.0 / 1000, 0.1
|
1527
|
+
end
|
1528
|
+
end
|
1529
|
+
|
1530
|
+
def test_refute_in_epsilon
|
1531
|
+
@tc.refute_in_epsilon 10000, 9990-1
|
1532
|
+
end
|
1533
|
+
|
1534
|
+
def test_refute_in_epsilon_triggered
|
1535
|
+
util_assert_triggered 'Expected |10000 - 9990| (10) to not be <= 10.0.' do
|
1536
|
+
@tc.refute_in_epsilon 10000, 9990
|
1537
|
+
fail
|
1538
|
+
end
|
1539
|
+
end
|
1540
|
+
|
1541
|
+
def test_refute_includes
|
1542
|
+
@assertion_count = 2
|
1543
|
+
|
1544
|
+
@tc.refute_includes [true], false
|
1545
|
+
end
|
1546
|
+
|
1547
|
+
def test_refute_includes_triggered
|
1548
|
+
@assertion_count = 3
|
1549
|
+
|
1550
|
+
e = @tc.assert_raises MiniTest::Assertion do
|
1551
|
+
@tc.refute_includes [true], true
|
1552
|
+
end
|
1553
|
+
|
1554
|
+
expected = "Expected [true] to not include true."
|
1555
|
+
assert_equal expected, e.message
|
1556
|
+
end
|
1557
|
+
|
1558
|
+
def test_refute_instance_of
|
1559
|
+
@tc.refute_instance_of Array, "blah"
|
1560
|
+
end
|
1561
|
+
|
1562
|
+
def test_refute_instance_of_triggered
|
1563
|
+
util_assert_triggered 'Expected "blah" to not be an instance of String.' do
|
1564
|
+
@tc.refute_instance_of String, "blah"
|
1565
|
+
end
|
1566
|
+
end
|
1567
|
+
|
1568
|
+
def test_refute_kind_of
|
1569
|
+
@tc.refute_kind_of Array, "blah"
|
1570
|
+
end
|
1571
|
+
|
1572
|
+
def test_refute_kind_of_triggered
|
1573
|
+
util_assert_triggered 'Expected "blah" to not be a kind of String.' do
|
1574
|
+
@tc.refute_kind_of String, "blah"
|
1575
|
+
end
|
1576
|
+
end
|
1577
|
+
|
1578
|
+
def test_refute_match
|
1579
|
+
@assertion_count = 2
|
1580
|
+
@tc.refute_match(/\d+/, "blah blah blah")
|
1581
|
+
end
|
1582
|
+
|
1583
|
+
def test_refute_match_matcher_object
|
1584
|
+
@assertion_count = 2
|
1585
|
+
@tc.refute_match Object.new, 5 # default #=~ returns false
|
1586
|
+
end
|
1587
|
+
|
1588
|
+
def test_refute_match_object_triggered
|
1589
|
+
@assertion_count = 2
|
1590
|
+
|
1591
|
+
pattern = Object.new
|
1592
|
+
def pattern.=~(other) true end
|
1593
|
+
def pattern.inspect; "[Object]" end
|
1594
|
+
|
1595
|
+
util_assert_triggered 'Expected [Object] to not match 5.' do
|
1596
|
+
@tc.refute_match pattern, 5
|
1597
|
+
end
|
1598
|
+
end
|
1599
|
+
|
1600
|
+
def test_refute_match_triggered
|
1601
|
+
@assertion_count = 2
|
1602
|
+
util_assert_triggered 'Expected /\w+/ to not match "blah blah blah".' do
|
1603
|
+
@tc.refute_match(/\w+/, "blah blah blah")
|
1604
|
+
end
|
1605
|
+
end
|
1606
|
+
|
1607
|
+
def test_refute_nil
|
1608
|
+
@tc.refute_nil 42
|
1609
|
+
end
|
1610
|
+
|
1611
|
+
def test_refute_nil_triggered
|
1612
|
+
util_assert_triggered 'Expected nil to not be nil.' do
|
1613
|
+
@tc.refute_nil nil
|
1614
|
+
end
|
1615
|
+
end
|
1616
|
+
|
1617
|
+
def test_refute_predicate
|
1618
|
+
@tc.refute_predicate "42", :empty?
|
1619
|
+
end
|
1620
|
+
|
1621
|
+
def test_refute_predicate_triggered
|
1622
|
+
util_assert_triggered 'Expected "" to not be empty?.' do
|
1623
|
+
@tc.refute_predicate "", :empty?
|
1624
|
+
end
|
1625
|
+
end
|
1626
|
+
|
1627
|
+
def test_refute_operator
|
1628
|
+
@tc.refute_operator 2, :<, 1
|
1629
|
+
end
|
1630
|
+
|
1631
|
+
def test_refute_operator_bad_object
|
1632
|
+
bad = Object.new
|
1633
|
+
def bad.==(other) true end
|
1634
|
+
|
1635
|
+
@tc.refute_operator true, :equal?, bad
|
1636
|
+
end
|
1637
|
+
|
1638
|
+
def test_refute_operator_triggered
|
1639
|
+
util_assert_triggered "Expected 2 to not be > 1." do
|
1640
|
+
@tc.refute_operator 2, :>, 1
|
1641
|
+
end
|
1642
|
+
end
|
1643
|
+
|
1644
|
+
def test_refute_respond_to
|
1645
|
+
@tc.refute_respond_to "blah", :rawr!
|
1646
|
+
end
|
1647
|
+
|
1648
|
+
def test_refute_respond_to_triggered
|
1649
|
+
util_assert_triggered 'Expected "blah" to not respond to empty?.' do
|
1650
|
+
@tc.refute_respond_to "blah", :empty?
|
1651
|
+
end
|
1652
|
+
end
|
1653
|
+
|
1654
|
+
def test_refute_same
|
1655
|
+
@tc.refute_same 1, 2
|
1656
|
+
end
|
1657
|
+
|
1658
|
+
def test_refute_same_triggered
|
1659
|
+
util_assert_triggered 'Expected 1 (oid=N) to not be the same as 1 (oid=N).' do
|
1660
|
+
@tc.refute_same 1, 1
|
1661
|
+
end
|
1662
|
+
end
|
1663
|
+
|
1664
|
+
def test_skip
|
1665
|
+
@assertion_count = 0
|
1666
|
+
|
1667
|
+
util_assert_triggered "haha!", MiniTest::Skip do
|
1668
|
+
@tc.skip "haha!"
|
1669
|
+
end
|
1670
|
+
end
|
1671
|
+
|
1672
|
+
def test_test_methods_random
|
1673
|
+
@assertion_count = 0
|
1674
|
+
|
1675
|
+
sample_test_case = Class.new MiniTest::Unit::TestCase do
|
1676
|
+
def self.test_order; :random; end
|
1677
|
+
def test_test1; assert "does not matter" end
|
1678
|
+
def test_test2; assert "does not matter" end
|
1679
|
+
def test_test3; assert "does not matter" end
|
1680
|
+
end
|
1681
|
+
|
1682
|
+
srand 42
|
1683
|
+
expected = case
|
1684
|
+
when maglev? then
|
1685
|
+
%w(test_test2 test_test3 test_test1)
|
1686
|
+
else
|
1687
|
+
%w(test_test2 test_test1 test_test3)
|
1688
|
+
end
|
1689
|
+
assert_equal expected, sample_test_case.test_methods
|
1690
|
+
end
|
1691
|
+
|
1692
|
+
def test_test_methods_sorted
|
1693
|
+
@assertion_count = 0
|
1694
|
+
|
1695
|
+
sample_test_case = Class.new MiniTest::Unit::TestCase do
|
1696
|
+
def self.test_order; :sorted end
|
1697
|
+
def test_test3; assert "does not matter" end
|
1698
|
+
def test_test2; assert "does not matter" end
|
1699
|
+
def test_test1; assert "does not matter" end
|
1700
|
+
end
|
1701
|
+
|
1702
|
+
expected = %w(test_test1 test_test2 test_test3)
|
1703
|
+
assert_equal expected, sample_test_case.test_methods
|
1704
|
+
end
|
1705
|
+
|
1706
|
+
def test_i_suck_and_my_tests_are_order_dependent_bang_sets_test_order_alpha
|
1707
|
+
@assertion_count = 0
|
1708
|
+
|
1709
|
+
shitty_test_case = Class.new MiniTest::Unit::TestCase
|
1710
|
+
|
1711
|
+
shitty_test_case.i_suck_and_my_tests_are_order_dependent!
|
1712
|
+
|
1713
|
+
assert_equal :alpha, shitty_test_case.test_order
|
1714
|
+
end
|
1715
|
+
|
1716
|
+
def test_i_suck_and_my_tests_are_order_dependent_bang_does_not_warn
|
1717
|
+
@assertion_count = 0
|
1718
|
+
|
1719
|
+
shitty_test_case = Class.new MiniTest::Unit::TestCase
|
1720
|
+
|
1721
|
+
def shitty_test_case.test_order ; :lol end
|
1722
|
+
|
1723
|
+
assert_silent do
|
1724
|
+
shitty_test_case.i_suck_and_my_tests_are_order_dependent!
|
1725
|
+
end
|
1726
|
+
end
|
1727
|
+
|
1728
|
+
def util_assert_triggered expected, klass = MiniTest::Assertion
|
1729
|
+
e = assert_raises klass do
|
1730
|
+
yield
|
1731
|
+
end
|
1732
|
+
|
1733
|
+
msg = e.message.sub(/(---Backtrace---).*/m, '\1')
|
1734
|
+
msg.gsub!(/\(oid=[-0-9]+\)/, '(oid=N)')
|
1735
|
+
msg.gsub!(/(\d\.\d{6})\d+/, '\1xxx') # normalize: ruby version, impl, platform
|
1736
|
+
|
1737
|
+
assert_equal expected, msg
|
1738
|
+
end
|
1739
|
+
|
1740
|
+
def util_msg exp, act, msg = nil
|
1741
|
+
s = "Expected: #{exp.inspect}\n Actual: #{act.inspect}"
|
1742
|
+
s = "#{msg}.\n#{s}" if msg
|
1743
|
+
s
|
1744
|
+
end
|
1745
|
+
|
1746
|
+
def without_diff
|
1747
|
+
old_diff = MiniTest::Assertions.diff
|
1748
|
+
MiniTest::Assertions.diff = nil
|
1749
|
+
|
1750
|
+
yield
|
1751
|
+
ensure
|
1752
|
+
MiniTest::Assertions.diff = old_diff
|
1753
|
+
end
|
1754
|
+
end
|
1755
|
+
|
1756
|
+
class TestMiniTestGuard < MiniTest::Unit::TestCase
|
1757
|
+
parallelize_me!
|
1758
|
+
|
1759
|
+
def test_mri_eh
|
1760
|
+
assert self.class.mri? "ruby blah"
|
1761
|
+
assert self.mri? "ruby blah"
|
1762
|
+
end
|
1763
|
+
|
1764
|
+
def test_jruby_eh
|
1765
|
+
assert self.class.jruby? "java"
|
1766
|
+
assert self.jruby? "java"
|
1767
|
+
end
|
1768
|
+
|
1769
|
+
def test_rubinius_eh
|
1770
|
+
assert self.class.rubinius? "rbx"
|
1771
|
+
assert self.rubinius? "rbx"
|
1772
|
+
end
|
1773
|
+
|
1774
|
+
def test_windows_eh
|
1775
|
+
assert self.class.windows? "mswin"
|
1776
|
+
assert self.windows? "mswin"
|
1777
|
+
end
|
1778
|
+
end
|
1779
|
+
|
1780
|
+
class TestMiniTestUnitRecording < MetaMetaMetaTestCase
|
1781
|
+
# do not parallelize this suite... it just can't handle it.
|
1782
|
+
|
1783
|
+
def assert_run_record(*expected, &block)
|
1784
|
+
def @tu.record suite, method, assertions, time, error
|
1785
|
+
recording[method] << error
|
1786
|
+
end
|
1787
|
+
|
1788
|
+
def @tu.recording
|
1789
|
+
@recording ||= Hash.new { |h,k| h[k] = [] }
|
1790
|
+
end
|
1791
|
+
|
1792
|
+
MiniTest::Unit.runner = @tu
|
1793
|
+
|
1794
|
+
Class.new MiniTest::Unit::TestCase, &block
|
1795
|
+
|
1796
|
+
with_output do
|
1797
|
+
@tu.run
|
1798
|
+
end
|
1799
|
+
|
1800
|
+
recorded = @tu.recording.fetch("test_method").map(&:class)
|
1801
|
+
|
1802
|
+
assert_equal expected, recorded
|
1803
|
+
end
|
1804
|
+
|
1805
|
+
def test_record_passing
|
1806
|
+
assert_run_record NilClass do
|
1807
|
+
def test_method
|
1808
|
+
assert true
|
1809
|
+
end
|
1810
|
+
end
|
1811
|
+
end
|
1812
|
+
|
1813
|
+
def test_record_failing
|
1814
|
+
assert_run_record MiniTest::Assertion do
|
1815
|
+
def test_method
|
1816
|
+
assert false
|
1817
|
+
end
|
1818
|
+
end
|
1819
|
+
end
|
1820
|
+
|
1821
|
+
def test_record_error
|
1822
|
+
assert_run_record RuntimeError do
|
1823
|
+
def test_method
|
1824
|
+
raise "unhandled exception"
|
1825
|
+
end
|
1826
|
+
end
|
1827
|
+
end
|
1828
|
+
|
1829
|
+
def test_record_error_teardown
|
1830
|
+
assert_run_record NilClass, RuntimeError do
|
1831
|
+
def test_method
|
1832
|
+
assert true
|
1833
|
+
end
|
1834
|
+
|
1835
|
+
def teardown
|
1836
|
+
raise "unhandled exception"
|
1837
|
+
end
|
1838
|
+
end
|
1839
|
+
end
|
1840
|
+
|
1841
|
+
def test_record_error_in_test_and_teardown
|
1842
|
+
assert_run_record AnError, RuntimeError do
|
1843
|
+
def test_method
|
1844
|
+
raise AnError
|
1845
|
+
end
|
1846
|
+
|
1847
|
+
def teardown
|
1848
|
+
raise "unhandled exception"
|
1849
|
+
end
|
1850
|
+
end
|
1851
|
+
end
|
1852
|
+
|
1853
|
+
def test_record_skip
|
1854
|
+
assert_run_record MiniTest::Skip do
|
1855
|
+
def test_method
|
1856
|
+
skip "not yet"
|
1857
|
+
end
|
1858
|
+
end
|
1859
|
+
end
|
1860
|
+
end
|