minilab 1.1.0-x86-mswin32-60
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.
- data/CHANGES +8 -0
- data/LICENSE +19 -0
- data/README +105 -0
- data/Rakefile +83 -0
- data/config/environment.rb +23 -0
- data/config/objects.yml +23 -0
- data/lib/analog_io.rb +23 -0
- data/lib/connection_state.rb +13 -0
- data/lib/digital_auxport_io.rb +34 -0
- data/lib/digital_configuration.rb +53 -0
- data/lib/digital_port_io.rb +39 -0
- data/lib/library_translator.rb +46 -0
- data/lib/minilab.rb +130 -0
- data/lib/minilab_constants.rb +20 -0
- data/lib/minilab_context.rb +14 -0
- data/lib/minilab_hardware.rb +112 -0
- data/lib/minilab_wrapper.rb +12 -0
- data/test/system/analog_input.test +3 -0
- data/test/system/analog_output.test +37 -0
- data/test/system/digital_port_input.test +5 -0
- data/test/system/digital_port_output.test +39 -0
- data/test/system/digital_port_read_byte.test +26 -0
- data/test/system/digital_screw_terminals_input.test +2 -0
- data/test/system/digital_screw_terminals_output.test +11 -0
- data/test/system/minilab_driver.rb +83 -0
- data/test/test_helper.rb +15 -0
- data/test/unit/analog_io_test.rb +54 -0
- data/test/unit/connection_state_test.rb +18 -0
- data/test/unit/digital_auxport_io_test.rb +102 -0
- data/test/unit/digital_configuration_test.rb +100 -0
- data/test/unit/digital_port_io_test.rb +67 -0
- data/test/unit/library_translator_test.rb +98 -0
- data/test/unit/minilab_context_test.rb +23 -0
- data/test/unit/minilab_hardware_test.rb +33 -0
- data/test/unit/minilab_test.rb +115 -0
- data/test/unit/minilab_wrapper_test.rb +24 -0
- data/vendor/behaviors/lib/behaviors.rb +50 -0
- data/vendor/behaviors/tasks/behaviors_tasks.rake +140 -0
- data/vendor/behaviors/test/behaviors_tasks_test.rb +71 -0
- data/vendor/behaviors/test/behaviors_test.rb +50 -0
- data/vendor/behaviors/test/tasks_test/Rakefile +16 -0
- data/vendor/behaviors/test/tasks_test/doc/behaviors.html +55 -0
- data/vendor/behaviors/test/tasks_test/lib/user.rb +2 -0
- data/vendor/behaviors/test/tasks_test/test/user_test.rb +17 -0
- data/vendor/constructor-1.0.2/History.txt +11 -0
- data/vendor/constructor-1.0.2/Manifest.txt +6 -0
- data/vendor/constructor-1.0.2/README.txt +77 -0
- data/vendor/constructor-1.0.2/Rakefile +33 -0
- data/vendor/constructor-1.0.2/lib/constructor.rb +119 -0
- data/vendor/constructor-1.0.2/specs/constructor_spec.rb +345 -0
- data/vendor/diy-1.1.1/History.txt +23 -0
- data/vendor/diy-1.1.1/Manifest.txt +88 -0
- data/vendor/diy-1.1.1/README.txt +220 -0
- data/vendor/diy-1.1.1/Rakefile +29 -0
- data/vendor/diy-1.1.1/TODO.txt +9 -0
- data/vendor/diy-1.1.1/homepage/Notes.txt +27 -0
- data/vendor/diy-1.1.1/homepage/Rakefile +14 -0
- data/vendor/diy-1.1.1/homepage/diy_example.png +0 -0
- data/vendor/diy-1.1.1/homepage/index.erb +36 -0
- data/vendor/diy-1.1.1/homepage/index.html +45 -0
- data/vendor/diy-1.1.1/homepage/objects_yml.png +0 -0
- data/vendor/diy-1.1.1/homepage/page_header.graffle +0 -0
- data/vendor/diy-1.1.1/homepage/page_header.html +9 -0
- data/vendor/diy-1.1.1/homepage/page_header.png +0 -0
- data/vendor/diy-1.1.1/lib/diy.rb +365 -0
- data/vendor/diy-1.1.1/sample_code/car.rb +7 -0
- data/vendor/diy-1.1.1/sample_code/chassis.rb +5 -0
- data/vendor/diy-1.1.1/sample_code/diy_example.rb +26 -0
- data/vendor/diy-1.1.1/sample_code/engine.rb +5 -0
- data/vendor/diy-1.1.1/sample_code/objects.yml +10 -0
- data/vendor/diy-1.1.1/test/constructor.rb +119 -0
- data/vendor/diy-1.1.1/test/diy_test.rb +604 -0
- data/vendor/diy-1.1.1/test/files/broken_construction.yml +7 -0
- data/vendor/diy-1.1.1/test/files/cat/cat.rb +3 -0
- data/vendor/diy-1.1.1/test/files/cat/extra_conflict.yml +5 -0
- data/vendor/diy-1.1.1/test/files/cat/heritage.rb +2 -0
- data/vendor/diy-1.1.1/test/files/cat/needs_input.yml +3 -0
- data/vendor/diy-1.1.1/test/files/cat/the_cat_lineage.rb +1 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_view.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/file_resolver.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/other_thing.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/simple.yml +11 -0
- data/vendor/diy-1.1.1/test/files/donkey/foo.rb +8 -0
- data/vendor/diy-1.1.1/test/files/donkey/foo/bar/qux.rb +7 -0
- data/vendor/diy-1.1.1/test/files/fud/objects.yml +13 -0
- data/vendor/diy-1.1.1/test/files/fud/toy.rb +14 -0
- data/vendor/diy-1.1.1/test/files/functions/invalid_method.yml +5 -0
- data/vendor/diy-1.1.1/test/files/functions/method_extractor.rb +3 -0
- data/vendor/diy-1.1.1/test/files/functions/nonsingleton_objects.yml +6 -0
- data/vendor/diy-1.1.1/test/files/functions/objects.yml +11 -0
- data/vendor/diy-1.1.1/test/files/functions/thing.rb +3 -0
- data/vendor/diy-1.1.1/test/files/functions/thing_builder.rb +21 -0
- data/vendor/diy-1.1.1/test/files/functions/things_builder.rb +3 -0
- data/vendor/diy-1.1.1/test/files/gnu/objects.yml +14 -0
- data/vendor/diy-1.1.1/test/files/gnu/thinger.rb +7 -0
- data/vendor/diy-1.1.1/test/files/goat/base.rb +8 -0
- data/vendor/diy-1.1.1/test/files/goat/can.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/goat.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/objects.yml +12 -0
- data/vendor/diy-1.1.1/test/files/goat/paper.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/plane.rb +7 -0
- data/vendor/diy-1.1.1/test/files/goat/shirt.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/wings.rb +8 -0
- data/vendor/diy-1.1.1/test/files/horse/holder_thing.rb +3 -0
- data/vendor/diy-1.1.1/test/files/horse/objects.yml +7 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/bird.rb +5 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/cat.rb +5 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/reptile/hardshell/turtle.rb +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/reptile/lizard.rb +7 -0
- data/vendor/diy-1.1.1/test/files/namespace/bad_module_specified.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/class_name_combine.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/hello.txt +1 -0
- data/vendor/diy-1.1.1/test/files/namespace/no_module_specified.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/objects.yml +21 -0
- data/vendor/diy-1.1.1/test/files/namespace/road.rb +2 -0
- data/vendor/diy-1.1.1/test/files/namespace/sky.rb +2 -0
- data/vendor/diy-1.1.1/test/files/namespace/subcontext.yml +22 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/air.rb +2 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/fat_cat.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/objects.yml +19 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/pig.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/thread_spinner.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/tick.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/yard.rb +2 -0
- data/vendor/diy-1.1.1/test/files/yak/core_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/core_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/core_view.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/data_source.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_view.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/giant_squid.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/krill.rb +2 -0
- data/vendor/diy-1.1.1/test/files/yak/my_objects.yml +21 -0
- data/vendor/diy-1.1.1/test/files/yak/sub_sub_context_test.yml +27 -0
- data/vendor/diy-1.1.1/test/test_helper.rb +39 -0
- data/vendor/ffi-0.4.0-x86-mswin32/LICENSE +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/Rakefile +142 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AbstractMemory.c +412 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AbstractMemory.h +68 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AutoPointer.c +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AutoPointer.h +18 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Buffer.c +171 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Callback.c +374 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Callback.h +47 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/DynamicLibrary.c +213 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/DynamicLibrary.h +22 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Invoker.c +962 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/LastError.c +135 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/LastError.h +18 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/MemoryPointer.c +156 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/MemoryPointer.h +20 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/NullPointer.c +143 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Platform.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Platform.h +16 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Pointer.c +164 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Pointer.h +25 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Struct.c +477 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Struct.h +26 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Type.c +230 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Type.h +28 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Types.c +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Types.h +54 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/compat.h +22 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/endian.h +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/extconf.rb +31 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/ffi.c +76 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.bsd.mk +34 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.darwin.mk +75 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.gnu.mk +29 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.mk +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog +3243 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.libffi +347 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.libgcj +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.v1 +764 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/LICENSE +21 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/Makefile.am +177 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/Makefile.in +1640 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/README +328 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/TODO +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/acinclude.m4 +92 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/aclocal.m4 +7516 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/compile +142 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/config.guess +1516 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/config.sub +1626 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure +24414 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure.ac +365 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure.host +11 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/depcomp +584 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/libffi.info +533 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/libffi.texi +541 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/stamp-vti +4 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/version.texi +4 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/fficonfig.h.in +160 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/Makefile.am +9 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/Makefile.in +422 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/ffi.h.in +393 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/ffi_common.h +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/install-sh +323 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/libffi.pc.in +10 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/libtool-version +29 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-c.sh +861 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-cxx.sh +1069 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-gcj.sh +700 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltconfig +2862 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltmain.sh +6930 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/Makefile.am +8 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/Makefile.in +395 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi.3 +31 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi_call.3 +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi_prep_cif.3 +66 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/mdate-sh +201 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/missing +353 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/mkinstalldirs +158 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/ffi.c +284 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/ffitarget.h +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/osf.S +366 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/ffi.c +309 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/sysv.S +299 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/closures.c +596 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/ffi.c +383 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/ffitarget.h +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/sysv.S +215 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/debug.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/dlmalloc.c +5099 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/eabi.S +128 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/ffi.c +292 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/ffitarget.h +61 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ffi.c +580 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ffitarget.h +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ia64_flags.h +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/unix.S +560 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/java_raw_api.c +359 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/ffi.c +232 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/ffitarget.h +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/sysv.S +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/ffi.c +278 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/sysv.S +234 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/ffi.c +926 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/ffitarget.h +202 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/n32.S +534 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/o32.S +381 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/ffi.c +709 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/ffitarget.h +77 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/hpux32.S +368 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/linux.S +357 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/aix.S +225 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/aix_closure.S +247 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/asm.h +125 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/darwin.S +245 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +317 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffi.c +1429 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +800 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffitarget.h +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/linux64.S +187 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +236 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +327 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/sysv.S +230 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/prep_cif.c +174 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/raw_api.c +254 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/ffi.c +780 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/ffitarget.h +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/sysv.S +434 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/ffi.c +716 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/sysv.S +850 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/ffi.c +453 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/ffitarget.h +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/sysv.S +530 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/ffi.c +610 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/ffitarget.h +66 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/v8.S +272 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/v9.S +307 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/types.c +77 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/darwin.S +443 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/darwin64.S +416 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffi.c +475 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffi64.c +572 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffitarget.h +90 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/freebsd.S +458 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/sysv.S +437 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/unix64.S +418 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/win32.S +391 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/Makefile.am +71 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/Makefile.in +447 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/config/default.exp +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +289 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +263 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +45 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +89 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +89 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +90 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c +72 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +102 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +104 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +110 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +106 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +117 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +106 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +132 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +107 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +125 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +105 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +96 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +100 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +100 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +94 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +94 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +52 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +54 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +86 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +58 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +57 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +72 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +62 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/many.c +69 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +63 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +160 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +169 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +141 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +120 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +114 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +43 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +34 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +41 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +44 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +44 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +65 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +67 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +63 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +65 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +64 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +74 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +80 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +67 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +86 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc +123 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/texinfo.tex +7482 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/rbffi.h +23 -0
- data/vendor/ffi-0.4.0-x86-mswin32/gen/Rakefile +12 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/1.8/ffi_c.so +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/1.9/ffi_c.so +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi.rb +11 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/autopointer.rb +61 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/buffer.rb +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/callback.rb +10 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/enum.rb +78 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/errno.rb +8 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/ffi.rb +96 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/io.rb +21 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/library.rb +243 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/managedstruct.rb +55 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/memorypointer.rb +73 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/platform.rb +78 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/pointer.rb +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/struct.rb +354 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/const_generator.rb +177 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/generator.rb +58 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/generator_task.rb +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/struct_generator.rb +194 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/types_generator.rb +123 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/types.rb +153 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/union.rb +17 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/variadic.rb +30 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/bool_spec.rb +24 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/buffer_spec.rb +196 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/callback_spec.rb +560 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/enum_spec.rb +164 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/errno_spec.rb +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/library_spec.rb +144 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/managed_struct_spec.rb +56 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/number_spec.rb +231 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/pointer_spec.rb +195 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/attach_function_spec.rb +27 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/memory_pointer_spec.rb +102 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/spec_helper.rb +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/struct_spec.rb +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/spec_helper.rb +17 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/string_spec.rb +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_callback_spec.rb +41 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_initialize_spec.rb +30 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_spec.rb +476 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/typedef_spec.rb +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/union_spec.rb +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/variadic_spec.rb +84 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/spec.opts +4 -0
- data/vendor/hardmock-1.3.7/CHANGES +78 -0
- data/vendor/hardmock-1.3.7/LICENSE +7 -0
- data/vendor/hardmock-1.3.7/README +70 -0
- data/vendor/hardmock-1.3.7/Rakefile +8 -0
- data/vendor/hardmock-1.3.7/config/environment.rb +12 -0
- data/vendor/hardmock-1.3.7/lib/assert_error.rb +23 -0
- data/vendor/hardmock-1.3.7/lib/extend_test_unit.rb +14 -0
- data/vendor/hardmock-1.3.7/lib/hardmock.rb +86 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/errors.rb +22 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expectation.rb +229 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expectation_builder.rb +9 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expector.rb +26 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/method_cleanout.rb +33 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/mock.rb +180 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/mock_control.rb +53 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/stubbing.rb +210 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/trapper.rb +31 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/utils.rb +9 -0
- data/vendor/hardmock-1.3.7/lib/test_unit_before_after.rb +169 -0
- data/vendor/hardmock-1.3.7/rake_tasks/test.rake +22 -0
- data/vendor/hardmock-1.3.7/test/functional/assert_error_test.rb +52 -0
- data/vendor/hardmock-1.3.7/test/functional/auto_verify_test.rb +178 -0
- data/vendor/hardmock-1.3.7/test/functional/direct_mock_usage_test.rb +396 -0
- data/vendor/hardmock-1.3.7/test/functional/hardmock_test.rb +434 -0
- data/vendor/hardmock-1.3.7/test/functional/stubbing_test.rb +479 -0
- data/vendor/hardmock-1.3.7/test/test_helper.rb +43 -0
- data/vendor/hardmock-1.3.7/test/unit/expectation_builder_test.rb +19 -0
- data/vendor/hardmock-1.3.7/test/unit/expectation_test.rb +372 -0
- data/vendor/hardmock-1.3.7/test/unit/expector_test.rb +57 -0
- data/vendor/hardmock-1.3.7/test/unit/method_cleanout_test.rb +36 -0
- data/vendor/hardmock-1.3.7/test/unit/mock_control_test.rb +175 -0
- data/vendor/hardmock-1.3.7/test/unit/mock_test.rb +279 -0
- data/vendor/hardmock-1.3.7/test/unit/test_unit_before_after_test.rb +452 -0
- data/vendor/hardmock-1.3.7/test/unit/trapper_test.rb +62 -0
- data/vendor/hardmock-1.3.7/test/unit/verify_error_test.rb +40 -0
- data/vendor/mcc/cbw32.dll +0 -0
- data/vendor/systir/systir.rb +403 -0
- data/vendor/systir/test/unit/ui/xml/testrunner.rb +192 -0
- data/vendor/systir/test/unit/ui/xml/xmltestrunner.xslt +109 -0
- metadata +561 -0
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'rake/testtask'
|
2
|
+
|
3
|
+
namespace :test do
|
4
|
+
|
5
|
+
desc "Run unit tests"
|
6
|
+
Rake::TestTask.new("units") { |t|
|
7
|
+
t.libs << "test"
|
8
|
+
t.pattern = 'test/unit/*_test.rb'
|
9
|
+
t.verbose = true
|
10
|
+
}
|
11
|
+
|
12
|
+
desc "Run functional tests"
|
13
|
+
Rake::TestTask.new("functional") { |t|
|
14
|
+
t.libs << "test"
|
15
|
+
t.pattern = 'test/functional/*_test.rb'
|
16
|
+
t.verbose = true
|
17
|
+
}
|
18
|
+
|
19
|
+
desc "Run all the tests"
|
20
|
+
task :all => [ 'test:units', 'test:functional' ]
|
21
|
+
|
22
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + "/../test_helper")
|
2
|
+
require 'assert_error'
|
3
|
+
|
4
|
+
class AssertErrorTest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
it "specfies an error type and message that should be raised" do
|
7
|
+
assert_error RuntimeError, "Too funky" do
|
8
|
+
raise RuntimeError.new("Too funky")
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
it "flunks if the error message is wrong" do
|
13
|
+
err = assert_raise Test::Unit::AssertionFailedError do
|
14
|
+
assert_error RuntimeError, "not good" do
|
15
|
+
raise RuntimeError.new("Too funky")
|
16
|
+
end
|
17
|
+
end
|
18
|
+
assert_match(/not good/i, err.message)
|
19
|
+
assert_match(/too funky/i, err.message)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "flunks if the error type is wrong" do
|
23
|
+
err = assert_raise Test::Unit::AssertionFailedError do
|
24
|
+
assert_error StandardError, "Too funky" do
|
25
|
+
raise RuntimeError.new("Too funky")
|
26
|
+
end
|
27
|
+
end
|
28
|
+
assert_match(/StandardError/i, err.message)
|
29
|
+
assert_match(/RuntimeError/i, err.message)
|
30
|
+
end
|
31
|
+
|
32
|
+
it "can match error message text using a series of Regexps" do
|
33
|
+
assert_error StandardError, /too/i, /funky/i do
|
34
|
+
raise StandardError.new("Too funky")
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
it "flunks if the error message doesn't match all the Regexps" do
|
39
|
+
err = assert_raise Test::Unit::AssertionFailedError do
|
40
|
+
assert_error StandardError, /way/i, /too/i, /funky/i do
|
41
|
+
raise StandardError.new("Too funky")
|
42
|
+
end
|
43
|
+
end
|
44
|
+
assert_match(/way/i, err.message)
|
45
|
+
end
|
46
|
+
|
47
|
+
it "can operate without any message specification" do
|
48
|
+
assert_error StandardError do
|
49
|
+
raise StandardError.new("ooof")
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,178 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + "/../test_helper")
|
2
|
+
require 'fileutils'
|
3
|
+
|
4
|
+
class AutoVerifyTest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@expect_unmet_expectations = true
|
8
|
+
end
|
9
|
+
|
10
|
+
def teardown
|
11
|
+
remove_temp_test_file
|
12
|
+
end
|
13
|
+
|
14
|
+
#
|
15
|
+
# TESTS
|
16
|
+
#
|
17
|
+
|
18
|
+
it "auto-verifies all mocks in teardown" do
|
19
|
+
write_and_execute_test
|
20
|
+
end
|
21
|
+
|
22
|
+
it "auto-verifies even if user defines own teardown" do
|
23
|
+
@teardown_code =<<-EOM
|
24
|
+
def teardown
|
25
|
+
# just in the way
|
26
|
+
end
|
27
|
+
EOM
|
28
|
+
write_and_execute_test
|
29
|
+
end
|
30
|
+
|
31
|
+
should "not obscure normal failures when verification fails" do
|
32
|
+
@test_code =<<-EOM
|
33
|
+
def test_setup_doomed_expectation
|
34
|
+
create_mock :automobile
|
35
|
+
@automobile.expects.start
|
36
|
+
flunk "natural failure"
|
37
|
+
end
|
38
|
+
EOM
|
39
|
+
@expect_failures = 1
|
40
|
+
write_and_execute_test
|
41
|
+
end
|
42
|
+
|
43
|
+
should "not skip user-defined teardown when verification fails" do
|
44
|
+
@teardown_code =<<-EOM
|
45
|
+
def teardown
|
46
|
+
puts "User teardown"
|
47
|
+
end
|
48
|
+
EOM
|
49
|
+
write_and_execute_test
|
50
|
+
assert_output_contains(/User teardown/)
|
51
|
+
end
|
52
|
+
|
53
|
+
it "is quiet when verification is ok" do
|
54
|
+
@test_code =<<-EOM
|
55
|
+
def test_ok
|
56
|
+
create_mock :automobile
|
57
|
+
@automobile.expects.start
|
58
|
+
@automobile.start
|
59
|
+
end
|
60
|
+
EOM
|
61
|
+
@teardown_code =<<-EOM
|
62
|
+
def teardown
|
63
|
+
puts "User teardown"
|
64
|
+
end
|
65
|
+
EOM
|
66
|
+
@expect_unmet_expectations = false
|
67
|
+
@expect_failures = 0
|
68
|
+
@expect_errors = 0
|
69
|
+
write_and_execute_test
|
70
|
+
assert_output_contains(/User teardown/)
|
71
|
+
end
|
72
|
+
|
73
|
+
should "auto-verify even if user teardown explodes" do
|
74
|
+
@teardown_code =<<-EOM
|
75
|
+
def teardown
|
76
|
+
raise "self destruct"
|
77
|
+
end
|
78
|
+
EOM
|
79
|
+
@expect_errors = 2
|
80
|
+
write_and_execute_test
|
81
|
+
assert_output_contains(/self destruct/)
|
82
|
+
end
|
83
|
+
|
84
|
+
it "plays nice with inherited teardown methods" do
|
85
|
+
@full_code ||=<<-EOTEST
|
86
|
+
require File.expand_path(File.dirname(__FILE__) + "/../test_helper")
|
87
|
+
require 'hardmock'
|
88
|
+
class Test::Unit::TestCase
|
89
|
+
def teardown
|
90
|
+
puts "Test helper teardown"
|
91
|
+
end
|
92
|
+
end
|
93
|
+
class DummyTest < Test::Unit::TestCase
|
94
|
+
def test_prepare_to_die
|
95
|
+
create_mock :automobile
|
96
|
+
@automobile.expects.start
|
97
|
+
end
|
98
|
+
end
|
99
|
+
EOTEST
|
100
|
+
write_and_execute_test
|
101
|
+
assert_output_contains(/Test helper teardown/)
|
102
|
+
end
|
103
|
+
|
104
|
+
#
|
105
|
+
# HELPERS
|
106
|
+
#
|
107
|
+
|
108
|
+
def temp_test_file
|
109
|
+
File.expand_path(File.dirname(__FILE__) + "/tear_down_verification_test.rb")
|
110
|
+
end
|
111
|
+
|
112
|
+
def run_test(tbody)
|
113
|
+
File.open(temp_test_file,"w") { |f| f.print(tbody) }
|
114
|
+
@test_output = `ruby #{temp_test_file} 2>&1`
|
115
|
+
end
|
116
|
+
|
117
|
+
def formatted_test_output
|
118
|
+
if @test_output
|
119
|
+
@test_output.split(/\n/).map { |line| "> #{line}" }.join("\n")
|
120
|
+
else
|
121
|
+
"(NO TEST OUTPUT!)"
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
def remove_temp_test_file
|
126
|
+
FileUtils::rm_f temp_test_file
|
127
|
+
end
|
128
|
+
|
129
|
+
def assert_results(h)
|
130
|
+
if @test_output !~ /#{h[:tests]} tests, [0-9]+ assertions, #{h[:failures]} failures, #{h[:errors]} errors/
|
131
|
+
flunk "Test results didn't match #{h.inspect}:\n#{formatted_test_output}"
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
def assert_output_contains(*patterns)
|
136
|
+
patterns.each do |pattern|
|
137
|
+
if @test_output !~ pattern
|
138
|
+
flunk "Test output didn't match #{pattern.inspect}:\n#{formatted_test_output}"
|
139
|
+
end
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
def assert_output_doesnt_contain(*patterns)
|
144
|
+
patterns.each do |pattern|
|
145
|
+
assert @test_output !~ pattern, "Output shouldn't match #{pattern.inspect} but it does."
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
149
|
+
def write_and_execute_test
|
150
|
+
@test_code ||=<<-EOM
|
151
|
+
def test_setup_doomed_expectation
|
152
|
+
create_mock :automobile
|
153
|
+
@automobile.expects.start
|
154
|
+
end
|
155
|
+
EOM
|
156
|
+
@full_code ||=<<-EOTEST
|
157
|
+
require File.expand_path(File.dirname(__FILE__) + "/../test_helper")
|
158
|
+
require 'hardmock'
|
159
|
+
class DummyTest < Test::Unit::TestCase
|
160
|
+
#{@teardown_code}
|
161
|
+
#{@test_code}
|
162
|
+
end
|
163
|
+
EOTEST
|
164
|
+
run_test @full_code
|
165
|
+
|
166
|
+
if @expect_unmet_expectations
|
167
|
+
assert_output_contains(/unmet expectations/i, /automobile/, /start/)
|
168
|
+
else
|
169
|
+
assert_output_doesnt_contain(/unmet expectations/i, /automobile/, /start/)
|
170
|
+
end
|
171
|
+
|
172
|
+
@expect_tests ||= 1
|
173
|
+
@expect_failures ||= 0
|
174
|
+
@expect_errors ||= 1
|
175
|
+
assert_results :tests => @expect_tests, :failures => @expect_failures, :errors => @expect_errors
|
176
|
+
end
|
177
|
+
|
178
|
+
end
|
@@ -0,0 +1,396 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + "/../test_helper")
|
2
|
+
require 'hardmock'
|
3
|
+
|
4
|
+
class DirectMockUsageTest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@bird = Mock.new('bird')
|
8
|
+
end
|
9
|
+
|
10
|
+
def teardown
|
11
|
+
end
|
12
|
+
|
13
|
+
#
|
14
|
+
# TESTS
|
15
|
+
#
|
16
|
+
|
17
|
+
it "raises VerifyError if expected method not called" do
|
18
|
+
@bird.expects.flap_flap
|
19
|
+
|
20
|
+
err = assert_raise VerifyError do
|
21
|
+
@bird._verify
|
22
|
+
end
|
23
|
+
assert_match(/unmet expectations/i, err.message)
|
24
|
+
end
|
25
|
+
|
26
|
+
should "not raise when expected calls are made in order" do
|
27
|
+
@bird.expects.flap_flap
|
28
|
+
@bird.expects.bang
|
29
|
+
@bird.expects.plop
|
30
|
+
|
31
|
+
@bird.flap_flap
|
32
|
+
@bird.bang
|
33
|
+
@bird.plop
|
34
|
+
|
35
|
+
@bird._verify
|
36
|
+
end
|
37
|
+
|
38
|
+
it "raises ExpectationError when unexpected method are called" do
|
39
|
+
@bird.expects.flap_flap
|
40
|
+
|
41
|
+
err = assert_raise ExpectationError do
|
42
|
+
@bird.shoot
|
43
|
+
end
|
44
|
+
assert_match(/wrong method/i, err.message)
|
45
|
+
end
|
46
|
+
|
47
|
+
it "raises ExpectationError on bad arguments" do
|
48
|
+
@bird.expects.flap_flap(:swoosh)
|
49
|
+
|
50
|
+
err = assert_raise ExpectationError do
|
51
|
+
@bird.flap_flap(:rip)
|
52
|
+
end
|
53
|
+
assert_match(/wrong arguments/i, err.message)
|
54
|
+
end
|
55
|
+
|
56
|
+
it "raises VerifyError when not all expected methods are called" do
|
57
|
+
@bird.expects.flap_flap
|
58
|
+
@bird.expects.bang
|
59
|
+
@bird.expects.plop
|
60
|
+
|
61
|
+
@bird.flap_flap
|
62
|
+
|
63
|
+
err = assert_raise VerifyError do
|
64
|
+
@bird._verify
|
65
|
+
end
|
66
|
+
assert_match(/unmet expectations/i, err.message)
|
67
|
+
end
|
68
|
+
|
69
|
+
it "raises ExpectationError when calls are made out of order" do
|
70
|
+
@bird.expects.flap_flap
|
71
|
+
@bird.expects.bang
|
72
|
+
@bird.expects.plop
|
73
|
+
|
74
|
+
@bird.flap_flap
|
75
|
+
err = assert_raise ExpectationError do
|
76
|
+
@bird.plop
|
77
|
+
end
|
78
|
+
assert_match(/wrong method/i, err.message)
|
79
|
+
end
|
80
|
+
|
81
|
+
it "returns the configured value" do
|
82
|
+
@bird.expects.plop.returns(':P')
|
83
|
+
assert_equal ':P', @bird.plop
|
84
|
+
@bird._verify
|
85
|
+
|
86
|
+
@bird.expects.plop.returns(':x')
|
87
|
+
assert_equal ':x', @bird.plop
|
88
|
+
@bird._verify
|
89
|
+
end
|
90
|
+
|
91
|
+
it "returns nil when no return is specified" do
|
92
|
+
@bird.expects.plop
|
93
|
+
assert_nil @bird.plop
|
94
|
+
@bird._verify
|
95
|
+
end
|
96
|
+
|
97
|
+
it "raises the configured exception" do
|
98
|
+
err = RuntimeError.new('shaq')
|
99
|
+
@bird.expects.plop.raises(err)
|
100
|
+
actual_err = assert_raise RuntimeError do
|
101
|
+
@bird.plop
|
102
|
+
end
|
103
|
+
assert_same err, actual_err, 'should be the same error'
|
104
|
+
@bird._verify
|
105
|
+
end
|
106
|
+
|
107
|
+
it "raises a RuntimeError when told to 'raise' a string" do
|
108
|
+
@bird.expects.plop.raises('shaq')
|
109
|
+
err = assert_raise RuntimeError do
|
110
|
+
@bird.plop
|
111
|
+
end
|
112
|
+
assert_match(/shaq/i, err.message)
|
113
|
+
@bird._verify
|
114
|
+
end
|
115
|
+
|
116
|
+
it "raises a default RuntimeError" do
|
117
|
+
@bird.expects.plop.raises
|
118
|
+
err = assert_raise RuntimeError do
|
119
|
+
@bird.plop
|
120
|
+
end
|
121
|
+
assert_match(/error/i, err.message)
|
122
|
+
@bird._verify
|
123
|
+
end
|
124
|
+
|
125
|
+
it "is quiet when correct arguments given" do
|
126
|
+
thing = Object.new
|
127
|
+
@bird.expects.plop(:big,'one',thing)
|
128
|
+
@bird.plop(:big,'one',thing)
|
129
|
+
@bird._verify
|
130
|
+
end
|
131
|
+
|
132
|
+
it "raises ExpectationError when wrong number of arguments specified" do
|
133
|
+
thing = Object.new
|
134
|
+
@bird.expects.plop(:big,'one',thing)
|
135
|
+
err = assert_raise ExpectationError do
|
136
|
+
# more
|
137
|
+
@bird.plop(:big,'one',thing,:other)
|
138
|
+
end
|
139
|
+
assert_match(/wrong arguments/i, err.message)
|
140
|
+
@bird._verify
|
141
|
+
|
142
|
+
@bird.expects.plop(:big,'one',thing)
|
143
|
+
err = assert_raise ExpectationError do
|
144
|
+
# less
|
145
|
+
@bird.plop(:big,'one')
|
146
|
+
end
|
147
|
+
assert_match(/wrong arguments/i, err.message)
|
148
|
+
@bird._verify
|
149
|
+
|
150
|
+
@bird.expects.plop
|
151
|
+
err = assert_raise ExpectationError do
|
152
|
+
# less
|
153
|
+
@bird.plop(:big)
|
154
|
+
end
|
155
|
+
assert_match(/wrong arguments/i, err.message)
|
156
|
+
@bird._verify
|
157
|
+
end
|
158
|
+
|
159
|
+
it "raises ExpectationError when arguments don't match" do
|
160
|
+
thing = Object.new
|
161
|
+
@bird.expects.plop(:big,'one',thing)
|
162
|
+
err = assert_raise ExpectationError do
|
163
|
+
@bird.plop(:big,'two',thing,:other)
|
164
|
+
end
|
165
|
+
assert_match(/wrong arguments/i, err.message)
|
166
|
+
@bird._verify
|
167
|
+
end
|
168
|
+
|
169
|
+
it "can use a block for custom reactions" do
|
170
|
+
mitt = nil
|
171
|
+
@bird.expects.plop { mitt = :ball }
|
172
|
+
assert_nil mitt
|
173
|
+
@bird.plop
|
174
|
+
assert_equal :ball, mitt, 'didnt catch the ball'
|
175
|
+
@bird._verify
|
176
|
+
|
177
|
+
@bird.expects.plop { raise 'ball' }
|
178
|
+
err = assert_raise RuntimeError do
|
179
|
+
@bird.plop
|
180
|
+
end
|
181
|
+
assert_match(/ball/i, err.message)
|
182
|
+
@bird._verify
|
183
|
+
end
|
184
|
+
|
185
|
+
it "passes mock-call arguments to the expectation block" do
|
186
|
+
ball = nil
|
187
|
+
mitt = nil
|
188
|
+
@bird.expects.plop {|arg1,arg2|
|
189
|
+
ball = arg1
|
190
|
+
mitt = arg2
|
191
|
+
}
|
192
|
+
assert_nil ball
|
193
|
+
assert_nil mitt
|
194
|
+
@bird.plop(:ball,:mitt)
|
195
|
+
assert_equal :ball, ball
|
196
|
+
assert_equal :mitt, mitt
|
197
|
+
@bird._verify
|
198
|
+
end
|
199
|
+
|
200
|
+
it "validates arguments if specified in addition to a block" do
|
201
|
+
ball = nil
|
202
|
+
mitt = nil
|
203
|
+
@bird.expects.plop(:ball,:mitt) {|arg1,arg2|
|
204
|
+
ball = arg1
|
205
|
+
mitt = arg2
|
206
|
+
}
|
207
|
+
assert_nil ball
|
208
|
+
assert_nil mitt
|
209
|
+
@bird.plop(:ball,:mitt)
|
210
|
+
assert_equal :ball, ball
|
211
|
+
assert_equal :mitt, mitt
|
212
|
+
@bird._verify
|
213
|
+
|
214
|
+
ball = nil
|
215
|
+
mitt = nil
|
216
|
+
@bird.expects.plop(:bad,:stupid) {|arg1,arg2|
|
217
|
+
ball = arg1
|
218
|
+
mitt = arg2
|
219
|
+
}
|
220
|
+
assert_nil ball
|
221
|
+
assert_nil mitt
|
222
|
+
err = assert_raise ExpectationError do
|
223
|
+
@bird.plop(:ball,:mitt)
|
224
|
+
end
|
225
|
+
assert_match(/wrong arguments/i, err.message)
|
226
|
+
assert_nil ball
|
227
|
+
assert_nil mitt
|
228
|
+
@bird._verify
|
229
|
+
|
230
|
+
ball = nil
|
231
|
+
mitt = nil
|
232
|
+
@bird.expects.plop(:ball,:mitt) {|arg1,arg2|
|
233
|
+
ball = arg1
|
234
|
+
mitt = arg2
|
235
|
+
}
|
236
|
+
assert_nil ball
|
237
|
+
assert_nil mitt
|
238
|
+
err = assert_raise ExpectationError do
|
239
|
+
@bird.plop(:ball)
|
240
|
+
end
|
241
|
+
assert_match(/wrong arguments/i, err.message)
|
242
|
+
assert_nil ball
|
243
|
+
assert_nil mitt
|
244
|
+
@bird._verify
|
245
|
+
end
|
246
|
+
|
247
|
+
it "passes runtime blocks to the expectation block as the final argument" do
|
248
|
+
runtime_block_called = false
|
249
|
+
got_arg = nil
|
250
|
+
|
251
|
+
# Eg, bird expects someone to subscribe to :tweet using the 'when' method
|
252
|
+
@bird.expects.when(:tweet) { |arg1, block|
|
253
|
+
got_arg = arg1
|
254
|
+
block.call
|
255
|
+
}
|
256
|
+
|
257
|
+
@bird.when(:tweet) do
|
258
|
+
runtime_block_called = true
|
259
|
+
end
|
260
|
+
|
261
|
+
assert_equal :tweet, got_arg, "Wrong arg"
|
262
|
+
assert runtime_block_called, "The runtime block should have been invoked by the user block"
|
263
|
+
|
264
|
+
@bird.expects.when(:warnk) { |e,blk| }
|
265
|
+
|
266
|
+
err = assert_raise ExpectationError do
|
267
|
+
@bird.when(:honk) { }
|
268
|
+
end
|
269
|
+
assert_match(/wrong arguments/i, err.message)
|
270
|
+
|
271
|
+
@bird._verify
|
272
|
+
end
|
273
|
+
|
274
|
+
it "passes the runtime block to the expectation block as sole argument if no other args come into play" do
|
275
|
+
runtime_block_called = false
|
276
|
+
@bird.expects.subscribe { |block| block.call }
|
277
|
+
@bird.subscribe do
|
278
|
+
runtime_block_called = true
|
279
|
+
end
|
280
|
+
assert runtime_block_called, "The runtime block should have been invoked by the user block"
|
281
|
+
end
|
282
|
+
|
283
|
+
it "provides nil as final argument if expectation block seems to want a block" do
|
284
|
+
invoked = false
|
285
|
+
@bird.expects.kablam(:scatter) { |shot,block|
|
286
|
+
assert_equal :scatter, shot, "Wrong shot"
|
287
|
+
assert_nil block, "The expectation block should get a nil block when user neglects to pass one"
|
288
|
+
invoked = true
|
289
|
+
}
|
290
|
+
@bird.kablam :scatter
|
291
|
+
assert invoked, "Expectation block not invoked"
|
292
|
+
|
293
|
+
@bird._verify
|
294
|
+
end
|
295
|
+
|
296
|
+
it "can set explicit return after an expectation block" do
|
297
|
+
got = nil
|
298
|
+
@bird.expects.kablam(:scatter) { |shot|
|
299
|
+
got = shot
|
300
|
+
}.returns(:death)
|
301
|
+
|
302
|
+
val = @bird.kablam :scatter
|
303
|
+
assert_equal :death, val, "Wrong return value"
|
304
|
+
assert_equal :scatter, got, "Wrong argument"
|
305
|
+
@bird._verify
|
306
|
+
end
|
307
|
+
|
308
|
+
it "can raise after an expectation block" do
|
309
|
+
got = nil
|
310
|
+
@bird.expects.kablam(:scatter) do |shot|
|
311
|
+
got = shot
|
312
|
+
end.raises "hell"
|
313
|
+
|
314
|
+
err = assert_raise RuntimeError do
|
315
|
+
@bird.kablam :scatter
|
316
|
+
end
|
317
|
+
assert_match(/hell/i, err.message)
|
318
|
+
|
319
|
+
@bird._verify
|
320
|
+
end
|
321
|
+
|
322
|
+
it "stores the semantic value of the expectation block after it executes" do
|
323
|
+
expectation = @bird.expects.kablam(:slug) { |shot|
|
324
|
+
"The shot was #{shot}"
|
325
|
+
}
|
326
|
+
|
327
|
+
assert_not_nil expectation, "Expectation nil"
|
328
|
+
assert_nil expectation.block_value, "Block value should start out nil"
|
329
|
+
|
330
|
+
ret_val = @bird.kablam :slug
|
331
|
+
|
332
|
+
assert_equal "The shot was slug", expectation.block_value
|
333
|
+
assert_equal "The shot was slug", ret_val, "Block value should also be used for return"
|
334
|
+
|
335
|
+
@bird._verify
|
336
|
+
end
|
337
|
+
|
338
|
+
|
339
|
+
it "uses the value of the expectation block as the default return value" do
|
340
|
+
@bird.expects.kablam(:scatter) { |shot|
|
341
|
+
"The shot was #{shot}"
|
342
|
+
}
|
343
|
+
val = @bird.kablam :scatter
|
344
|
+
assert_equal "The shot was scatter", val, "Wrong return value"
|
345
|
+
@bird._verify
|
346
|
+
end
|
347
|
+
|
348
|
+
it "returns the Expectation even if 'returns' is used" do
|
349
|
+
expectation = @bird.expects.kablam(:slug) { |shot|
|
350
|
+
"The shot was #{shot}"
|
351
|
+
}.returns :hosed
|
352
|
+
|
353
|
+
assert_not_nil expectation, "Expectation nil"
|
354
|
+
assert_nil expectation.block_value, "Block value should start out nil"
|
355
|
+
|
356
|
+
ret_val = @bird.kablam :slug
|
357
|
+
|
358
|
+
assert_equal "The shot was slug", expectation.block_value
|
359
|
+
assert_equal :hosed, ret_val, "Block value should also be used for return"
|
360
|
+
|
361
|
+
@bird._verify
|
362
|
+
end
|
363
|
+
|
364
|
+
it "returns the Expectation even if 'raises' is used" do
|
365
|
+
expectation = @bird.expects.kablam(:slug) { |shot|
|
366
|
+
"The shot was #{shot}"
|
367
|
+
}.raises "aiee!"
|
368
|
+
|
369
|
+
assert_not_nil expectation, "Expectation nil"
|
370
|
+
assert_nil expectation.block_value, "Block value should start out nil"
|
371
|
+
|
372
|
+
err = assert_raise RuntimeError do
|
373
|
+
@bird.kablam :slug
|
374
|
+
end
|
375
|
+
assert_match(/aiee!/i, err.message)
|
376
|
+
assert_equal "The shot was slug", expectation.block_value
|
377
|
+
@bird._verify
|
378
|
+
end
|
379
|
+
|
380
|
+
|
381
|
+
it "supports assignment-style methods" do
|
382
|
+
@bird.expects.size = "large"
|
383
|
+
@bird.size = "large"
|
384
|
+
@bird._verify
|
385
|
+
end
|
386
|
+
|
387
|
+
it "supports assignments and raising (using explicit-method syntax)" do
|
388
|
+
@bird.expects('size=','large').raises "boom"
|
389
|
+
|
390
|
+
err = assert_raise RuntimeError do
|
391
|
+
@bird.size = "large"
|
392
|
+
end
|
393
|
+
assert_match(/boom/i, err.message)
|
394
|
+
end
|
395
|
+
|
396
|
+
end
|