script_core 0.0.6 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +7 -1
- data/.ruby-version +1 -1
- data/.travis.yml +1 -1
- data/Gemfile +8 -1
- data/{LICENSE → MIT-LICENSE} +0 -0
- data/bootstrap.sh +1 -1
- data/dev.yml +1 -2
- data/ext/enterprise_script_service/Rakefile +7 -1
- data/ext/enterprise_script_service/data.cpp +21 -11
- data/ext/enterprise_script_service/libseccomp/.gitignore +4 -0
- data/ext/enterprise_script_service/libseccomp/.mailmap +10 -0
- data/ext/enterprise_script_service/libseccomp/.travis.yml +71 -0
- data/ext/enterprise_script_service/libseccomp/CHANGELOG +33 -0
- data/ext/enterprise_script_service/libseccomp/CONTRIBUTING.md +134 -0
- data/ext/enterprise_script_service/libseccomp/CREDITS +16 -1
- data/ext/enterprise_script_service/libseccomp/Makefile.am +32 -1
- data/ext/enterprise_script_service/libseccomp/README.md +113 -0
- data/ext/enterprise_script_service/libseccomp/RELEASE_PROCESS.md +97 -0
- data/ext/enterprise_script_service/libseccomp/configure.ac +8 -1
- data/ext/enterprise_script_service/libseccomp/doc/Makefile.am +3 -1
- data/ext/enterprise_script_service/libseccomp/doc/credits_updater +35 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man1/scmp_sys_resolver.1 +3 -1
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_api_get.3 +101 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_api_set.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_arch_add.3 +1 -1
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_attr_set.3 +23 -4
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_init.3 +9 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_merge.3 +2 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_rule_add.3 +80 -15
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_syscall_resolve_name.3 +15 -1
- data/ext/enterprise_script_service/libseccomp/include/seccomp.h.in +185 -22
- data/ext/enterprise_script_service/libseccomp/src/Makefile.am +13 -4
- data/ext/enterprise_script_service/libseccomp/src/api.c +87 -8
- data/ext/enterprise_script_service/libseccomp/src/arch-aarch64-syscalls.c +18 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-aarch64.h +2 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-arm-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-arm.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-mips-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-mips.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc-syscalls.c +510 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc.c +22 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc.h +38 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc64.c +22 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc-syscalls.c +18 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc64-syscalls.c +18 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc64.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-s390-syscalls.c +19 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-s390.c +43 -45
- data/ext/enterprise_script_service/libseccomp/src/arch-s390.h +2 -3
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x-syscalls.c +18 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x.c +43 -45
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x.h +2 -3
- data/ext/enterprise_script_service/libseccomp/src/arch-syscall-check.c +56 -53
- data/ext/enterprise_script_service/libseccomp/src/arch-syscall-dump.c +23 -18
- data/ext/enterprise_script_service/libseccomp/src/arch-syscall-validate +52 -49
- data/ext/enterprise_script_service/libseccomp/src/arch-x32-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-x32.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-x86-syscalls.c +18 -7
- data/ext/enterprise_script_service/libseccomp/src/arch-x86.c +41 -45
- data/ext/enterprise_script_service/libseccomp/src/arch-x86.h +2 -3
- data/ext/enterprise_script_service/libseccomp/src/arch-x86_64-syscalls.c +17 -6
- data/ext/enterprise_script_service/libseccomp/src/arch-x86_64.h +1 -1
- data/ext/enterprise_script_service/libseccomp/src/arch.c +48 -83
- data/ext/enterprise_script_service/libseccomp/src/arch.h +4 -21
- data/ext/enterprise_script_service/libseccomp/src/db.c +1184 -541
- data/ext/enterprise_script_service/libseccomp/src/db.h +12 -32
- data/ext/enterprise_script_service/libseccomp/src/gen_bpf.c +43 -24
- data/ext/enterprise_script_service/libseccomp/src/gen_pfc.c +20 -7
- data/ext/enterprise_script_service/libseccomp/src/hash.c +65 -649
- data/ext/enterprise_script_service/libseccomp/src/hash.h +3 -13
- data/ext/enterprise_script_service/libseccomp/src/helper.c +49 -0
- data/ext/enterprise_script_service/libseccomp/src/helper.h +27 -0
- data/ext/enterprise_script_service/libseccomp/src/python/Makefile.am +9 -4
- data/ext/enterprise_script_service/libseccomp/src/python/libseccomp.pxd +9 -0
- data/ext/enterprise_script_service/libseccomp/src/python/seccomp.pyx +72 -8
- data/ext/enterprise_script_service/libseccomp/src/python/setup.py +0 -0
- data/ext/enterprise_script_service/libseccomp/src/system.c +137 -4
- data/ext/enterprise_script_service/libseccomp/src/system.h +32 -2
- data/ext/enterprise_script_service/libseccomp/tests/.gitignore +17 -0
- data/ext/enterprise_script_service/libseccomp/tests/01-sim-allow.tests +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/05-sim-long_jumps.tests +18 -18
- data/ext/enterprise_script_service/libseccomp/tests/06-sim-actions.c +12 -0
- data/ext/enterprise_script_service/libseccomp/tests/06-sim-actions.py +4 -0
- data/ext/enterprise_script_service/libseccomp/tests/06-sim-actions.tests +13 -8
- data/ext/enterprise_script_service/libseccomp/tests/08-sim-subtree_checks.c +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/08-sim-subtree_checks.py +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/08-sim-subtree_checks.tests +27 -27
- data/ext/enterprise_script_service/libseccomp/tests/09-sim-syscall_priority_pre.tests +7 -7
- data/ext/enterprise_script_service/libseccomp/tests/10-sim-syscall_priority_post.tests +7 -7
- data/ext/enterprise_script_service/libseccomp/tests/11-basic-basic_errors.c +12 -0
- data/ext/enterprise_script_service/libseccomp/tests/12-sim-basic_masked_ops.tests +29 -29
- data/ext/enterprise_script_service/libseccomp/tests/13-basic-attrs.c +37 -0
- data/ext/enterprise_script_service/libseccomp/tests/13-basic-attrs.py +10 -0
- data/ext/enterprise_script_service/libseccomp/tests/15-basic-resolver.c +79 -21
- data/ext/enterprise_script_service/libseccomp/tests/15-basic-resolver.py +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/16-sim-arch_basic.c +44 -0
- data/ext/enterprise_script_service/libseccomp/tests/16-sim-arch_basic.py +4 -0
- data/ext/enterprise_script_service/libseccomp/tests/18-sim-basic_whitelist.c +6 -6
- data/ext/enterprise_script_service/libseccomp/tests/18-sim-basic_whitelist.py +6 -6
- data/ext/enterprise_script_service/libseccomp/tests/18-sim-basic_whitelist.tests +12 -12
- data/ext/enterprise_script_service/libseccomp/tests/20-live-basic_die.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/20-live-basic_die.tests +4 -4
- data/ext/enterprise_script_service/libseccomp/tests/21-live-basic_allow.py +2 -0
- data/ext/enterprise_script_service/libseccomp/tests/21-live-basic_allow.tests +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/24-live-arg_allow.py +3 -2
- data/ext/enterprise_script_service/libseccomp/tests/24-live-arg_allow.tests +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/25-sim-multilevel_chains_adv.tests +6 -6
- data/ext/enterprise_script_service/libseccomp/tests/26-sim-arch_all_be_basic.c +6 -0
- data/ext/enterprise_script_service/libseccomp/tests/26-sim-arch_all_be_basic.py +2 -0
- data/ext/enterprise_script_service/libseccomp/tests/27-sim-bpf_blk_state.tests +5 -5
- data/ext/enterprise_script_service/libseccomp/tests/28-sim-arch_x86.py +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/29-sim-pseudo_syscall.py +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/32-live-tsync_allow.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/32-live-tsync_allow.tests +2 -2
- data/ext/enterprise_script_service/libseccomp/tests/34-sim-basic_blacklist.c +74 -0
- data/ext/enterprise_script_service/libseccomp/tests/34-sim-basic_blacklist.py +45 -0
- data/ext/enterprise_script_service/libseccomp/tests/34-sim-basic_blacklist.tests +32 -0
- data/ext/enterprise_script_service/libseccomp/tests/35-sim-negative_one.c +73 -0
- data/ext/enterprise_script_service/libseccomp/tests/35-sim-negative_one.py +46 -0
- data/ext/enterprise_script_service/libseccomp/tests/35-sim-negative_one.tests +18 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.c +112 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.py +56 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.tests +39 -0
- data/ext/enterprise_script_service/libseccomp/tests/37-sim-ipc_syscalls_be.c +109 -0
- data/ext/enterprise_script_service/libseccomp/tests/37-sim-ipc_syscalls_be.py +55 -0
- data/ext/enterprise_script_service/libseccomp/tests/37-sim-ipc_syscalls_be.tests +27 -0
- data/ext/enterprise_script_service/libseccomp/tests/38-basic-pfc_coverage.c +104 -0
- data/ext/enterprise_script_service/libseccomp/tests/38-basic-pfc_coverage.sh +46 -0
- data/ext/enterprise_script_service/libseccomp/tests/38-basic-pfc_coverage.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/39-basic-api_level.c +67 -0
- data/ext/enterprise_script_service/libseccomp/tests/39-basic-api_level.py +68 -0
- data/ext/enterprise_script_service/libseccomp/tests/39-basic-api_level.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/40-sim-log.c +59 -0
- data/ext/enterprise_script_service/libseccomp/tests/40-sim-log.py +47 -0
- data/ext/enterprise_script_service/libseccomp/tests/40-sim-log.tests +21 -0
- data/ext/enterprise_script_service/libseccomp/tests/41-sim-syscall_priority_arch.c +63 -0
- data/ext/enterprise_script_service/libseccomp/tests/41-sim-syscall_priority_arch.py +44 -0
- data/ext/enterprise_script_service/libseccomp/tests/41-sim-syscall_priority_arch.tests +19 -0
- data/ext/enterprise_script_service/libseccomp/tests/42-sim-adv_chains.c +198 -0
- data/ext/enterprise_script_service/libseccomp/tests/42-sim-adv_chains.py +128 -0
- data/ext/enterprise_script_service/libseccomp/tests/42-sim-adv_chains.tests +54 -0
- data/ext/enterprise_script_service/libseccomp/tests/43-sim-a2_order.c +132 -0
- data/ext/enterprise_script_service/libseccomp/tests/43-sim-a2_order.py +62 -0
- data/ext/enterprise_script_service/libseccomp/tests/43-sim-a2_order.tests +55 -0
- data/ext/enterprise_script_service/libseccomp/tests/44-live-a2_order.c +178 -0
- data/ext/enterprise_script_service/libseccomp/tests/44-live-a2_order.py +107 -0
- data/ext/enterprise_script_service/libseccomp/tests/44-live-a2_order.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/45-sim-chain_code_coverage.c +108 -0
- data/ext/enterprise_script_service/libseccomp/tests/45-sim-chain_code_coverage.py +48 -0
- data/ext/enterprise_script_service/libseccomp/tests/45-sim-chain_code_coverage.tests +16 -0
- data/ext/enterprise_script_service/libseccomp/tests/46-sim-kill_process.c +78 -0
- data/ext/enterprise_script_service/libseccomp/tests/46-sim-kill_process.py +47 -0
- data/ext/enterprise_script_service/libseccomp/tests/46-sim-kill_process.tests +16 -0
- data/ext/enterprise_script_service/libseccomp/tests/47-live-kill_process.c +102 -0
- data/ext/enterprise_script_service/libseccomp/tests/47-live-kill_process.py +68 -0
- data/ext/enterprise_script_service/libseccomp/tests/47-live-kill_process.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/48-sim-32b_args.c +84 -0
- data/ext/enterprise_script_service/libseccomp/tests/48-sim-32b_args.py +50 -0
- data/ext/enterprise_script_service/libseccomp/tests/48-sim-32b_args.tests +38 -0
- data/ext/enterprise_script_service/libseccomp/tests/49-sim-64b_comparisons.c +56 -0
- data/ext/enterprise_script_service/libseccomp/tests/49-sim-64b_comparisons.py +45 -0
- data/ext/enterprise_script_service/libseccomp/tests/49-sim-64b_comparisons.tests +25 -0
- data/ext/enterprise_script_service/libseccomp/tests/Makefile.am +68 -6
- data/ext/enterprise_script_service/libseccomp/tests/miniseq.c +3 -2
- data/ext/enterprise_script_service/libseccomp/tests/regression +102 -10
- data/ext/enterprise_script_service/libseccomp/tests/util.c +4 -0
- data/ext/enterprise_script_service/libseccomp/tests/util.py +2 -2
- data/ext/enterprise_script_service/libseccomp/tools/.gitignore +1 -0
- data/ext/enterprise_script_service/libseccomp/tools/Makefile.am +5 -1
- data/ext/enterprise_script_service/libseccomp/tools/bpf.h +8 -1
- data/ext/enterprise_script_service/libseccomp/tools/scmp_api_level.c +39 -0
- data/ext/enterprise_script_service/libseccomp/tools/scmp_arch_detect.c +6 -0
- data/ext/enterprise_script_service/libseccomp/tools/scmp_bpf_disasm.c +14 -2
- data/ext/enterprise_script_service/libseccomp/tools/scmp_bpf_sim.c +12 -2
- data/ext/enterprise_script_service/libseccomp/tools/util.c +4 -0
- data/ext/enterprise_script_service/mruby/.gitignore +15 -8
- data/ext/enterprise_script_service/mruby/.travis.yml +3 -4
- data/ext/enterprise_script_service/mruby/.yardopts +1 -1
- data/ext/enterprise_script_service/mruby/AUTHORS +6 -2
- data/ext/enterprise_script_service/mruby/LEGAL +1 -1
- data/ext/enterprise_script_service/mruby/LICENSE +20 -0
- data/ext/enterprise_script_service/mruby/README.md +2 -2
- data/ext/enterprise_script_service/mruby/Rakefile +28 -12
- data/ext/enterprise_script_service/mruby/TODO +0 -2
- data/ext/enterprise_script_service/mruby/appveyor.yml +11 -7
- data/ext/enterprise_script_service/mruby/benchmark/bm_app_lc_fizzbuzz.rb +1 -2
- data/ext/enterprise_script_service/mruby/build_config.rb +3 -2
- data/ext/enterprise_script_service/mruby/doc/guides/debugger.md +1 -1
- data/ext/enterprise_script_service/mruby/doc/guides/mrbgems.md +7 -2
- data/ext/enterprise_script_service/mruby/doc/limitations.md +69 -7
- data/ext/enterprise_script_service/mruby/doc/opcode.md +127 -0
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_arm64-v8a.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_android_armeabi.rb +2 -2
- data/ext/enterprise_script_service/mruby/include/mrbconf.h +9 -3
- data/ext/enterprise_script_service/mruby/include/mruby.h +45 -34
- data/ext/enterprise_script_service/mruby/include/mruby/array.h +17 -0
- data/ext/enterprise_script_service/mruby/include/mruby/boxing_nan.h +1 -1
- data/ext/enterprise_script_service/mruby/include/mruby/boxing_word.h +12 -4
- data/ext/enterprise_script_service/mruby/include/mruby/class.h +18 -15
- data/ext/enterprise_script_service/mruby/include/mruby/common.h +6 -1
- data/ext/enterprise_script_service/mruby/include/mruby/compile.h +6 -5
- data/ext/enterprise_script_service/mruby/include/mruby/data.h +5 -4
- data/ext/enterprise_script_service/mruby/include/mruby/debug.h +5 -5
- data/ext/enterprise_script_service/mruby/include/mruby/dump.h +2 -2
- data/ext/enterprise_script_service/mruby/include/mruby/error.h +1 -1
- data/ext/enterprise_script_service/mruby/include/mruby/hash.h +56 -9
- data/ext/enterprise_script_service/mruby/include/mruby/irep.h +17 -4
- data/ext/enterprise_script_service/mruby/include/mruby/object.h +5 -6
- data/ext/enterprise_script_service/mruby/include/mruby/opcode.h +47 -139
- data/ext/enterprise_script_service/mruby/include/mruby/ops.h +117 -0
- data/ext/enterprise_script_service/mruby/include/mruby/proc.h +8 -8
- data/ext/enterprise_script_service/mruby/include/mruby/range.h +29 -5
- data/ext/enterprise_script_service/mruby/include/mruby/string.h +20 -10
- data/ext/enterprise_script_service/mruby/include/mruby/throw.h +4 -4
- data/ext/enterprise_script_service/mruby/include/mruby/value.h +4 -0
- data/ext/enterprise_script_service/mruby/include/mruby/variable.h +7 -4
- data/ext/enterprise_script_service/mruby/include/mruby/version.h +7 -7
- data/ext/enterprise_script_service/mruby/lib/mruby-core-ext.rb +23 -17
- data/ext/enterprise_script_service/mruby/lib/mruby/build.rb +35 -9
- data/ext/enterprise_script_service/mruby/lib/mruby/build/command.rb +5 -5
- data/ext/enterprise_script_service/mruby/lib/mruby/build/load_gems.rb +5 -3
- data/ext/enterprise_script_service/mruby/lib/mruby/gem.rb +26 -27
- data/ext/enterprise_script_service/mruby/minirake +136 -15
- data/ext/enterprise_script_service/mruby/mrbgems/default.gembox +9 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +54 -50
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/src/array.c +3 -46
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/test/array.rb +9 -24
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mrbgem.rake +23 -0
- data/ext/enterprise_script_service/mruby/mrbgems/{mruby-bin-mruby-config → mruby-bin-config}/mruby-config +0 -0
- data/ext/enterprise_script_service/mruby/mrbgems/{mruby-bin-mruby-config → mruby-bin-config}/mruby-config.bat +0 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/bintest/print.rb +13 -13
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.c +9 -7
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apilist.c +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.c +7 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.h +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdbreak.c +3 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c +7 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdprint.c +24 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdrun.c +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +8 -5
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.h +2 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/bintest/mirb.rb +22 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +84 -17
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/mrbgem.rake +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +9 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/bintest/mruby.rb +38 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +1 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +60 -7
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/bintest/mruby-strip.rb +3 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/tools/mruby-strip/mruby-strip.c +1 -17
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/mrblib/module.rb +89 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/test/module.rb +55 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/codegen.c +918 -767
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/node.h +4 -20
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/parse.y +552 -273
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/mrbgem.rake +3 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-chain/mrbgem.rake +6 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-chain/mrblib/chain.rb +60 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-chain/test/enum_chain.rb +76 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-ext/mrblib/enum.rb +57 -37
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-ext/test/enum.rb +10 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-lazy/mrblib/lazy.rb +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enum-lazy/test/lazy.rb +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/mrblib/enumerator.rb +47 -35
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-enumerator/test/enumerator.rb +22 -17
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/src/eval.c +90 -40
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/test/eval.rb +33 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/src/fiber.c +15 -12
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/mrblib/hash.rb +42 -47
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c +4 -47
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/test/hash.rb +0 -6
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-inline-struct/test/inline.c +12 -10
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-inline-struct/test/inline.rb +17 -50
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrbgem.rake +2 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/io.rb +3 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file.c +11 -8
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/io.c +128 -117
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file.rb +17 -21
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file_test.rb +4 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/io.rb +16 -53
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/mrblib/kernel.rb +2 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +12 -30
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/test/kernel.rb +4 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/src/math.c +7 -10
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-math/test/math.rb +31 -51
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/mrbgem.rake +5 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/src/metaprog.c +702 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/test/metaprog.rb +369 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/mrblib/kernel.rb +3 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/mrblib/method.rb +8 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/src/method.c +4 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/test/method.rb +27 -9
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c +7 -10
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-numeric-ext/test/numeric.rb +2 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/test/nil.rb +2 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/test/objectspace.rb +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/src/pack.c +126 -79
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/test/pack.rb +2 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/mrblib/print.rb +1 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/src/print.c +0 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/mrblib/proc.rb +9 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/src/proc.c +34 -19
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/test/proc.rb +18 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/src/random.c +7 -7
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-random/test/random.rb +0 -12
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/mrblib/range.rb +1 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/src/range.c +13 -14
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.gitignore +4 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.travis.yml +29 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/.travis_build_config.rb +6 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/README.md +27 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/Rakefile +29 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/example/sleep.rb +3 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/mrbgem.rake +5 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/src/mrb_sleep.c +135 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/test/sleep_test.rb +29 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/mrbgem.rake +1 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/mrblib/socket.rb +3 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/const.cstub +6 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/const.def +2 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/src/socket.c +48 -20
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/test/addrinfo.rb +5 -5
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/test/socket.rb +2 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/test/sockettest.c +1 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/sprintf.c +14 -13
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/test/sprintf.rb +6 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/mrblib/string.rb +96 -21
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/src/string.c +626 -190
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/test/string.rb +102 -59
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/mrblib/struct.rb +15 -16
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/src/struct.c +16 -15
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/test/struct.rb +2 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/mrblib/symbol.rb +0 -6
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +13 -6
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +21 -13
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/driver.c +22 -39
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/mrbgem.rake +22 -23
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/include/mruby/time.h +25 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/src/time.c +26 -22
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-toplevel-ext/test/toplevel.rb +2 -2
- data/ext/enterprise_script_service/mruby/mrblib/array.rb +70 -40
- data/ext/enterprise_script_service/mruby/mrblib/enum.rb +4 -3
- data/ext/enterprise_script_service/mruby/mrblib/hash.rb +17 -46
- data/ext/enterprise_script_service/mruby/mrblib/kernel.rb +1 -1
- data/ext/enterprise_script_service/mruby/mrblib/mrblib.rake +1 -4
- data/ext/enterprise_script_service/mruby/mrblib/numeric.rb +2 -2
- data/ext/enterprise_script_service/mruby/mrblib/string.rb +7 -8
- data/ext/enterprise_script_service/mruby/mrblib/symbol.rb +7 -0
- data/ext/enterprise_script_service/mruby/src/array.c +97 -44
- data/ext/enterprise_script_service/mruby/src/backtrace.c +14 -16
- data/ext/enterprise_script_service/mruby/src/class.c +156 -464
- data/ext/enterprise_script_service/mruby/src/codedump.c +436 -364
- data/ext/enterprise_script_service/mruby/src/debug.c +42 -45
- data/ext/enterprise_script_service/mruby/src/dump.c +27 -152
- data/ext/enterprise_script_service/mruby/src/enum.c +18 -2
- data/ext/enterprise_script_service/mruby/src/error.c +5 -4
- data/ext/enterprise_script_service/mruby/src/etc.c +1 -0
- data/ext/enterprise_script_service/mruby/src/fmt_fp.c +15 -1
- data/ext/enterprise_script_service/mruby/src/gc.c +76 -30
- data/ext/enterprise_script_service/mruby/src/hash.c +768 -256
- data/ext/enterprise_script_service/mruby/src/kernel.c +24 -446
- data/ext/enterprise_script_service/mruby/src/load.c +35 -35
- data/ext/enterprise_script_service/mruby/src/mruby_core.rake +2 -3
- data/ext/enterprise_script_service/mruby/src/numeric.c +96 -32
- data/ext/enterprise_script_service/mruby/src/object.c +88 -43
- data/ext/enterprise_script_service/mruby/src/proc.c +16 -14
- data/ext/enterprise_script_service/mruby/src/range.c +186 -176
- data/ext/enterprise_script_service/mruby/src/state.c +5 -5
- data/ext/enterprise_script_service/mruby/src/string.c +79 -93
- data/ext/enterprise_script_service/mruby/src/symbol.c +173 -85
- data/ext/enterprise_script_service/mruby/src/variable.c +283 -177
- data/ext/enterprise_script_service/mruby/src/vm.c +711 -688
- data/ext/enterprise_script_service/mruby/tasks/libmruby.rake +4 -3
- data/ext/enterprise_script_service/mruby/tasks/mrbgems.rake +3 -2
- data/ext/enterprise_script_service/mruby/tasks/toolchains/android.rake +1 -0
- data/ext/enterprise_script_service/mruby/tasks/toolchains/clang.rake +1 -1
- data/ext/enterprise_script_service/mruby/tasks/toolchains/gcc.rake +4 -6
- data/ext/enterprise_script_service/mruby/tasks/toolchains/openwrt.rake +0 -2
- data/ext/enterprise_script_service/mruby/tasks/toolchains/visualcpp.rake +12 -11
- data/ext/enterprise_script_service/mruby/test/assert.rb +114 -121
- data/ext/enterprise_script_service/mruby/test/bintest.rb +10 -1
- data/ext/enterprise_script_service/mruby/test/t/array.rb +11 -11
- data/ext/enterprise_script_service/mruby/test/t/bs_block.rb +32 -31
- data/ext/enterprise_script_service/mruby/test/t/class.rb +11 -23
- data/ext/enterprise_script_service/mruby/test/t/codegen.rb +3 -3
- data/ext/enterprise_script_service/mruby/test/t/enumerable.rb +1 -1
- data/ext/enterprise_script_service/mruby/test/t/exception.rb +2 -2
- data/ext/enterprise_script_service/mruby/test/t/float.rb +41 -2
- data/ext/enterprise_script_service/mruby/test/t/hash.rb +6 -5
- data/ext/enterprise_script_service/mruby/test/t/integer.rb +26 -44
- data/ext/enterprise_script_service/mruby/test/t/kernel.rb +7 -119
- data/ext/enterprise_script_service/mruby/test/t/literals.rb +1 -1
- data/ext/enterprise_script_service/mruby/test/t/module.rb +93 -282
- data/ext/enterprise_script_service/mruby/test/t/numeric.rb +40 -11
- data/ext/enterprise_script_service/mruby/test/t/proc.rb +1 -1
- data/ext/enterprise_script_service/mruby/test/t/range.rb +19 -2
- data/ext/enterprise_script_service/mruby/test/t/string.rb +17 -24
- data/ext/enterprise_script_service/mruby/test/t/symbol.rb +6 -2
- data/ext/enterprise_script_service/mruby/test/t/syntax.rb +191 -3
- data/ext/enterprise_script_service/mruby/travis_config.rb +1 -1
- data/ext/enterprise_script_service/mruby_engine.cpp +1 -1
- data/ext/enterprise_script_service/mruby_engine.gembox +1 -0
- data/ext/enterprise_script_service/msgpack/.travis.yml +77 -44
- data/ext/enterprise_script_service/msgpack/CHANGELOG.md +75 -0
- data/ext/enterprise_script_service/msgpack/CMakeLists.txt +187 -50
- data/ext/enterprise_script_service/msgpack/Doxyfile +1 -1
- data/ext/enterprise_script_service/msgpack/Files.cmake +87 -0
- data/ext/enterprise_script_service/msgpack/QUICKSTART-C.md +3 -3
- data/ext/enterprise_script_service/msgpack/QUICKSTART-CPP.md +1 -1
- data/ext/enterprise_script_service/msgpack/README.md +15 -7
- data/ext/enterprise_script_service/msgpack/appveyor.yml +9 -5
- data/ext/enterprise_script_service/msgpack/ci/build_cmake.sh +2 -2
- data/ext/enterprise_script_service/msgpack/ci/build_regression.sh +49 -0
- data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_define_array.hpp.erb +4 -2
- data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_define_map.hpp.erb +2 -1
- data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_msgpack_tuple.hpp.erb +1 -1
- data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_zone.hpp.erb +25 -18
- data/ext/enterprise_script_service/msgpack/erb/v1/cpp03_zone_decl.hpp.erb +8 -0
- data/ext/enterprise_script_service/msgpack/example/boost/CMakeLists.txt +28 -1
- data/ext/enterprise_script_service/msgpack/example/boost/asio_send_recv.cpp +104 -0
- data/ext/enterprise_script_service/msgpack/example/boost/asio_send_recv_zlib.cpp +176 -0
- data/ext/enterprise_script_service/msgpack/example/c/CMakeLists.txt +4 -2
- data/ext/enterprise_script_service/msgpack/example/c/speed_test_uint32_array.c +1 -1
- data/ext/enterprise_script_service/msgpack/example/c/speed_test_uint64_array.c +1 -1
- data/ext/enterprise_script_service/msgpack/example/cpp03/CMakeLists.txt +15 -3
- data/ext/enterprise_script_service/msgpack/example/cpp03/class_non_intrusive.cpp +1 -1
- data/ext/enterprise_script_service/msgpack/example/cpp11/CMakeLists.txt +5 -1
- data/ext/enterprise_script_service/msgpack/example/x3/CMakeLists.txt +12 -4
- data/ext/enterprise_script_service/msgpack/example/x3/parse.cpp +7 -1
- data/ext/enterprise_script_service/msgpack/example/x3/stream_unpack.cpp +9 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/.gitattributes +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/.gitignore +3 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/.project +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/.pydevproject +5 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/.travis.yml +109 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/appveyor.yml +149 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/build.jam +6 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/check/predef.jam +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/.gitignore +1 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/build.jam +100 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/hardware_simd.qbk +89 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/history.qbk +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/predef.qbk +734 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/doc/todo.qbk +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/detail/endian.hpp +11 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef.h +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture.h +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/alpha.h +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/arm.h +80 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/blackfin.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/convex.h +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ia64.h +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/m68k.h +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/mips.h +73 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/parisc.h +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ppc.h +72 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/ptx.h +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/pyramid.h +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/rs6k.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sparc.h +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/superh.h +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sys370.h +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/sys390.h +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86.h +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86/32.h +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/x86/64.h +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/architecture/z.h +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler.h +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/borland.h +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/clang.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/comeau.h +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/compaq.h +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/diab.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/digitalmars.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/dignus.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/edg.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/ekopath.h +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/gcc.h +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/gcc_xml.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/greenhills.h +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/hp_acc.h +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/iar.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/ibm.h +72 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/intel.h +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/kai.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/llvm.h +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/metaware.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/metrowerks.h +77 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/microtec.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/mpw.h +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/nvcc.h +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/palm.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/pgi.h +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/sgi_mipspro.h +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/sunpro.h +76 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/tendra.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/visualc.h +105 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/compiler/watcom.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/_cassert.h +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/_exception.h +15 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/comp_detected.h +10 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/endian_compat.h +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/os_detected.h +10 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/platform_detected.h +10 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/test.h +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/detail/test_def.h +71 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware.h +16 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd.h +119 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/arm.h +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/arm/versions.h +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/ppc.h +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/ppc/versions.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86.h +123 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86/versions.h +129 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86_amd.h +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/hardware/simd/x86_amd/versions.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language.h +18 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/cuda.h +52 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/objc.h +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/stdc.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/language/stdcpp.h +121 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library.h +16 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c.h +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/_prefix.h +13 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/cloudabi.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/gnu.h +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/uc.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/vms.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/c/zos.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std.h +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/_prefix.h +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/cxx.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/dinkumware.h +52 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/libcomo.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/modena.h +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/msl.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/roguewave.h +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/sgi.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/stdcpp3.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/stlport.h +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/library/std/vacpp.h +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/make.h +97 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os.h +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/aix.h +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/amigaos.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/android.h +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/beos.h +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd.h +103 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/bsdi.h +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/dragonfly.h +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/free.h +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/net.h +84 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/bsd/open.h +251 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/cygwin.h +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/haiku.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/hpux.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/ios.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/irix.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/linux.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/macos.h +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/os400.h +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/qnxnto.h +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/solaris.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/unix.h +76 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/vms.h +52 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/os/windows.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other.h +16 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other/endian.h +203 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/other/workaround.h +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform.h +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/cloudabi.h +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/ios.h +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw.h +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw32.h +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/mingw64.h +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_desktop.h +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_phone.h +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_runtime.h +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_server.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_store.h +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_system.h +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/platform/windows_uwp.h +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/version.h +15 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/include/boost/predef/version_number.h +72 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/index.html +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/meta/libraries.json +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/.gitignore +3 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/build.jam +80 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/check_value.cpp +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_c.c +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_cpp.cpp +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_objc.m +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/info_as_objcpp.mm +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/macos_endian.c +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/macos_vs_bsd.c +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/make.cpp +94 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/platform_windows.cpp +177 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/predef_info.h +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/tested_at.cpp +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/tested_at_outdated.cpp +18 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/version.cpp +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/workaround.cpp +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/test/workaround_strict_config.cpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/build.jam +9 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef.jam +202 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check.h +98 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_c.c +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_cpp.cpp +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_objc.m +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_as_objcpp.mm +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc.h +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_c.c +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_cpp.cpp +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_objc.m +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/check/predef_check_cc_as_objcpp.mm +7 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/build_log.py +428 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/common.py +878 -0
- data/ext/enterprise_script_service/msgpack/external/boost/predef/tools/ci/library_test.py +198 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/.gitattributes +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/.travis.yml +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/appveyor.yml +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html +2494 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/acknowledgements.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/bibliography.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/contents.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/arrays.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/lists.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/sequences.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/data/tuples.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/array_arithmetic.c +196 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/catch_builtin.cpp +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/delay.c +95 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/duffs_device.c +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/is_integral.cpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/examples/linear_fib.c +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers.html +249 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/add.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/dec.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/div.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/inc.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/mod.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/mul.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/arithmetic/sub.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array.html +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/data.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/elem.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/enum.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/insert.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/pop_back.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/pop_front.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/push_back.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/push_front.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/remove.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/replace.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/reverse.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/size.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_list.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_seq.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/array/to_tuple.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/assert_msg.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/cat.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comma.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comma_if.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/equal.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/greater.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/greater_equal.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/less.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/less_equal.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/comparison/not_equal.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/config/limits.html +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/config/variadics.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/deduce_d.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/expr_if.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/expr_iif.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/if.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/iif.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/control/while.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug/assert.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/debug/line.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/dec.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/empty.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_shifted.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/enum_shifted_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/epwad.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/epwd.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/expand.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/expr_if.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/apply.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/empty.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/expand.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/identity.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/intercept.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/facilities/overload.html +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/for.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/identity.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/if.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/inc.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iterate.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/iterate.html +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/local.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/iteration/self.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/library.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/limits.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list.html +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/adt.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/append.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/at.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/cat.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/enum.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/filter.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/first_n.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/fold_left.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/fold_right.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each_i.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/for_each_product.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/rest_n.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/reverse.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/size.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_array.html +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_seq.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/to_tuple.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/list/transform.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical.html +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/and.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitand.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitnor.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitor.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bitxor.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/bool.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/compl.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/nor.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/not.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/or.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/logical/xor.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/max.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/min.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/preprocessor.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation.html +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/comma.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/comma_if.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/is_begin_parens.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/paren.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/paren_if.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/punctuation/remove_parens.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_2nd.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_3rd.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to_2nd.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repeat_from_to_3rd.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition.html +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/deduce_r.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/deduce_z.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_binary_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_shifted.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_shifted_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_trailing.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/enum_trailing_params.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/epwad.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/epwd.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/esbp.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/etbp.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/for.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/repeat.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/repetition/repeat_from_to.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection/max.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/selection/min.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/cat.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/elem.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/enum.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/filter.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/first_n.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/fold_left.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/fold_right.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each_i.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/for_each_product.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/insert.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/pop_back.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/pop_front.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/push_back.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/push_front.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/remove.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/replace.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/rest_n.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/reverse.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/seq.html +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/size.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/subseq.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_array.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_list.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/to_tuple.html +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/transform.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/seq/variadic_seq_to_seq.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot/counter.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/slot/slot.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/stringize.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple.html +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/eat.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/elem.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/enum.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/insert.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/pop_back.html +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/pop_front.html +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/push_back.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/push_front.html +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/rem.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/remove.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/replace.html +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/reverse.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/size.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_array.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_list.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/tuple/to_seq.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic.html +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/elem.html +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/size.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_array.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_list.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_seq.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/variadic/to_tuple.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/while.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/headers/wstringize.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/index.html +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/miscellanea.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref.html +319 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/add.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/add_d.html +90 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/and.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/apply.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_data.html +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_elem.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_enum.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_insert.html +71 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_insert_d.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_back.html +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_back_z.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_front.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_pop_front_z.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_push_back.html +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_push_front.html +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_remove.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_remove_d.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_replace.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_replace_d.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_reverse.html +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_size.html +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_list.html +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_seq.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/array_to_tuple.html +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assert.html +114 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assert_msg.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/assign_slot.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitand.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitnor.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitor.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bitxor.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/bool.html +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/cat.html +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/comma.html +43 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/comma_if.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/compl.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/config_extended_line_info.html +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/counter.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/dec.html +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_d.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_r.html +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/deduce_z.html +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/div.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/div_d.html +85 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/empty.html +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum.html +80 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_binary_params.html +76 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_binary_params_z.html +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_with_a_default.html +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_with_defaults.html +84 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_params_z.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_params.html +73 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_params_z.html +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_shifted_z.html +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing.html +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_params.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_params_z.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_trailing_z.html +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/enum_z.html +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/equal.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/equal_d.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/esbp.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/esbpz.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/etbp.html +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/etbpz.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expand.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expr_if.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/expr_iif.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/filename_x.html +52 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for.html +105 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for_r.html +148 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/for_r_macros.html +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_finish.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_flags.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_iteration.html +73 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/frame_start.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_d.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_equal.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/greater_equal_d.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/identity.html +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/identity_n.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/if.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iif.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/inc.html +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/include_self.html +101 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/indirect_self.html +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/intercept.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_begin_parens.html +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_iterating.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/is_selfish.html +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iterate.html +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_depth.html +73 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_finish.html +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_flags.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_limits.html +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_params_x.html +77 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/iteration_start.html +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_d.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_equal.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/less_equal_d.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_dim.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_for.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_iteration.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_iteration_dim.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_mag.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_repeat.html +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_seq.html +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_slot_count.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_slot_sig.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_tuple.html +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_variadic.html +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/limit_while.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/line.html +112 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_append.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_append_d.html +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_at.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_at_d.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cat.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cat_d.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_cons.html +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_enum.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_enum_r.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_filter.html +76 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_filter_d.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first_n.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_first_n_d.html +71 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left.html +75 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_2nd.html +75 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_2nd_d.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_d.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_left_d_old.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right.html +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_2nd.html +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_2nd_d.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_d.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_fold_right_d_old.html +90 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each.html +75 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_i.html +75 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_i_r.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_product.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_product_r.html +118 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_for_each_r.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_is_cons.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_is_nil.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_nil.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest_n.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_rest_n_d.html +71 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_reverse.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_reverse_d.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_size.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_size_d.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_array.html +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_array_d.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_seq.html +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_seq_r.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_tuple.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_to_tuple_r.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_transform.html +78 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/list_transform_d.html +86 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_iterate.html +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_limits.html +80 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/local_macro.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/lparen.html +52 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/lparen_if.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/max.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/max_d.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/min.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/min_d.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mod.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mod_d.html +75 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mul.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/mul_d.html +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/nil.html +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/nor.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not.html +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not_equal.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/not_equal_d.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/or.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/overload.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_finish.html +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_flags.html +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_iteration.html +101 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/relative_start.html +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/remove_parens.html +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat.html +80 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_1st.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_2nd.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_3rd.html +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to.html +102 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_1st.html +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_2nd.html +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_3rd.html +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_d.html +83 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_d_z.html +84 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_from_to_z.html +105 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_z.html +92 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/repeat_z_macros.html +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/rparen.html +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/rparen_if.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_cat.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_cat_s.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_elem.html +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_enum.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_filter.html +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_filter_s.html +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_first_n.html +67 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_left.html +90 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_left_s.html +96 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_right.html +92 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_fold_right_s.html +97 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each.html +90 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_i.html +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_i_r.html +78 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_product.html +100 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_product_r.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_for_each_r.html +77 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_head.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_insert.html +70 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_nil.html +81 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_pop_back.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_pop_front.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_push_back.html +76 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_push_front.html +78 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_remove.html +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_replace.html +71 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_rest_n.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_reverse.html +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_reverse_s.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_size.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_subseq.html +69 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_tail.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_array.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_list.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_to_tuple.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_transform.html +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/seq_transform_s.html +79 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/slot.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/stringize.html +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/sub.html +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/sub_d.html +85 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_eat.html +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_elem.html +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_enum.html +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_insert.html +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_insert_d.html +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_back.html +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_back_z.html +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_front.html +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_pop_front_z.html +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_push_back.html +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_push_front.html +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_rem.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_rem_ctor.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_remove.html +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_remove_d.html +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_replace.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_replace_d.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_reverse.html +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_size.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_array.html +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_list.html +60 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/tuple_to_seq.html +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/update_counter.html +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/value.html +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_elem.html +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_seq_to_seq.html +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_size.html +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_array.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_list.html +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_seq.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadic_to_tuple.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/variadics.html +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while.html +116 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while_d.html +117 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/while_d_macros.html +89 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/wstringize.html +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/ref/xor.html +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/styles.css +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/syntax.html +307 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms.html +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms/evaluated.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/terms/named_external.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/title.html +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/top.html +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics.html +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/evaluated_slots.html +157 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/file_iteration.html +1044 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/incompatible.html +140 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/local_iteration.html +156 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/motivation.html +119 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/problems.html +135 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/reentrancy.html +298 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/techniques.html +350 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/doc/topics/variadic_macros.html +262 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor.hpp +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/add.hpp +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/dec.hpp +289 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/detail/div_base.hpp +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/div.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/inc.hpp +288 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/mod.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/mul.hpp +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/arithmetic/sub.hpp +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/data.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/detail/get_data.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/elem.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/enum.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/insert.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/pop_back.hpp +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/pop_front.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/push_back.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/push_front.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/remove.hpp +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/replace.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/reverse.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/size.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_list.hpp +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_seq.hpp +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/array/to_tuple.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/assert_msg.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/cat.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comma.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comma_if.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison.hpp +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/equal.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/greater.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/greater_equal.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/less.hpp +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/less_equal.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/comparison/not_equal.hpp +814 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/config/config.hpp +106 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/config/limits.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/deduce_d.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/dmc/while.hpp +536 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/edg/while.hpp +534 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/msvc/while.hpp +277 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/detail/while.hpp +536 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/expr_if.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/expr_iif.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/if.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/iif.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/control/while.hpp +312 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug.hpp +18 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/assert.hpp +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/error.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/debug/line.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/dec.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/auto_rec.hpp +293 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/check.hpp +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/dmc/auto_rec.hpp +286 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_binary.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_nullary.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/is_unary.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/null.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/detail/split.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/empty.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params_with_a_default.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_params_with_defaults.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_shifted.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/enum_shifted_params.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/expand.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/expr_if.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/apply.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/detail/is_empty.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/empty.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/expand.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/identity.hpp +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/intercept.hpp +277 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_1.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty.hpp +56 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty_or_1.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/is_empty_variadic.hpp +57 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/facilities/overload.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/for.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/identity.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/if.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/inc.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iterate.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration.hpp +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/finish.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward1.hpp +1342 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward2.hpp +1338 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward3.hpp +1338 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward4.hpp +1338 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/forward5.hpp +1338 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp +1296 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp +1296 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp +1296 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp +1296 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp +1296 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/local.hpp +812 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/rlocal.hpp +782 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/self.hpp +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/detail/start.hpp +99 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/iterate.hpp +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/local.hpp +26 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/iteration/self.hpp +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/library.hpp +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/limits.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list.hpp +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/adt.hpp +73 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/append.hpp +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/at.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/cat.hpp +42 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/dmc/fold_left.hpp +279 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/edg/fold_left.hpp +536 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/edg/fold_right.hpp +794 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/fold_left.hpp +279 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/detail/fold_right.hpp +277 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/enum.hpp +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/filter.hpp +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/first_n.hpp +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/fold_left.hpp +303 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/fold_right.hpp +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each_i.hpp +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/for_each_product.hpp +141 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/rest_n.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/reverse.hpp +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/size.hpp +58 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_array.hpp +155 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_seq.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/to_tuple.hpp +61 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/list/transform.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/and.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitand.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitnor.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitor.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bitxor.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/bool.hpp +288 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/compl.hpp +36 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/nor.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/not.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/or.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/logical/xor.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/max.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/min.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/comma.hpp +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/comma_if.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/detail/is_begin_parens.hpp +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/is_begin_parens.hpp +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/paren.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/paren_if.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/punctuation/remove_parens.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_2nd.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_3rd.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to_2nd.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repeat_from_to_3rd.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/deduce_r.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/deduce_z.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/dmc/for.hpp +536 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/edg/for.hpp +534 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/for.hpp +536 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/detail/msvc/for.hpp +277 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum.hpp +66 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_binary_params.hpp +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params.hpp +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted.hpp +68 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp +51 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_shifted_params.hpp +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing.hpp +63 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/enum_trailing_params.hpp +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/for.hpp +324 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/repeat.hpp +825 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/repetition/repeat_from_to.hpp +87 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection.hpp +18 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection/max.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/selection/min.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq.hpp +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/cat.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/binary_transform.hpp +47 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/is_empty.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/split.hpp +284 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/detail/to_list_msvc.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/elem.hpp +304 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/enum.hpp +288 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/filter.hpp +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/first_n.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/fold_left.hpp +1070 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/fold_right.hpp +288 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each.hpp +107 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each_i.hpp +109 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/for_each_product.hpp +126 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/insert.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/pop_back.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/pop_front.hpp +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/push_back.hpp +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/push_front.hpp +19 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/remove.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/replace.hpp +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/rest_n.hpp +46 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/reverse.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/seq.hpp +44 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/size.hpp +548 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/subseq.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_array.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_list.hpp +41 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/to_tuple.hpp +27 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/transform.hpp +48 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/seq/variadic_seq_to_seq.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/counter.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/counter.hpp +269 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/def.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/shared.hpp +247 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot1.hpp +267 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot2.hpp +267 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot3.hpp +267 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot4.hpp +267 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/detail/slot5.hpp +267 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/slot/slot.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/stringize.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/detail/is_single_return.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/eat.hpp +115 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/elem.hpp +201 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/enum.hpp +22 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/insert.hpp +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/pop_back.hpp +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/pop_front.hpp +65 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/push_back.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/push_front.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/rem.hpp +149 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/remove.hpp +64 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/replace.hpp +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/reverse.hpp +117 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/size.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_array.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_list.hpp +118 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/tuple/to_seq.hpp +119 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/detail/is_single_return.hpp +28 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/elem.hpp +94 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/size.hpp +30 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_array.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_list.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_seq.hpp +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/variadic/to_tuple.hpp +24 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/while.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/include/boost/preprocessor/wstringize.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/index.html +18 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/meta/libraries.json +15 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/Jamfile.v2 +252 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/arithmetic.cxx +82 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.c +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.cpp +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/array.cxx +192 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.c +13 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/comparison.cxx +45 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/config_info.cpp +93 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/control.cxx +40 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/debug.cxx +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/facilities.cxx +55 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty.cxx +145 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure.cxx +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/isempty_variadic_standard_failure2.cxx +25 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/iteration.cpp +33 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/iteration.h +62 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.c +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.cpp +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/list.cxx +91 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/logical.cxx +59 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.c +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.cpp +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/punctuation.cxx +54 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/repetition.cpp +50 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/selection.cxx +21 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.c +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.cpp +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/seq.cxx +222 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/slot.cxx +53 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/test.h +37 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.c +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.cpp +14 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple.cxx +266 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/tuple_elem_bug_test.cxx +38 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.c +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.cpp +12 -0
- data/ext/enterprise_script_service/msgpack/external/boost/preprocessor/test/variadic.cxx +56 -0
- data/ext/enterprise_script_service/msgpack/fuzz/CMakeLists.txt +43 -0
- data/ext/enterprise_script_service/msgpack/fuzz/regression_runner.cpp +50 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer.cpp +23 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_regressions/clusterfuzz-testcase-minimized-unpack_pack_fuzzer-5656982724804608 +0 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_regressions/clusterfuzz-testcase-minimized-unpack_pack_fuzzer-6022481354686464 +0 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_seed_corpus/EmptyArray +1 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_seed_corpus/EmptyObject +1 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_seed_corpus/ExcessiveNesting +2 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_seed_corpus/OpenWeatherMap +0 -0
- data/ext/enterprise_script_service/msgpack/fuzz/unpack_pack_fuzzer_seed_corpus/WeatherUnderground +0 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack.hpp +4 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/adaptor_base.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/adaptor_base_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/array_ref_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/boost/msgpack_variant_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/check_container_size_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp11/chrono.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp17/byte.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp17/carray_byte.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp17/optional.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp17/string_view.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/cpp17/vector_byte.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/define_decl.hpp +25 -24
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/ext_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/fixint_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/int_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/map_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/msgpack_tuple_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/nil_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/raw_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/size_equal_only_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/tr1/unordered_map.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/tr1/unordered_set.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/adaptor/v4raw_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/cpp_config_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/create_object_visitor.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/create_object_visitor_decl.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/fbuffer_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/iterator_decl.hpp +2 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/meta_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/null_visitor.hpp +17 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/null_visitor_decl.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/object_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/object_fwd.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/object_fwd_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/pack.h +4 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/pack_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/pack_template.h +28 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/parse.hpp +18 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/parse_decl.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/parse_return.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/architecture.h +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/architecture/arm.h +11 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/architecture/parisc.h +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/architecture/ptx.h +44 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/compiler.h +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/compiler/intel.h +17 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/compiler/nvcc.h +60 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/compiler/visualc.h +15 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/hardware/simd/arm.h +3 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/hardware/simd/x86_amd/versions.h +3 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/language.h +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/language/cuda.h +52 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/library/c.h +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/library/c/cloudabi.h +53 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/make.h +8 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/os/android.h +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/os/bsd/free.h +10 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/os/bsd/open.h +80 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/other/endian.h +1 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/other/workaround.h +87 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform.h +9 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/cloudabi.h +43 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/ios.h +58 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/mingw.h +4 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/mingw32.h +63 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/mingw64.h +63 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_desktop.h +9 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_phone.h +7 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_runtime.h +13 -5
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_server.h +47 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_store.h +11 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_system.h +47 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/platform/windows_uwp.h +60 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/version.h +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/predef/version_number.h +20 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/preprocessor/cat.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/preprocessor/config/config.hpp +13 -11
- data/ext/enterprise_script_service/msgpack/include/msgpack/preprocessor/seq/detail/binary_transform.hpp +5 -6
- data/ext/enterprise_script_service/msgpack/include/msgpack/preprocessor/seq/detail/to_list_msvc.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/preprocessor/seq/to_list.hpp +12 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/sbuffer_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/sysdep.h +31 -26
- data/ext/enterprise_script_service/msgpack/include/msgpack/timestamp.h +58 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/type.hpp +13 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/unpack.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/unpack_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/unpack_template.h +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/array_ref.hpp +6 -6
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/boost/fusion.hpp +48 -5
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/carray.hpp +5 -5
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/char_ptr.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/array.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/array_char.hpp +8 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/array_unsigned_char.hpp +8 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/chrono.hpp +215 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/forward_list.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/tuple.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/unordered_map.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp11/unordered_set.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/byte.hpp +74 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/carray_byte.hpp +109 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/optional.hpp +90 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/string_view.hpp +86 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/vector_byte.hpp +119 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/deque.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp +1088 -32
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp03_define_map.hpp +32 -16
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp03_msgpack_tuple.hpp +32 -32
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_convert_helper.hpp +45 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_define_array.hpp +4 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_define_map.hpp +4 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/detail/cpp11_msgpack_tuple.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/ext.hpp +3 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/fixint.hpp +40 -24
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/int.hpp +55 -33
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/list.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/map.hpp +7 -7
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/pair.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/set.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/string.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/tr1/unordered_map.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/tr1/unordered_set.hpp +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector.hpp +5 -5
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector_bool.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector_char.hpp +9 -9
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector_unsigned_char.hpp +9 -9
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/cpp_config.hpp +4 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/cpp_config_decl.hpp +6 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp03_zone.hpp +41 -34
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp03_zone_decl.hpp +8 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp11_zone.hpp +25 -19
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/detail/cpp11_zone_decl.hpp +8 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/object.hpp +768 -404
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/object_decl.hpp +8 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/object_fwd.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/unpack.hpp +5 -6
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/vrefbuffer.hpp +15 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/create_object_visitor.hpp +14 -7
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/create_object_visitor_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/null_visitor.hpp +5 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/null_visitor_decl.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/object_decl.hpp +4 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/object_fwd.hpp +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/pack_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/parse.hpp +41 -23
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/parse_decl.hpp +79 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/unpack.hpp +7 -3
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/unpack_decl.hpp +8 -36
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/x3_parse.hpp +5 -6
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/x3_parse_decl.hpp +36 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/x3_unpack.hpp +13 -12
- data/ext/enterprise_script_service/msgpack/include/msgpack/v2/x3_unpack_decl.hpp +71 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/adaptor_base.hpp +58 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/adaptor_base_decl.hpp +52 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/array_ref_decl.hpp +36 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/boost/msgpack_variant_decl.hpp +42 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/check_container_size_decl.hpp +39 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/define_decl.hpp +23 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp03_define_array_decl.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp03_define_map_decl.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp03_msgpack_tuple_decl.hpp +43 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp11_define_array_decl.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp11_define_map_decl.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/detail/cpp11_msgpack_tuple_decl.hpp +59 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/ext_decl.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/fixint_decl.hpp +43 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/int_decl.hpp +54 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/map_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/msgpack_tuple_decl.hpp +21 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/nil_decl.hpp +42 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/raw_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/size_equal_only_decl.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/adaptor/v4raw_decl.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/cpp_config_decl.hpp +84 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/create_object_visitor_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/detail/cpp03_zone_decl.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/detail/cpp11_zone_decl.hpp +31 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/fbuffer_decl.hpp +32 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/iterator_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/meta_decl.hpp +50 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/null_visitor_decl.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/object_decl.hpp +53 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/object_fwd.hpp +70 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/object_fwd_decl.hpp +75 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/pack_decl.hpp +55 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/parse.hpp +677 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/parse_decl.hpp +49 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/parse_return.hpp +35 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/sbuffer_decl.hpp +33 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/unpack.hpp +192 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/unpack_decl.hpp +304 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/vrefbuffer_decl.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/x3_parse_decl.hpp +34 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/x3_unpack.hpp +97 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/x3_unpack_decl.hpp +65 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/zbuffer_decl.hpp +29 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/zone_decl.hpp +21 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/version_master.h +1 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/versioning.hpp +3 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/vrefbuffer.h +1 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/vrefbuffer_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/x3_parse.hpp +15 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/x3_parse_decl.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/x3_unpack.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/x3_unpack_decl.hpp +16 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/zbuffer_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/include/msgpack/zone_decl.hpp +1 -0
- data/ext/enterprise_script_service/msgpack/makedist.sh +2 -0
- data/ext/enterprise_script_service/msgpack/msgpack-config.cmake.in +23 -0
- data/ext/enterprise_script_service/msgpack/src/objectc.c +1 -1
- data/ext/enterprise_script_service/msgpack/src/unpack.c +8 -8
- data/ext/enterprise_script_service/msgpack/src/vrefbuffer.c +13 -1
- data/ext/enterprise_script_service/msgpack/test/CMakeLists.txt +13 -6
- data/ext/enterprise_script_service/msgpack/test/boost_fusion.cpp +31 -0
- data/ext/enterprise_script_service/msgpack/test/boost_variant.cpp +3 -3
- data/ext/enterprise_script_service/msgpack/test/cases.cpp +7 -0
- data/ext/enterprise_script_service/msgpack/test/fuzz_unpack_pack_fuzzer_cpp11.cpp +8 -0
- data/ext/enterprise_script_service/msgpack/test/json.cpp +1 -1
- data/ext/enterprise_script_service/msgpack/test/msgpack_c.cpp +114 -6
- data/ext/enterprise_script_service/msgpack/test/msgpack_cpp11.cpp +188 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_cpp17.cpp +333 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_vref.cpp +11 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_x3_parse.cpp +9 -3
- data/ext/enterprise_script_service/msgpack/test/object.cpp +11 -2
- data/ext/enterprise_script_service/msgpack/test/object_with_zone.cpp +72 -8
- data/ext/enterprise_script_service/msgpack/test/pack_unpack.cpp +96 -0
- data/ext/enterprise_script_service/msgpack/test/pack_unpack_c.cpp +1 -1
- data/ext/enterprise_script_service/msgpack/test/user_class.cpp +38 -13
- data/ext/enterprise_script_service/msgpack/test/visitor.cpp +350 -6
- data/ext/enterprise_script_service/msgpack/update_version.sh +17 -0
- data/lib/script_core/version.rb +1 -1
- data/lib/tasks/script_core.rake +5 -2
- data/script_core.gemspec +0 -1
- data/spec/dummy/app/controllers/application_controller.rb +18 -0
- data/spec/dummy/app/controllers/fields/choices_controller.rb +50 -0
- data/spec/dummy/app/controllers/forms/formulas/playgrounds_controller.rb +2 -2
- data/spec/dummy/app/controllers/playgrounds_controller.rb +18 -3
- data/spec/dummy/app/controllers/time_zones_controller.rb +14 -0
- data/spec/dummy/app/helpers/fields_helper.rb +0 -4
- data/spec/dummy/app/lib/script_engine.rb +18 -7
- data/spec/dummy/app/models/choice.rb +10 -0
- data/spec/dummy/app/models/concerns/fields/helper.rb +23 -0
- data/spec/dummy/app/models/concerns/fields/validations/acceptance.rb +1 -1
- data/spec/dummy/app/models/concerns/fields/validations/confirmation.rb +1 -1
- data/spec/dummy/app/models/concerns/fields/validations/exclusion.rb +2 -2
- data/spec/dummy/app/models/concerns/fields/validations/format.rb +5 -7
- data/spec/dummy/app/models/concerns/fields/validations/inclusion.rb +2 -2
- data/spec/dummy/app/models/concerns/fields/validations/length.rb +2 -2
- data/spec/dummy/app/models/concerns/fields/validations/numericality.rb +2 -2
- data/spec/dummy/app/models/concerns/fields/validations/presence.rb +1 -1
- data/spec/dummy/app/models/field.rb +8 -8
- data/spec/dummy/app/models/field_options.rb +16 -8
- data/spec/dummy/app/models/fields.rb +4 -0
- data/spec/dummy/app/models/fields/boolean_field.rb +1 -1
- data/spec/dummy/app/models/fields/date_field.rb +24 -0
- data/spec/dummy/app/models/fields/datetime_field.rb +24 -0
- data/spec/dummy/app/models/fields/multiple_nested_form_field.rb +8 -3
- data/spec/dummy/app/models/fields/multiple_select_field.rb +42 -0
- data/spec/dummy/app/models/fields/nested_form_field.rb +6 -5
- data/spec/dummy/app/models/fields/options/date_field.rb +138 -0
- data/spec/dummy/app/models/fields/options/datetime_field.rb +138 -0
- data/spec/dummy/app/models/fields/options/multiple_select_field.rb +7 -0
- data/spec/dummy/app/models/fields/options/select_field.rb +7 -0
- data/spec/dummy/app/models/fields/select_field.rb +25 -0
- data/spec/dummy/app/models/fields/validations/boolean_field.rb +1 -1
- data/spec/dummy/app/models/fields/validations/date_field.rb +7 -0
- data/spec/dummy/app/models/fields/validations/datetime_field.rb +7 -0
- data/spec/dummy/app/models/fields/validations/decimal_field.rb +2 -2
- data/spec/dummy/app/models/fields/validations/integer_field.rb +2 -2
- data/spec/dummy/app/models/fields/validations/multiple_nested_form_field.rb +2 -2
- data/spec/dummy/app/models/fields/validations/multiple_select_field.rb +8 -0
- data/spec/dummy/app/models/fields/validations/nested_form_field.rb +1 -1
- data/spec/dummy/app/models/fields/validations/select_field.rb +7 -0
- data/spec/dummy/app/models/fields/validations/text_field.rb +3 -3
- data/spec/dummy/app/models/metal_form.rb +4 -0
- data/spec/dummy/app/models/non_configurable.rb +4 -0
- data/spec/dummy/app/models/virtual_model.rb +8 -0
- data/spec/dummy/app/presenters/fields/date_field_presenter.rb +53 -0
- data/spec/dummy/app/presenters/fields/datetime_field_presenter.rb +53 -0
- data/spec/dummy/app/presenters/fields/field_presenter.rb +3 -2
- data/spec/dummy/app/presenters/fields/multiple_select_field_presenter.rb +37 -0
- data/spec/dummy/app/presenters/fields/select_field_presenter.rb +26 -0
- data/spec/dummy/app/views/_form_core/field_options/_date_field.html.erb +97 -0
- data/spec/dummy/app/views/_form_core/field_options/_datetime_field.html.erb +97 -0
- data/spec/dummy/app/views/_form_core/field_options/_multiple_select_field.html.erb +12 -0
- data/spec/dummy/app/views/_form_core/field_options/_select_field.html.erb +12 -0
- data/spec/dummy/app/views/_form_core/fields/_date_field.html.erb +9 -0
- data/spec/dummy/app/views/_form_core/fields/_datetime_field.html.erb +9 -0
- data/spec/dummy/app/views/_form_core/fields/_multiple_select_field.html.erb +18 -0
- data/spec/dummy/app/views/_form_core/fields/_select_field.html.erb +17 -0
- data/spec/dummy/app/views/fields/choices/_form.html.erb +34 -0
- data/spec/dummy/app/views/fields/choices/edit.html.erb +6 -0
- data/spec/dummy/app/views/fields/choices/index.html.erb +27 -0
- data/spec/dummy/app/views/fields/choices/new.html.erb +6 -0
- data/spec/dummy/app/views/forms/fields/index.html.erb +4 -1
- data/spec/dummy/app/views/forms/formulas/playgrounds/create.html.erb +1 -1
- data/spec/dummy/app/views/layouts/_nav.html.erb +22 -0
- data/spec/dummy/app/views/nested_forms/fields/index.html.erb +10 -3
- data/spec/dummy/app/views/playgrounds/_form.html.erb +1 -1
- data/spec/dummy/config/application.rb +2 -1
- data/spec/dummy/config/initializers/validates_timeliness.rb +42 -0
- data/spec/dummy/config/routes.rb +3 -0
- data/spec/dummy/db/migrate/20180916202025_create_forms.form_core.rb +1 -0
- data/spec/dummy/db/migrate/20180916202122_create_choices.rb +12 -0
- data/spec/dummy/db/migrate/20180916202123_add_position_to_choices.rb +9 -0
- data/spec/dummy/db/schema.rb +19 -5
- data/spec/dummy/lib/monkey_patches/big_decimal.rb +7 -3
- data/spec/dummy/lib/monkey_patches/date.rb +12 -0
- data/spec/dummy/lib/monkey_patches/time.rb +12 -0
- data/spec/dummy/mruby/engine.gembox +1 -0
- data/spec/dummy/mruby/lib/core_ext.rb +64 -2
- data/spec/dummy/mruby/lib/input.rb +16 -4
- data/spec/dummy/mruby/lib/io.rb +4 -3
- data/spec/dummy/mruby/lib/output.rb +2 -28
- data/spec/dummy/mruby/lib/script_kernel.rb +8 -7
- data/spec/script_core_spec.rb +2 -2
- data/tests/googletest/.clang-format +4 -0
- data/tests/googletest/.gitignore +82 -0
- data/tests/googletest/.travis.yml +68 -29
- data/tests/googletest/BUILD.bazel +179 -0
- data/tests/googletest/CMakeLists.txt +21 -4
- data/tests/googletest/CONTRIBUTING.md +161 -0
- data/tests/googletest/LICENSE +28 -0
- data/tests/googletest/Makefile.am +12 -0
- data/tests/googletest/README.md +28 -41
- data/tests/googletest/WORKSPACE +10 -0
- data/tests/googletest/appveyor.yml +118 -35
- data/tests/googletest/ci/build-linux-autotools.sh +44 -0
- data/tests/googletest/ci/build-linux-bazel.sh +36 -0
- data/tests/googletest/ci/build-platformio.sh +2 -0
- data/tests/googletest/ci/env-linux.sh +41 -0
- data/tests/googletest/ci/env-osx.sh +47 -0
- data/tests/googletest/ci/get-nprocessors.sh +48 -0
- data/tests/googletest/ci/install-linux.sh +49 -0
- data/tests/googletest/ci/install-osx.sh +40 -0
- data/tests/googletest/ci/install-platformio.sh +5 -0
- data/tests/googletest/ci/log-config.sh +51 -0
- data/tests/googletest/ci/travis.sh +44 -0
- data/tests/googletest/configure.ac +16 -0
- data/tests/googletest/googlemock/CMakeLists.txt +78 -55
- data/tests/googletest/googlemock/Makefile.am +6 -8
- data/tests/googletest/googlemock/README.md +33 -73
- data/tests/googletest/googlemock/cmake/gmock.pc.in +11 -0
- data/tests/googletest/googlemock/cmake/gmock_main.pc.in +11 -0
- data/tests/googletest/googlemock/configure.ac +6 -18
- data/tests/googletest/googlemock/docs/CheatSheet.md +126 -99
- data/tests/googletest/googlemock/docs/CookBook.md +271 -286
- data/tests/googletest/googlemock/docs/DesignDoc.md +29 -27
- data/tests/googletest/googlemock/docs/Documentation.md +7 -4
- data/tests/googletest/googlemock/docs/ForDummies.md +41 -33
- data/tests/googletest/googlemock/docs/FrequentlyAskedQuestions.md +28 -29
- data/tests/googletest/googlemock/include/gmock/gmock-actions.h +232 -240
- data/tests/googletest/googlemock/include/gmock/gmock-cardinalities.h +12 -6
- data/tests/googletest/googlemock/include/gmock/gmock-function-mocker.h +218 -0
- data/tests/googletest/googlemock/include/gmock/gmock-generated-actions.h +304 -796
- data/tests/googletest/googlemock/include/gmock/gmock-generated-actions.h.pump +18 -184
- data/tests/googletest/googlemock/include/gmock/gmock-generated-function-mockers.h +330 -673
- data/tests/googletest/googlemock/include/gmock/gmock-generated-function-mockers.h.pump +77 -141
- data/tests/googletest/googlemock/include/gmock/gmock-generated-matchers.h +293 -1372
- data/tests/googletest/googlemock/include/gmock/gmock-generated-matchers.h.pump +22 -345
- data/tests/googletest/googlemock/include/gmock/gmock-matchers.h +1382 -1218
- data/tests/googletest/googlemock/include/gmock/gmock-more-actions.h +12 -96
- data/tests/googletest/googlemock/include/gmock/gmock-more-matchers.h +39 -5
- data/tests/googletest/googlemock/include/gmock/gmock-nice-strict.h +215 -0
- data/tests/googletest/googlemock/include/gmock/gmock-spec-builders.h +362 -228
- data/tests/googletest/googlemock/include/gmock/gmock.h +10 -3
- data/tests/googletest/googlemock/include/gmock/internal/custom/README.md +16 -0
- data/tests/googletest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h +2 -0
- data/tests/googletest/googlemock/include/gmock/internal/custom/gmock-generated-actions.h.pump +3 -1
- data/tests/googletest/googlemock/include/gmock/internal/custom/gmock-matchers.h +5 -8
- data/tests/googletest/googlemock/include/gmock/internal/custom/gmock-port.h +3 -10
- data/tests/googletest/googlemock/include/gmock/internal/gmock-internal-utils.h +114 -54
- data/tests/googletest/googlemock/include/gmock/internal/gmock-port.h +13 -17
- data/tests/googletest/googlemock/include/gmock/internal/gmock-pp.h +317 -0
- data/tests/googletest/googlemock/make/Makefile +23 -7
- data/tests/googletest/googlemock/msvc/2010/gmock.sln +14 -0
- data/tests/googletest/googlemock/msvc/2010/gmock.vcxproj +69 -6
- data/tests/googletest/googlemock/msvc/2010/gmock_config.props +2 -2
- data/tests/googletest/googlemock/msvc/2010/gmock_main.vcxproj +69 -6
- data/tests/googletest/googlemock/msvc/2010/gmock_test.vcxproj +83 -8
- data/tests/googletest/googlemock/msvc/2015/gmock.sln +14 -0
- data/tests/googletest/googlemock/msvc/2015/gmock.vcxproj +63 -2
- data/tests/googletest/googlemock/msvc/2015/gmock_main.vcxproj +63 -2
- data/tests/googletest/googlemock/msvc/2015/gmock_test.vcxproj +76 -3
- data/tests/googletest/googlemock/scripts/fuse_gmock_files.py +1 -1
- data/tests/googletest/googlemock/scripts/generator/README +4 -5
- data/tests/googletest/googlemock/scripts/generator/cpp/ast.py +6 -3
- data/tests/googletest/googlemock/scripts/generator/cpp/gmock_class_test.py +18 -0
- data/tests/googletest/googlemock/scripts/upload.py +4 -4
- data/tests/googletest/googlemock/src/gmock-all.cc +1 -2
- data/tests/googletest/googlemock/src/gmock-cardinalities.cc +7 -8
- data/tests/googletest/googlemock/src/gmock-internal-utils.cc +38 -12
- data/tests/googletest/googlemock/src/gmock-matchers.cc +127 -163
- data/tests/googletest/googlemock/src/gmock-spec-builders.cc +150 -86
- data/tests/googletest/googlemock/src/gmock.cc +41 -11
- data/tests/googletest/googlemock/src/gmock_main.cc +14 -3
- data/tests/googletest/googlemock/test/BUILD.bazel +106 -0
- data/tests/googletest/googlemock/test/gmock-actions_test.cc +370 -328
- data/tests/googletest/googlemock/test/gmock-cardinalities_test.cc +5 -6
- data/tests/googletest/googlemock/test/gmock-function-mocker_nc.cc +16 -0
- data/tests/googletest/googlemock/test/gmock-function-mocker_nc_test.py +43 -0
- data/tests/googletest/googlemock/test/gmock-function-mocker_test.cc +660 -0
- data/tests/googletest/googlemock/test/gmock-generated-actions_test.cc +137 -301
- data/tests/googletest/googlemock/test/gmock-generated-function-mockers_test.cc +80 -43
- data/tests/googletest/googlemock/test/gmock-generated-matchers_test.cc +239 -201
- data/tests/googletest/googlemock/test/gmock-internal-utils_test.cc +126 -68
- data/tests/googletest/googlemock/test/gmock-matchers_test.cc +1811 -674
- data/tests/googletest/googlemock/test/gmock-more-actions_test.cc +162 -171
- data/tests/googletest/googlemock/test/gmock-nice-strict_test.cc +121 -45
- data/tests/googletest/googlemock/test/gmock-port_test.cc +1 -2
- data/tests/googletest/googlemock/test/gmock-pp-string_test.cc +206 -0
- data/tests/googletest/googlemock/test/gmock-pp_test.cc +73 -0
- data/tests/googletest/googlemock/test/gmock-spec-builders_test.cc +152 -23
- data/tests/googletest/googlemock/test/gmock_all_test.cc +1 -3
- data/tests/googletest/googlemock/test/gmock_ex_test.cc +4 -5
- data/tests/googletest/googlemock/test/gmock_leak_test.py +0 -4
- data/tests/googletest/googlemock/test/gmock_leak_test_.cc +1 -2
- data/tests/googletest/googlemock/test/gmock_link2_test.cc +2 -3
- data/tests/googletest/googlemock/test/gmock_link_test.cc +2 -3
- data/tests/googletest/googlemock/test/gmock_link_test.h +45 -24
- data/tests/googletest/googlemock/test/gmock_output_test.py +10 -9
- data/tests/googletest/googlemock/test/gmock_output_test_.cc +21 -3
- data/tests/googletest/googlemock/test/gmock_output_test_golden.txt +8 -1
- data/tests/googletest/googlemock/test/gmock_stress_test.cc +7 -89
- data/tests/googletest/googlemock/test/gmock_test.cc +57 -96
- data/tests/googletest/googlemock/test/gmock_test_utils.py +5 -9
- data/tests/googletest/googletest/CMakeLists.txt +122 -83
- data/tests/googletest/googletest/Makefile.am +103 -75
- data/tests/googletest/googletest/README.md +236 -189
- data/tests/googletest/googletest/cmake/Config.cmake.in +9 -0
- data/tests/googletest/googletest/cmake/gtest.pc.in +10 -0
- data/tests/googletest/googletest/cmake/gtest_main.pc.in +11 -0
- data/tests/googletest/googletest/cmake/internal_utils.cmake +158 -58
- data/tests/googletest/googletest/cmake/libgtest.la.in +21 -0
- data/tests/googletest/googletest/configure.ac +2 -2
- data/tests/googletest/googletest/docs/Pkgconfig.md +146 -0
- data/tests/googletest/googletest/docs/PumpManual.md +5 -5
- data/tests/googletest/googletest/docs/XcodeGuide.md +9 -9
- data/tests/googletest/googletest/docs/advanced.md +2523 -0
- data/tests/googletest/googletest/docs/faq.md +770 -0
- data/tests/googletest/googletest/docs/primer.md +564 -0
- data/tests/googletest/googletest/docs/samples.md +22 -0
- data/tests/googletest/googletest/include/gtest/gtest-death-test.h +60 -11
- data/tests/googletest/googletest/include/gtest/gtest-matchers.h +741 -0
- data/tests/googletest/googletest/include/gtest/gtest-message.h +12 -44
- data/tests/googletest/googletest/include/gtest/gtest-param-test.h +139 -1080
- data/tests/googletest/googletest/include/gtest/gtest-printers.h +202 -268
- data/tests/googletest/googletest/include/gtest/gtest-spi.h +13 -7
- data/tests/googletest/googletest/include/gtest/gtest-test-part.h +21 -16
- data/tests/googletest/googletest/include/gtest/gtest-typed-test.h +157 -84
- data/tests/googletest/googletest/include/gtest/gtest.h +494 -277
- data/tests/googletest/googletest/include/gtest/gtest_pred_impl.h +41 -40
- data/tests/googletest/googletest/include/gtest/gtest_prod.h +10 -7
- data/tests/googletest/googletest/include/gtest/internal/custom/README.md +56 -0
- data/tests/googletest/googletest/include/gtest/internal/custom/gtest-port.h +1 -33
- data/tests/googletest/googletest/include/gtest/internal/custom/gtest-printers.h +2 -2
- data/tests/googletest/googletest/include/gtest/internal/custom/gtest.h +1 -5
- data/tests/googletest/googletest/include/gtest/internal/gtest-death-test-internal.h +80 -95
- data/tests/googletest/googletest/include/gtest/internal/gtest-filepath.h +8 -3
- data/tests/googletest/googletest/include/gtest/internal/gtest-internal.h +415 -231
- data/tests/googletest/googletest/include/gtest/internal/gtest-param-util.h +323 -174
- data/tests/googletest/googletest/include/gtest/internal/gtest-port-arch.h +19 -5
- data/tests/googletest/googletest/include/gtest/internal/gtest-port.h +289 -549
- data/tests/googletest/googletest/include/gtest/internal/gtest-string.h +4 -4
- data/tests/googletest/googletest/include/gtest/internal/gtest-type-util.h +23 -7
- data/tests/googletest/googletest/include/gtest/internal/gtest-type-util.h.pump +24 -7
- data/tests/googletest/googletest/make/Makefile +13 -7
- data/tests/googletest/googletest/msvc/2010/gtest-md.sln +55 -0
- data/tests/googletest/googletest/msvc/2010/gtest-md.vcxproj +149 -0
- data/tests/googletest/googletest/msvc/2010/gtest-md.vcxproj.filters +18 -0
- data/tests/googletest/googletest/msvc/2010/gtest.sln +55 -0
- data/tests/googletest/googletest/msvc/2010/gtest.vcxproj +149 -0
- data/tests/googletest/googletest/msvc/2010/gtest.vcxproj.filters +18 -0
- data/tests/googletest/googletest/msvc/2010/gtest_main-md.vcxproj +154 -0
- data/tests/googletest/googletest/msvc/2010/gtest_main-md.vcxproj.filters +18 -0
- data/tests/googletest/googletest/msvc/2010/gtest_main.vcxproj +162 -0
- data/tests/googletest/googletest/msvc/2010/gtest_main.vcxproj.filters +18 -0
- data/tests/googletest/googletest/msvc/2010/gtest_prod_test-md.vcxproj +199 -0
- data/tests/googletest/googletest/msvc/2010/gtest_prod_test-md.vcxproj.filters +26 -0
- data/tests/googletest/googletest/msvc/2010/gtest_prod_test.vcxproj +191 -0
- data/tests/googletest/googletest/msvc/2010/gtest_prod_test.vcxproj.filters +26 -0
- data/tests/googletest/googletest/msvc/2010/gtest_unittest-md.vcxproj +188 -0
- data/tests/googletest/googletest/msvc/2010/gtest_unittest-md.vcxproj.filters +18 -0
- data/tests/googletest/googletest/msvc/2010/gtest_unittest.vcxproj +180 -0
- data/tests/googletest/googletest/msvc/2010/gtest_unittest.vcxproj.filters +18 -0
- data/tests/googletest/googletest/samples/prime_tables.h +13 -10
- data/tests/googletest/googletest/samples/sample1.cc +1 -3
- data/tests/googletest/googletest/samples/sample1.h +0 -2
- data/tests/googletest/googletest/samples/sample10_unittest.cc +4 -9
- data/tests/googletest/googletest/samples/sample1_unittest.cc +2 -4
- data/tests/googletest/googletest/samples/sample2.cc +1 -3
- data/tests/googletest/googletest/samples/sample2.h +4 -8
- data/tests/googletest/googletest/samples/sample2_unittest.cc +5 -7
- data/tests/googletest/googletest/samples/sample3-inl.h +9 -9
- data/tests/googletest/googletest/samples/sample3_unittest.cc +13 -15
- data/tests/googletest/googletest/samples/sample4.cc +10 -2
- data/tests/googletest/googletest/samples/sample4.h +3 -3
- data/tests/googletest/googletest/samples/sample4_unittest.cc +11 -3
- data/tests/googletest/googletest/samples/sample5_unittest.cc +11 -14
- data/tests/googletest/googletest/samples/sample6_unittest.cc +12 -12
- data/tests/googletest/googletest/samples/sample7_unittest.cc +14 -27
- data/tests/googletest/googletest/samples/sample8_unittest.cc +20 -39
- data/tests/googletest/googletest/samples/sample9_unittest.cc +6 -10
- data/tests/googletest/googletest/scripts/fuse_gtest_files.py +1 -1
- data/tests/googletest/googletest/scripts/gen_gtest_pred_impl.py +10 -10
- data/tests/googletest/googletest/scripts/upload.py +5 -5
- data/tests/googletest/googletest/src/gtest-all.cc +3 -3
- data/tests/googletest/googletest/src/gtest-death-test.cc +417 -121
- data/tests/googletest/googletest/src/gtest-filepath.cc +15 -23
- data/tests/googletest/googletest/src/gtest-internal-inl.h +145 -122
- data/tests/googletest/googletest/src/gtest-matchers.cc +97 -0
- data/tests/googletest/googletest/src/gtest-port.cc +263 -129
- data/tests/googletest/googletest/src/gtest-printers.cc +92 -24
- data/tests/googletest/googletest/src/gtest-test-part.cc +13 -19
- data/tests/googletest/googletest/src/gtest-typed-test.cc +5 -5
- data/tests/googletest/googletest/src/gtest.cc +1469 -742
- data/tests/googletest/googletest/src/gtest_main.cc +12 -3
- data/tests/googletest/googletest/test/BUILD.bazel +518 -0
- data/tests/googletest/googletest/test/googletest-break-on-failure-unittest.py +208 -0
- data/tests/googletest/googletest/test/googletest-break-on-failure-unittest_.cc +86 -0
- data/tests/googletest/googletest/test/googletest-catch-exceptions-test.py +231 -0
- data/tests/googletest/googletest/test/googletest-catch-exceptions-test_.cc +293 -0
- data/tests/googletest/googletest/test/googletest-color-test.py +127 -0
- data/tests/googletest/googletest/test/googletest-color-test_.cc +62 -0
- data/tests/googletest/googletest/test/googletest-death-test-test.cc +1458 -0
- data/tests/googletest/googletest/test/googletest-death-test_ex_test.cc +92 -0
- data/tests/googletest/googletest/test/googletest-env-var-test.py +117 -0
- data/tests/googletest/googletest/test/googletest-env-var-test_.cc +122 -0
- data/tests/googletest/googletest/test/googletest-filepath-test.cc +649 -0
- data/tests/googletest/googletest/test/googletest-filter-unittest.py +639 -0
- data/tests/googletest/googletest/test/googletest-filter-unittest_.cc +137 -0
- data/tests/googletest/googletest/test/googletest-json-outfiles-test.py +185 -0
- data/tests/googletest/googletest/test/googletest-json-output-unittest.py +758 -0
- data/tests/googletest/googletest/test/googletest-list-tests-unittest.py +205 -0
- data/tests/googletest/googletest/test/googletest-list-tests-unittest_.cc +156 -0
- data/tests/googletest/googletest/test/googletest-listener-test.cc +407 -0
- data/tests/googletest/googletest/test/googletest-message-test.cc +158 -0
- data/tests/googletest/googletest/test/googletest-options-test.cc +216 -0
- data/tests/googletest/googletest/test/googletest-output-test-golden-lin.txt +1128 -0
- data/tests/googletest/googletest/test/googletest-output-test.py +346 -0
- data/tests/googletest/googletest/test/googletest-output-test_.cc +1145 -0
- data/tests/googletest/googletest/test/googletest-param-test-invalid-name1-test.py +63 -0
- data/tests/googletest/googletest/test/googletest-param-test-invalid-name1-test_.cc +50 -0
- data/tests/googletest/googletest/test/googletest-param-test-invalid-name2-test.py +62 -0
- data/tests/googletest/googletest/test/googletest-param-test-invalid-name2-test_.cc +55 -0
- data/tests/googletest/googletest/test/googletest-param-test-test.cc +1055 -0
- data/tests/googletest/googletest/test/googletest-param-test-test.h +51 -0
- data/tests/googletest/googletest/test/googletest-param-test2-test.cc +61 -0
- data/tests/googletest/googletest/test/googletest-port-test.cc +1290 -0
- data/tests/googletest/googletest/test/googletest-printers-test.cc +1561 -0
- data/tests/googletest/googletest/test/googletest-shuffle-test.py +323 -0
- data/tests/googletest/googletest/test/googletest-shuffle-test_.cc +101 -0
- data/tests/googletest/googletest/test/googletest-test-part-test.cc +230 -0
- data/tests/googletest/googletest/test/googletest-test2_test.cc +61 -0
- data/tests/googletest/googletest/test/googletest-throw-on-failure-test.py +168 -0
- data/tests/googletest/googletest/test/googletest-throw-on-failure-test_.cc +71 -0
- data/tests/googletest/googletest/test/googletest-uninitialized-test.py +67 -0
- data/tests/googletest/googletest/test/googletest-uninitialized-test_.cc +42 -0
- data/tests/googletest/googletest/test/gtest-typed-test2_test.cc +3 -4
- data/tests/googletest/googletest/test/gtest-typed-test_test.cc +144 -63
- data/tests/googletest/googletest/test/gtest-typed-test_test.h +4 -5
- data/tests/googletest/googletest/test/gtest-unittest-api_test.cc +122 -123
- data/tests/googletest/googletest/test/gtest_all_test.cc +10 -11
- data/tests/googletest/googletest/test/gtest_assert_by_exception_test.cc +116 -0
- data/tests/googletest/googletest/test/gtest_environment_test.cc +3 -7
- data/tests/googletest/googletest/test/gtest_help_test.py +1 -3
- data/tests/googletest/googletest/test/gtest_help_test_.cc +1 -2
- data/tests/googletest/googletest/test/gtest_json_test_utils.py +60 -0
- data/tests/googletest/googletest/test/gtest_list_output_unittest.py +141 -0
- data/tests/googletest/googletest/test/gtest_list_output_unittest_.cc +51 -0
- data/tests/googletest/googletest/test/gtest_main_unittest.cc +3 -4
- data/tests/googletest/googletest/test/gtest_no_test_unittest.cc +0 -2
- data/tests/googletest/googletest/test/gtest_pred_impl_unittest.cc +11 -11
- data/tests/googletest/googletest/test/gtest_premature_exit_test.cc +3 -4
- data/tests/googletest/googletest/test/gtest_prod_test.cc +3 -4
- data/tests/googletest/googletest/test/gtest_repeat_test.cc +8 -28
- data/tests/googletest/googletest/test/gtest_skip_environment_check_output_test.py +54 -0
- data/tests/googletest/googletest/test/gtest_skip_in_environment_setup_test.cc +49 -0
- data/tests/googletest/googletest/test/gtest_skip_test.cc +55 -0
- data/tests/googletest/googletest/test/gtest_sole_header_test.cc +1 -2
- data/tests/googletest/googletest/test/gtest_stress_test.cc +3 -11
- data/tests/googletest/googletest/test/gtest_test_macro_stack_footprint_test.cc +89 -0
- data/tests/googletest/googletest/test/gtest_test_utils.py +15 -22
- data/tests/googletest/googletest/test/gtest_testbridge_test.py +63 -0
- data/tests/googletest/googletest/test/gtest_testbridge_test_.cc +43 -0
- data/tests/googletest/googletest/test/gtest_throw_on_failure_ex_test.cc +2 -4
- data/tests/googletest/googletest/test/gtest_unittest.cc +770 -924
- data/tests/googletest/googletest/test/gtest_xml_outfile1_test_.cc +2 -8
- data/tests/googletest/googletest/test/gtest_xml_outfile2_test_.cc +2 -8
- data/tests/googletest/googletest/test/gtest_xml_outfiles_test.py +14 -11
- data/tests/googletest/googletest/test/gtest_xml_output_unittest.py +132 -51
- data/tests/googletest/googletest/test/gtest_xml_output_unittest_.cc +21 -14
- data/tests/googletest/googletest/test/gtest_xml_test_utils.py +24 -22
- data/tests/googletest/googletest/test/production.cc +2 -3
- data/tests/googletest/googletest/test/production.h +2 -3
- data/tests/googletest/googletest/xcode/Config/DebugProject.xcconfig +1 -1
- data/tests/googletest/googletest/xcode/Config/FrameworkTarget.xcconfig +1 -1
- data/tests/googletest/googletest/xcode/Config/General.xcconfig +3 -3
- data/tests/googletest/googletest/xcode/Config/ReleaseProject.xcconfig +1 -1
- data/tests/googletest/googletest/xcode/Config/StaticLibraryTarget.xcconfig +1 -1
- data/tests/googletest/googletest/xcode/Scripts/versiongenerate.py +4 -4
- data/tests/googletest/googletest/xcode/gtest.xcodeproj/project.pbxproj +51 -16
- data/tests/googletest/library.json +59 -0
- data/tests/googletest/platformio.ini +31 -0
- metadata +1391 -137
- data/ext/enterprise_script_service/libseccomp/README +0 -65
- data/ext/enterprise_script_service/libseccomp/SUBMITTING_PATCHES +0 -123
- data/ext/enterprise_script_service/mruby/MITL +0 -20
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby-config/mrbgem.rake +0 -30
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/gc_filedes.sh +0 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/init_mrbtest.c +0 -38
- data/ext/enterprise_script_service/mruby/mrblib/float.rb +0 -9
- data/ext/enterprise_script_service/mruby/src/ext/.gitkeep +0 -0
- data/ext/enterprise_script_service/mruby/test/report.rb +0 -4
- data/spec/dummy/app/models/fields/options/boolean_field.rb +0 -6
- data/spec/dummy/app/models/fields/options/multiple_nested_form_field.rb +0 -6
- data/spec/dummy/app/models/fields/options/nested_form_field.rb +0 -6
- data/tests/googletest/googlemock/CHANGES +0 -126
- data/tests/googletest/googlemock/docs/DevGuide.md +0 -132
- data/tests/googletest/googlemock/docs/v1_5/CheatSheet.md +0 -525
- data/tests/googletest/googlemock/docs/v1_5/CookBook.md +0 -3250
- data/tests/googletest/googlemock/docs/v1_5/Documentation.md +0 -11
- data/tests/googletest/googlemock/docs/v1_5/ForDummies.md +0 -439
- data/tests/googletest/googlemock/docs/v1_5/FrequentlyAskedQuestions.md +0 -624
- data/tests/googletest/googlemock/docs/v1_6/CheatSheet.md +0 -534
- data/tests/googletest/googlemock/docs/v1_6/CookBook.md +0 -3342
- data/tests/googletest/googlemock/docs/v1_6/Documentation.md +0 -12
- data/tests/googletest/googlemock/docs/v1_6/ForDummies.md +0 -439
- data/tests/googletest/googlemock/docs/v1_6/FrequentlyAskedQuestions.md +0 -628
- data/tests/googletest/googlemock/docs/v1_7/CheatSheet.md +0 -556
- data/tests/googletest/googlemock/docs/v1_7/CookBook.md +0 -3432
- data/tests/googletest/googlemock/docs/v1_7/Documentation.md +0 -12
- data/tests/googletest/googlemock/docs/v1_7/ForDummies.md +0 -439
- data/tests/googletest/googlemock/docs/v1_7/FrequentlyAskedQuestions.md +0 -628
- data/tests/googletest/googlemock/include/gmock/gmock-generated-nice-strict.h +0 -397
- data/tests/googletest/googlemock/include/gmock/gmock-generated-nice-strict.h.pump +0 -161
- data/tests/googletest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h +0 -279
- data/tests/googletest/googlemock/include/gmock/internal/gmock-generated-internal-utils.h.pump +0 -136
- data/tests/googletest/googlemock/test/gmock-generated-internal-utils_test.cc +0 -127
- data/tests/googletest/googletest/.gitignore +0 -2
- data/tests/googletest/googletest/CHANGES +0 -157
- data/tests/googletest/googletest/build-aux/.keep +0 -0
- data/tests/googletest/googletest/docs/AdvancedGuide.md +0 -2182
- data/tests/googletest/googletest/docs/DevGuide.md +0 -126
- data/tests/googletest/googletest/docs/Documentation.md +0 -14
- data/tests/googletest/googletest/docs/FAQ.md +0 -1087
- data/tests/googletest/googletest/docs/Primer.md +0 -502
- data/tests/googletest/googletest/docs/Samples.md +0 -14
- data/tests/googletest/googletest/docs/V1_5_AdvancedGuide.md +0 -2096
- data/tests/googletest/googletest/docs/V1_5_Documentation.md +0 -12
- data/tests/googletest/googletest/docs/V1_5_FAQ.md +0 -886
- data/tests/googletest/googletest/docs/V1_5_Primer.md +0 -497
- data/tests/googletest/googletest/docs/V1_5_PumpManual.md +0 -177
- data/tests/googletest/googletest/docs/V1_5_XcodeGuide.md +0 -93
- data/tests/googletest/googletest/docs/V1_6_AdvancedGuide.md +0 -2178
- data/tests/googletest/googletest/docs/V1_6_Documentation.md +0 -14
- data/tests/googletest/googletest/docs/V1_6_FAQ.md +0 -1038
- data/tests/googletest/googletest/docs/V1_6_Primer.md +0 -501
- data/tests/googletest/googletest/docs/V1_6_PumpManual.md +0 -177
- data/tests/googletest/googletest/docs/V1_6_Samples.md +0 -14
- data/tests/googletest/googletest/docs/V1_6_XcodeGuide.md +0 -93
- data/tests/googletest/googletest/docs/V1_7_AdvancedGuide.md +0 -2181
- data/tests/googletest/googletest/docs/V1_7_Documentation.md +0 -14
- data/tests/googletest/googletest/docs/V1_7_FAQ.md +0 -1082
- data/tests/googletest/googletest/docs/V1_7_Primer.md +0 -501
- data/tests/googletest/googletest/docs/V1_7_PumpManual.md +0 -177
- data/tests/googletest/googletest/docs/V1_7_Samples.md +0 -14
- data/tests/googletest/googletest/docs/V1_7_XcodeGuide.md +0 -93
- data/tests/googletest/googletest/include/gtest/gtest-param-test.h.pump +0 -510
- data/tests/googletest/googletest/include/gtest/internal/gtest-linked_ptr.h +0 -243
- data/tests/googletest/googletest/include/gtest/internal/gtest-param-util-generated.h +0 -5146
- data/tests/googletest/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +0 -286
- data/tests/googletest/googletest/include/gtest/internal/gtest-tuple.h +0 -1020
- data/tests/googletest/googletest/include/gtest/internal/gtest-tuple.h.pump +0 -347
- data/tests/googletest/googletest/msvc/gtest-md.sln +0 -45
- data/tests/googletest/googletest/msvc/gtest-md.vcproj +0 -126
- data/tests/googletest/googletest/msvc/gtest.sln +0 -45
- data/tests/googletest/googletest/msvc/gtest.vcproj +0 -126
- data/tests/googletest/googletest/msvc/gtest_main-md.vcproj +0 -129
- data/tests/googletest/googletest/msvc/gtest_main.vcproj +0 -129
- data/tests/googletest/googletest/msvc/gtest_prod_test-md.vcproj +0 -164
- data/tests/googletest/googletest/msvc/gtest_prod_test.vcproj +0 -164
- data/tests/googletest/googletest/msvc/gtest_unittest-md.vcproj +0 -147
- data/tests/googletest/googletest/msvc/gtest_unittest.vcproj +0 -147
- data/tests/googletest/googletest/test/gtest-death-test_ex_test.cc +0 -93
- data/tests/googletest/googletest/test/gtest-death-test_test.cc +0 -1427
- data/tests/googletest/googletest/test/gtest-filepath_test.cc +0 -662
- data/tests/googletest/googletest/test/gtest-linked_ptr_test.cc +0 -154
- data/tests/googletest/googletest/test/gtest-listener_test.cc +0 -311
- data/tests/googletest/googletest/test/gtest-message_test.cc +0 -159
- data/tests/googletest/googletest/test/gtest-options_test.cc +0 -215
- data/tests/googletest/googletest/test/gtest-param-test2_test.cc +0 -65
- data/tests/googletest/googletest/test/gtest-param-test_test.cc +0 -1055
- data/tests/googletest/googletest/test/gtest-param-test_test.h +0 -57
- data/tests/googletest/googletest/test/gtest-port_test.cc +0 -1304
- data/tests/googletest/googletest/test/gtest-printers_test.cc +0 -1635
- data/tests/googletest/googletest/test/gtest-test-part_test.cc +0 -208
- data/tests/googletest/googletest/test/gtest-tuple_test.cc +0 -320
- data/tests/googletest/googletest/test/gtest_break_on_failure_unittest.py +0 -212
- data/tests/googletest/googletest/test/gtest_break_on_failure_unittest_.cc +0 -88
- data/tests/googletest/googletest/test/gtest_catch_exceptions_test.py +0 -237
- data/tests/googletest/googletest/test/gtest_catch_exceptions_test_.cc +0 -311
- data/tests/googletest/googletest/test/gtest_color_test.py +0 -130
- data/tests/googletest/googletest/test/gtest_color_test_.cc +0 -71
- data/tests/googletest/googletest/test/gtest_env_var_test.py +0 -117
- data/tests/googletest/googletest/test/gtest_env_var_test_.cc +0 -126
- data/tests/googletest/googletest/test/gtest_filter_unittest.py +0 -636
- data/tests/googletest/googletest/test/gtest_filter_unittest_.cc +0 -140
- data/tests/googletest/googletest/test/gtest_list_tests_unittest.py +0 -207
- data/tests/googletest/googletest/test/gtest_list_tests_unittest_.cc +0 -157
- data/tests/googletest/googletest/test/gtest_output_test.py +0 -340
- data/tests/googletest/googletest/test/gtest_output_test_.cc +0 -1062
- data/tests/googletest/googletest/test/gtest_output_test_golden_lin.txt +0 -743
- data/tests/googletest/googletest/test/gtest_shuffle_test.py +0 -325
- data/tests/googletest/googletest/test/gtest_shuffle_test_.cc +0 -103
- data/tests/googletest/googletest/test/gtest_throw_on_failure_test.py +0 -171
- data/tests/googletest/googletest/test/gtest_throw_on_failure_test_.cc +0 -72
- data/tests/googletest/googletest/test/gtest_uninitialized_test.py +0 -70
- data/tests/googletest/googletest/test/gtest_uninitialized_test_.cc +0 -43
- data/tests/googletest/travis.sh +0 -15
@@ -26,8 +26,7 @@
|
|
26
26
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
27
27
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
28
28
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
29
|
-
|
30
|
-
// Author: wan@google.com (Zhanyong Wan)
|
29
|
+
|
31
30
|
|
32
31
|
// Google Mock - a framework for writing C++ mock classes.
|
33
32
|
//
|
@@ -49,7 +48,7 @@
|
|
49
48
|
// implementation. It must come before gtest-internal-inl.h is
|
50
49
|
// included, or there will be a compiler error. This trick is to
|
51
50
|
// prevent a user from accidentally including gtest-internal-inl.h in
|
52
|
-
//
|
51
|
+
// their code.
|
53
52
|
#define GTEST_IMPLEMENTATION_ 1
|
54
53
|
#include "src/gtest-internal-inl.h"
|
55
54
|
#undef GTEST_IMPLEMENTATION_
|
@@ -58,8 +57,6 @@
|
|
58
57
|
# include <sys/types.h> // For ssize_t. NOLINT
|
59
58
|
#endif
|
60
59
|
|
61
|
-
class ProtocolMessage;
|
62
|
-
|
63
60
|
namespace proto2 {
|
64
61
|
class Message;
|
65
62
|
} // namespace proto2
|
@@ -69,6 +66,26 @@ namespace internal {
|
|
69
66
|
|
70
67
|
namespace {
|
71
68
|
|
69
|
+
TEST(JoinAsTupleTest, JoinsEmptyTuple) {
|
70
|
+
EXPECT_EQ("", JoinAsTuple(Strings()));
|
71
|
+
}
|
72
|
+
|
73
|
+
TEST(JoinAsTupleTest, JoinsOneTuple) {
|
74
|
+
const char* fields[] = {"1"};
|
75
|
+
EXPECT_EQ("1", JoinAsTuple(Strings(fields, fields + 1)));
|
76
|
+
}
|
77
|
+
|
78
|
+
TEST(JoinAsTupleTest, JoinsTwoTuple) {
|
79
|
+
const char* fields[] = {"1", "a"};
|
80
|
+
EXPECT_EQ("(1, a)", JoinAsTuple(Strings(fields, fields + 2)));
|
81
|
+
}
|
82
|
+
|
83
|
+
TEST(JoinAsTupleTest, JoinsTenTuple) {
|
84
|
+
const char* fields[] = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10"};
|
85
|
+
EXPECT_EQ("(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)",
|
86
|
+
JoinAsTuple(Strings(fields, fields + 10)));
|
87
|
+
}
|
88
|
+
|
72
89
|
TEST(ConvertIdentifierNameToWordsTest, WorksWhenNameContainsNoWord) {
|
73
90
|
EXPECT_EQ("", ConvertIdentifierNameToWords(""));
|
74
91
|
EXPECT_EQ("", ConvertIdentifierNameToWords("_"));
|
@@ -104,15 +121,9 @@ TEST(ConvertIdentifierNameToWordsTest, WorksWhenNameIsMixture) {
|
|
104
121
|
}
|
105
122
|
|
106
123
|
TEST(PointeeOfTest, WorksForSmartPointers) {
|
107
|
-
CompileAssertTypesEqual<const char,
|
108
|
-
PointeeOf<internal::linked_ptr<const char> >::type>();
|
109
|
-
#if GTEST_HAS_STD_UNIQUE_PTR_
|
110
124
|
CompileAssertTypesEqual<int, PointeeOf<std::unique_ptr<int> >::type>();
|
111
|
-
#endif // GTEST_HAS_STD_UNIQUE_PTR_
|
112
|
-
#if GTEST_HAS_STD_SHARED_PTR_
|
113
125
|
CompileAssertTypesEqual<std::string,
|
114
126
|
PointeeOf<std::shared_ptr<std::string> >::type>();
|
115
|
-
#endif // GTEST_HAS_STD_SHARED_PTR_
|
116
127
|
}
|
117
128
|
|
118
129
|
TEST(PointeeOfTest, WorksForRawPointers) {
|
@@ -122,26 +133,17 @@ TEST(PointeeOfTest, WorksForRawPointers) {
|
|
122
133
|
}
|
123
134
|
|
124
135
|
TEST(GetRawPointerTest, WorksForSmartPointers) {
|
125
|
-
#if GTEST_HAS_STD_UNIQUE_PTR_
|
126
136
|
const char* const raw_p1 = new const char('a'); // NOLINT
|
127
137
|
const std::unique_ptr<const char> p1(raw_p1);
|
128
138
|
EXPECT_EQ(raw_p1, GetRawPointer(p1));
|
129
|
-
#endif // GTEST_HAS_STD_UNIQUE_PTR_
|
130
|
-
#if GTEST_HAS_STD_SHARED_PTR_
|
131
139
|
double* const raw_p2 = new double(2.5); // NOLINT
|
132
140
|
const std::shared_ptr<double> p2(raw_p2);
|
133
141
|
EXPECT_EQ(raw_p2, GetRawPointer(p2));
|
134
|
-
#endif // GTEST_HAS_STD_SHARED_PTR_
|
135
|
-
|
136
|
-
const char* const raw_p4 = new const char('a'); // NOLINT
|
137
|
-
const internal::linked_ptr<const char> p4(raw_p4);
|
138
|
-
EXPECT_EQ(raw_p4, GetRawPointer(p4));
|
139
142
|
}
|
140
143
|
|
141
144
|
TEST(GetRawPointerTest, WorksForRawPointers) {
|
142
|
-
int* p =
|
143
|
-
|
144
|
-
EXPECT_TRUE(NULL == GetRawPointer(p));
|
145
|
+
int* p = nullptr;
|
146
|
+
EXPECT_TRUE(nullptr == GetRawPointer(p));
|
145
147
|
int n = 1;
|
146
148
|
EXPECT_EQ(&n, GetRawPointer(&n));
|
147
149
|
}
|
@@ -289,26 +291,23 @@ TEST(LosslessArithmeticConvertibleTest, FloatingPointToFloatingPoint) {
|
|
289
291
|
// Tests the TupleMatches() template function.
|
290
292
|
|
291
293
|
TEST(TupleMatchesTest, WorksForSize0) {
|
292
|
-
tuple<> matchers;
|
293
|
-
tuple<> values;
|
294
|
+
std::tuple<> matchers;
|
295
|
+
std::tuple<> values;
|
294
296
|
|
295
297
|
EXPECT_TRUE(TupleMatches(matchers, values));
|
296
298
|
}
|
297
299
|
|
298
300
|
TEST(TupleMatchesTest, WorksForSize1) {
|
299
|
-
tuple<Matcher<int> > matchers(Eq(1));
|
300
|
-
tuple<int> values1(1),
|
301
|
-
values2(2);
|
301
|
+
std::tuple<Matcher<int> > matchers(Eq(1));
|
302
|
+
std::tuple<int> values1(1), values2(2);
|
302
303
|
|
303
304
|
EXPECT_TRUE(TupleMatches(matchers, values1));
|
304
305
|
EXPECT_FALSE(TupleMatches(matchers, values2));
|
305
306
|
}
|
306
307
|
|
307
308
|
TEST(TupleMatchesTest, WorksForSize2) {
|
308
|
-
tuple<Matcher<int>, Matcher<char> > matchers(Eq(1), Eq('a'));
|
309
|
-
tuple<int, char> values1(1, 'a'),
|
310
|
-
values2(1, 'b'),
|
311
|
-
values3(2, 'a'),
|
309
|
+
std::tuple<Matcher<int>, Matcher<char> > matchers(Eq(1), Eq('a'));
|
310
|
+
std::tuple<int, char> values1(1, 'a'), values2(1, 'b'), values3(2, 'a'),
|
312
311
|
values4(2, 'b');
|
313
312
|
|
314
313
|
EXPECT_TRUE(TupleMatches(matchers, values1));
|
@@ -318,12 +317,12 @@ TEST(TupleMatchesTest, WorksForSize2) {
|
|
318
317
|
}
|
319
318
|
|
320
319
|
TEST(TupleMatchesTest, WorksForSize5) {
|
321
|
-
tuple<Matcher<int>, Matcher<char>, Matcher<bool>,
|
322
|
-
|
320
|
+
std::tuple<Matcher<int>, Matcher<char>, Matcher<bool>,
|
321
|
+
Matcher<long>, // NOLINT
|
322
|
+
Matcher<std::string> >
|
323
323
|
matchers(Eq(1), Eq('a'), Eq(true), Eq(2L), Eq("hi"));
|
324
|
-
tuple<int, char, bool, long, string> // NOLINT
|
325
|
-
values1(1, 'a', true, 2L, "hi"),
|
326
|
-
values2(1, 'a', true, 2L, "hello"),
|
324
|
+
std::tuple<int, char, bool, long, std::string> // NOLINT
|
325
|
+
values1(1, 'a', true, 2L, "hi"), values2(1, 'a', true, 2L, "hello"),
|
327
326
|
values3(2, 'a', true, 2L, "hi");
|
328
327
|
|
329
328
|
EXPECT_TRUE(TupleMatches(matchers, values1));
|
@@ -369,13 +368,11 @@ TEST(ExpectTest, FailsNonfatallyOnFalse) {
|
|
369
368
|
|
370
369
|
class LogIsVisibleTest : public ::testing::Test {
|
371
370
|
protected:
|
372
|
-
|
373
|
-
original_verbose_ = GMOCK_FLAG(verbose);
|
374
|
-
}
|
371
|
+
void SetUp() override { original_verbose_ = GMOCK_FLAG(verbose); }
|
375
372
|
|
376
|
-
|
373
|
+
void TearDown() override { GMOCK_FLAG(verbose) = original_verbose_; }
|
377
374
|
|
378
|
-
string original_verbose_;
|
375
|
+
std::string original_verbose_;
|
379
376
|
};
|
380
377
|
|
381
378
|
TEST_F(LogIsVisibleTest, AlwaysReturnsTrueIfVerbosityIsInfo) {
|
@@ -402,9 +399,9 @@ TEST_F(LogIsVisibleTest, WorksWhenVerbosityIsWarning) {
|
|
402
399
|
|
403
400
|
// Verifies that Log() behaves correctly for the given verbosity level
|
404
401
|
// and log severity.
|
405
|
-
void TestLogWithSeverity(const string& verbosity, LogSeverity severity,
|
402
|
+
void TestLogWithSeverity(const std::string& verbosity, LogSeverity severity,
|
406
403
|
bool should_print) {
|
407
|
-
const string old_flag = GMOCK_FLAG(verbose);
|
404
|
+
const std::string old_flag = GMOCK_FLAG(verbose);
|
408
405
|
GMOCK_FLAG(verbose) = verbosity;
|
409
406
|
CaptureStdout();
|
410
407
|
Log(severity, "Test log.\n", 0);
|
@@ -423,7 +420,7 @@ void TestLogWithSeverity(const string& verbosity, LogSeverity severity,
|
|
423
420
|
// Tests that when the stack_frames_to_skip parameter is negative,
|
424
421
|
// Log() doesn't include the stack trace in the output.
|
425
422
|
TEST(LogTest, NoStackTraceWhenStackFramesToSkipIsNegative) {
|
426
|
-
const string saved_flag = GMOCK_FLAG(verbose);
|
423
|
+
const std::string saved_flag = GMOCK_FLAG(verbose);
|
427
424
|
GMOCK_FLAG(verbose) = kInfoVerbosity;
|
428
425
|
CaptureStdout();
|
429
426
|
Log(kInfo, "Test log.\n", -1);
|
@@ -432,11 +429,11 @@ TEST(LogTest, NoStackTraceWhenStackFramesToSkipIsNegative) {
|
|
432
429
|
}
|
433
430
|
|
434
431
|
struct MockStackTraceGetter : testing::internal::OsStackTraceGetterInterface {
|
435
|
-
|
432
|
+
std::string CurrentStackTrace(int max_depth, int skip_count) override {
|
436
433
|
return (testing::Message() << max_depth << "::" << skip_count << "\n")
|
437
434
|
.GetString();
|
438
435
|
}
|
439
|
-
|
436
|
+
void UponLeavingGTest() override {}
|
440
437
|
};
|
441
438
|
|
442
439
|
// Tests that in opt mode, a positive stack_frames_to_skip argument is
|
@@ -447,11 +444,11 @@ TEST(LogTest, NoSkippingStackFrameInOptMode) {
|
|
447
444
|
|
448
445
|
CaptureStdout();
|
449
446
|
Log(kWarning, "Test log.\n", 100);
|
450
|
-
const string log = GetCapturedStdout();
|
447
|
+
const std::string log = GetCapturedStdout();
|
451
448
|
|
452
|
-
string expected_trace =
|
449
|
+
std::string expected_trace =
|
453
450
|
(testing::Message() << GTEST_FLAG(stack_trace_depth) << "::").GetString();
|
454
|
-
string expected_message =
|
451
|
+
std::string expected_message =
|
455
452
|
"\nGMOCK WARNING:\n"
|
456
453
|
"Test log.\n"
|
457
454
|
"Stack trace:\n" +
|
@@ -474,7 +471,7 @@ TEST(LogTest, NoSkippingStackFrameInOptMode) {
|
|
474
471
|
AllOf(Ge(expected_skip_count), Le(expected_skip_count + 10)));
|
475
472
|
|
476
473
|
// Restores the default OS stack trace getter.
|
477
|
-
GetUnitTestImpl()->set_os_stack_trace_getter(
|
474
|
+
GetUnitTestImpl()->set_os_stack_trace_getter(nullptr);
|
478
475
|
}
|
479
476
|
|
480
477
|
// Tests that all logs are printed when the value of the
|
@@ -521,12 +518,6 @@ TEST(TypeTraitsTest, is_reference) {
|
|
521
518
|
EXPECT_TRUE(is_reference<const int&>::value);
|
522
519
|
}
|
523
520
|
|
524
|
-
TEST(TypeTraitsTest, is_pointer) {
|
525
|
-
EXPECT_FALSE(is_pointer<int>::value);
|
526
|
-
EXPECT_FALSE(is_pointer<char&>::value);
|
527
|
-
EXPECT_TRUE(is_pointer<const int*>::value);
|
528
|
-
}
|
529
|
-
|
530
521
|
TEST(TypeTraitsTest, type_equals) {
|
531
522
|
EXPECT_FALSE((type_equals<int, const int>::value));
|
532
523
|
EXPECT_FALSE((type_equals<int, int&>::value));
|
@@ -547,7 +538,7 @@ TEST(TypeTraitsTest, remove_reference) {
|
|
547
538
|
// Verifies that Log() behaves correctly for the given verbosity level
|
548
539
|
// and log severity.
|
549
540
|
std::string GrabOutput(void(*logger)(), const char* verbosity) {
|
550
|
-
const string saved_flag = GMOCK_FLAG(verbose);
|
541
|
+
const std::string saved_flag = GMOCK_FLAG(verbose);
|
551
542
|
GMOCK_FLAG(verbose) = verbosity;
|
552
543
|
CaptureStdout();
|
553
544
|
logger();
|
@@ -565,7 +556,7 @@ void ExpectCallLogger() {
|
|
565
556
|
DummyMock mock;
|
566
557
|
EXPECT_CALL(mock, TestMethod());
|
567
558
|
mock.TestMethod();
|
568
|
-
}
|
559
|
+
}
|
569
560
|
|
570
561
|
// Verifies that EXPECT_CALL logs if the --gmock_verbose flag is set to "info".
|
571
562
|
TEST(ExpectCallTest, LogsWhenVerbosityIsInfo) {
|
@@ -588,7 +579,7 @@ TEST(ExpectCallTest, DoesNotLogWhenVerbosityIsError) {
|
|
588
579
|
void OnCallLogger() {
|
589
580
|
DummyMock mock;
|
590
581
|
ON_CALL(mock, TestMethod());
|
591
|
-
}
|
582
|
+
}
|
592
583
|
|
593
584
|
// Verifies that ON_CALL logs if the --gmock_verbose flag is set to "info".
|
594
585
|
TEST(OnCallTest, LogsWhenVerbosityIsInfo) {
|
@@ -668,22 +659,25 @@ TEST(StlContainerViewTest, WorksForStaticNativeArray) {
|
|
668
659
|
|
669
660
|
TEST(StlContainerViewTest, WorksForDynamicNativeArray) {
|
670
661
|
StaticAssertTypeEq<NativeArray<int>,
|
671
|
-
|
672
|
-
StaticAssertTypeEq<
|
673
|
-
|
662
|
+
StlContainerView<std::tuple<const int*, size_t> >::type>();
|
663
|
+
StaticAssertTypeEq<
|
664
|
+
NativeArray<double>,
|
665
|
+
StlContainerView<std::tuple<std::shared_ptr<double>, int> >::type>();
|
674
666
|
|
675
|
-
StaticAssertTypeEq<
|
676
|
-
|
667
|
+
StaticAssertTypeEq<
|
668
|
+
const NativeArray<int>,
|
669
|
+
StlContainerView<std::tuple<const int*, int> >::const_reference>();
|
677
670
|
|
678
671
|
int a1[3] = { 0, 1, 2 };
|
679
672
|
const int* const p1 = a1;
|
680
|
-
NativeArray<int> a2 =
|
681
|
-
ConstReference(
|
673
|
+
NativeArray<int> a2 =
|
674
|
+
StlContainerView<std::tuple<const int*, int> >::ConstReference(
|
675
|
+
std::make_tuple(p1, 3));
|
682
676
|
EXPECT_EQ(3U, a2.size());
|
683
677
|
EXPECT_EQ(a1, a2.begin());
|
684
678
|
|
685
|
-
const NativeArray<int> a3 = StlContainerView<tuple<int*, size_t> >::
|
686
|
-
|
679
|
+
const NativeArray<int> a3 = StlContainerView<std::tuple<int*, size_t> >::Copy(
|
680
|
+
std::make_tuple(static_cast<int*>(a1), 3));
|
687
681
|
ASSERT_EQ(3U, a3.size());
|
688
682
|
EXPECT_EQ(0, a3.begin()[0]);
|
689
683
|
EXPECT_EQ(1, a3.begin()[1]);
|
@@ -694,6 +688,70 @@ TEST(StlContainerViewTest, WorksForDynamicNativeArray) {
|
|
694
688
|
EXPECT_EQ(0, a3.begin()[0]);
|
695
689
|
}
|
696
690
|
|
691
|
+
// Tests the Function template struct.
|
692
|
+
|
693
|
+
TEST(FunctionTest, Nullary) {
|
694
|
+
typedef Function<int()> F; // NOLINT
|
695
|
+
EXPECT_EQ(0u, F::ArgumentCount);
|
696
|
+
CompileAssertTypesEqual<int, F::Result>();
|
697
|
+
CompileAssertTypesEqual<std::tuple<>, F::ArgumentTuple>();
|
698
|
+
CompileAssertTypesEqual<std::tuple<>, F::ArgumentMatcherTuple>();
|
699
|
+
CompileAssertTypesEqual<void(), F::MakeResultVoid>();
|
700
|
+
CompileAssertTypesEqual<IgnoredValue(), F::MakeResultIgnoredValue>();
|
701
|
+
}
|
702
|
+
|
703
|
+
TEST(FunctionTest, Unary) {
|
704
|
+
typedef Function<int(bool)> F; // NOLINT
|
705
|
+
EXPECT_EQ(1u, F::ArgumentCount);
|
706
|
+
CompileAssertTypesEqual<int, F::Result>();
|
707
|
+
CompileAssertTypesEqual<bool, F::Arg<0>::type>();
|
708
|
+
CompileAssertTypesEqual<std::tuple<bool>, F::ArgumentTuple>();
|
709
|
+
CompileAssertTypesEqual<std::tuple<Matcher<bool> >,
|
710
|
+
F::ArgumentMatcherTuple>();
|
711
|
+
CompileAssertTypesEqual<void(bool), F::MakeResultVoid>(); // NOLINT
|
712
|
+
CompileAssertTypesEqual<IgnoredValue(bool), // NOLINT
|
713
|
+
F::MakeResultIgnoredValue>();
|
714
|
+
}
|
715
|
+
|
716
|
+
TEST(FunctionTest, Binary) {
|
717
|
+
typedef Function<int(bool, const long&)> F; // NOLINT
|
718
|
+
EXPECT_EQ(2u, F::ArgumentCount);
|
719
|
+
CompileAssertTypesEqual<int, F::Result>();
|
720
|
+
CompileAssertTypesEqual<bool, F::Arg<0>::type>();
|
721
|
+
CompileAssertTypesEqual<const long&, F::Arg<1>::type>(); // NOLINT
|
722
|
+
CompileAssertTypesEqual<std::tuple<bool, const long&>, // NOLINT
|
723
|
+
F::ArgumentTuple>();
|
724
|
+
CompileAssertTypesEqual<
|
725
|
+
std::tuple<Matcher<bool>, Matcher<const long&> >, // NOLINT
|
726
|
+
F::ArgumentMatcherTuple>();
|
727
|
+
CompileAssertTypesEqual<void(bool, const long&), F::MakeResultVoid>(); // NOLINT
|
728
|
+
CompileAssertTypesEqual<IgnoredValue(bool, const long&), // NOLINT
|
729
|
+
F::MakeResultIgnoredValue>();
|
730
|
+
}
|
731
|
+
|
732
|
+
TEST(FunctionTest, LongArgumentList) {
|
733
|
+
typedef Function<char(bool, int, char*, int&, const long&)> F; // NOLINT
|
734
|
+
EXPECT_EQ(5u, F::ArgumentCount);
|
735
|
+
CompileAssertTypesEqual<char, F::Result>();
|
736
|
+
CompileAssertTypesEqual<bool, F::Arg<0>::type>();
|
737
|
+
CompileAssertTypesEqual<int, F::Arg<1>::type>();
|
738
|
+
CompileAssertTypesEqual<char*, F::Arg<2>::type>();
|
739
|
+
CompileAssertTypesEqual<int&, F::Arg<3>::type>();
|
740
|
+
CompileAssertTypesEqual<const long&, F::Arg<4>::type>(); // NOLINT
|
741
|
+
CompileAssertTypesEqual<
|
742
|
+
std::tuple<bool, int, char*, int&, const long&>, // NOLINT
|
743
|
+
F::ArgumentTuple>();
|
744
|
+
CompileAssertTypesEqual<
|
745
|
+
std::tuple<Matcher<bool>, Matcher<int>, Matcher<char*>, Matcher<int&>,
|
746
|
+
Matcher<const long&> >, // NOLINT
|
747
|
+
F::ArgumentMatcherTuple>();
|
748
|
+
CompileAssertTypesEqual<void(bool, int, char*, int&, const long&), // NOLINT
|
749
|
+
F::MakeResultVoid>();
|
750
|
+
CompileAssertTypesEqual<
|
751
|
+
IgnoredValue(bool, int, char*, int&, const long&), // NOLINT
|
752
|
+
F::MakeResultIgnoredValue>();
|
753
|
+
}
|
754
|
+
|
697
755
|
} // namespace
|
698
756
|
} // namespace internal
|
699
757
|
} // namespace testing
|
@@ -26,45 +26,47 @@
|
|
26
26
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
27
27
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
28
28
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
29
|
-
|
30
|
-
// Author: wan@google.com (Zhanyong Wan)
|
29
|
+
|
31
30
|
|
32
31
|
// Google Mock - a framework for writing C++ mock classes.
|
33
32
|
//
|
34
33
|
// This file tests some commonly used argument matchers.
|
35
34
|
|
35
|
+
// Silence warning C4244: 'initializing': conversion from 'int' to 'short',
|
36
|
+
// possible loss of data and C4100, unreferenced local parameter
|
37
|
+
#ifdef _MSC_VER
|
38
|
+
# pragma warning(push)
|
39
|
+
# pragma warning(disable:4244)
|
40
|
+
# pragma warning(disable:4100)
|
41
|
+
#endif
|
42
|
+
|
36
43
|
#include "gmock/gmock-matchers.h"
|
37
44
|
#include "gmock/gmock-more-matchers.h"
|
38
45
|
|
39
46
|
#include <string.h>
|
40
47
|
#include <time.h>
|
41
48
|
#include <deque>
|
49
|
+
#include <forward_list>
|
42
50
|
#include <functional>
|
43
51
|
#include <iostream>
|
44
52
|
#include <iterator>
|
45
53
|
#include <limits>
|
46
54
|
#include <list>
|
47
55
|
#include <map>
|
56
|
+
#include <memory>
|
48
57
|
#include <set>
|
49
58
|
#include <sstream>
|
50
59
|
#include <string>
|
60
|
+
#include <type_traits>
|
51
61
|
#include <utility>
|
52
62
|
#include <vector>
|
53
63
|
#include "gmock/gmock.h"
|
54
64
|
#include "gtest/gtest.h"
|
55
65
|
#include "gtest/gtest-spi.h"
|
56
66
|
|
57
|
-
#if GTEST_HAS_STD_FORWARD_LIST_
|
58
|
-
# include <forward_list> // NOLINT
|
59
|
-
#endif
|
60
|
-
|
61
67
|
namespace testing {
|
62
|
-
|
63
|
-
namespace internal {
|
64
|
-
GTEST_API_ string JoinAsTuple(const Strings& fields);
|
65
|
-
} // namespace internal
|
66
|
-
|
67
68
|
namespace gmock_matchers_test {
|
69
|
+
namespace {
|
68
70
|
|
69
71
|
using std::greater;
|
70
72
|
using std::less;
|
@@ -78,66 +80,6 @@ using std::pair;
|
|
78
80
|
using std::set;
|
79
81
|
using std::stringstream;
|
80
82
|
using std::vector;
|
81
|
-
using testing::A;
|
82
|
-
using testing::AllArgs;
|
83
|
-
using testing::AllOf;
|
84
|
-
using testing::An;
|
85
|
-
using testing::AnyOf;
|
86
|
-
using testing::ByRef;
|
87
|
-
using testing::ContainsRegex;
|
88
|
-
using testing::DoubleEq;
|
89
|
-
using testing::DoubleNear;
|
90
|
-
using testing::EndsWith;
|
91
|
-
using testing::Eq;
|
92
|
-
using testing::ExplainMatchResult;
|
93
|
-
using testing::Field;
|
94
|
-
using testing::FloatEq;
|
95
|
-
using testing::FloatNear;
|
96
|
-
using testing::Ge;
|
97
|
-
using testing::Gt;
|
98
|
-
using testing::HasSubstr;
|
99
|
-
using testing::IsEmpty;
|
100
|
-
using testing::IsNull;
|
101
|
-
using testing::Key;
|
102
|
-
using testing::Le;
|
103
|
-
using testing::Lt;
|
104
|
-
using testing::MakeMatcher;
|
105
|
-
using testing::MakePolymorphicMatcher;
|
106
|
-
using testing::MatchResultListener;
|
107
|
-
using testing::Matcher;
|
108
|
-
using testing::MatcherCast;
|
109
|
-
using testing::MatcherInterface;
|
110
|
-
using testing::Matches;
|
111
|
-
using testing::MatchesRegex;
|
112
|
-
using testing::NanSensitiveDoubleEq;
|
113
|
-
using testing::NanSensitiveDoubleNear;
|
114
|
-
using testing::NanSensitiveFloatEq;
|
115
|
-
using testing::NanSensitiveFloatNear;
|
116
|
-
using testing::Ne;
|
117
|
-
using testing::Not;
|
118
|
-
using testing::NotNull;
|
119
|
-
using testing::Pair;
|
120
|
-
using testing::Pointee;
|
121
|
-
using testing::Pointwise;
|
122
|
-
using testing::PolymorphicMatcher;
|
123
|
-
using testing::Property;
|
124
|
-
using testing::Ref;
|
125
|
-
using testing::ResultOf;
|
126
|
-
using testing::SizeIs;
|
127
|
-
using testing::StartsWith;
|
128
|
-
using testing::StrCaseEq;
|
129
|
-
using testing::StrCaseNe;
|
130
|
-
using testing::StrEq;
|
131
|
-
using testing::StrNe;
|
132
|
-
using testing::StringMatchResultListener;
|
133
|
-
using testing::Truly;
|
134
|
-
using testing::TypedEq;
|
135
|
-
using testing::UnorderedPointwise;
|
136
|
-
using testing::Value;
|
137
|
-
using testing::WhenSorted;
|
138
|
-
using testing::WhenSortedBy;
|
139
|
-
using testing::_;
|
140
|
-
using testing::get;
|
141
83
|
using testing::internal::DummyMatchResultListener;
|
142
84
|
using testing::internal::ElementMatcherPair;
|
143
85
|
using testing::internal::ElementMatcherPairs;
|
@@ -145,30 +87,33 @@ using testing::internal::ExplainMatchFailureTupleTo;
|
|
145
87
|
using testing::internal::FloatingEqMatcher;
|
146
88
|
using testing::internal::FormatMatcherDescription;
|
147
89
|
using testing::internal::IsReadableTypeName;
|
148
|
-
using testing::internal::JoinAsTuple;
|
149
|
-
using testing::internal::linked_ptr;
|
150
90
|
using testing::internal::MatchMatrix;
|
91
|
+
using testing::internal::PredicateFormatterFromMatcher;
|
151
92
|
using testing::internal::RE;
|
152
|
-
using testing::internal::scoped_ptr;
|
153
93
|
using testing::internal::StreamMatchResultListener;
|
154
94
|
using testing::internal::Strings;
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
95
|
+
|
96
|
+
// Helper for testing container-valued matchers in mock method context. It is
|
97
|
+
// important to test matchers in this context, since it requires additional type
|
98
|
+
// deduction beyond what EXPECT_THAT does, thus making it more restrictive.
|
99
|
+
struct ContainerHelper {
|
100
|
+
MOCK_METHOD1(Call, void(std::vector<std::unique_ptr<int>>));
|
101
|
+
};
|
102
|
+
|
103
|
+
std::vector<std::unique_ptr<int>> MakeUniquePtrs(const std::vector<int>& ints) {
|
104
|
+
std::vector<std::unique_ptr<int>> pointers;
|
105
|
+
for (int i : ints) pointers.emplace_back(new int(i));
|
106
|
+
return pointers;
|
107
|
+
}
|
160
108
|
|
161
109
|
// For testing ExplainMatchResultTo().
|
162
110
|
class GreaterThanMatcher : public MatcherInterface<int> {
|
163
111
|
public:
|
164
112
|
explicit GreaterThanMatcher(int rhs) : rhs_(rhs) {}
|
165
113
|
|
166
|
-
|
167
|
-
*os << "is > " << rhs_;
|
168
|
-
}
|
114
|
+
void DescribeTo(ostream* os) const override { *os << "is > " << rhs_; }
|
169
115
|
|
170
|
-
|
171
|
-
MatchResultListener* listener) const {
|
116
|
+
bool MatchAndExplain(int lhs, MatchResultListener* listener) const override {
|
172
117
|
const int diff = lhs - rhs_;
|
173
118
|
if (diff > 0) {
|
174
119
|
*listener << "which is " << diff << " more than " << rhs_;
|
@@ -189,7 +134,7 @@ Matcher<int> GreaterThan(int n) {
|
|
189
134
|
return MakeMatcher(new GreaterThanMatcher(n));
|
190
135
|
}
|
191
136
|
|
192
|
-
string OfType(const string& type_name) {
|
137
|
+
std::string OfType(const std::string& type_name) {
|
193
138
|
#if GTEST_HAS_RTTI
|
194
139
|
return " (of type " + type_name + ")";
|
195
140
|
#else
|
@@ -199,28 +144,30 @@ string OfType(const string& type_name) {
|
|
199
144
|
|
200
145
|
// Returns the description of the given matcher.
|
201
146
|
template <typename T>
|
202
|
-
string Describe(const Matcher<T>& m) {
|
203
|
-
|
204
|
-
m.DescribeTo(&ss);
|
205
|
-
return ss.str();
|
147
|
+
std::string Describe(const Matcher<T>& m) {
|
148
|
+
return DescribeMatcher<T>(m);
|
206
149
|
}
|
207
150
|
|
208
151
|
// Returns the description of the negation of the given matcher.
|
209
152
|
template <typename T>
|
210
|
-
string DescribeNegation(const Matcher<T>& m) {
|
211
|
-
|
212
|
-
m.DescribeNegationTo(&ss);
|
213
|
-
return ss.str();
|
153
|
+
std::string DescribeNegation(const Matcher<T>& m) {
|
154
|
+
return DescribeMatcher<T>(m, true);
|
214
155
|
}
|
215
156
|
|
216
157
|
// Returns the reason why x matches, or doesn't match, m.
|
217
158
|
template <typename MatcherType, typename Value>
|
218
|
-
string Explain(const MatcherType& m, const Value& x) {
|
159
|
+
std::string Explain(const MatcherType& m, const Value& x) {
|
219
160
|
StringMatchResultListener listener;
|
220
161
|
ExplainMatchResult(m, x, &listener);
|
221
162
|
return listener.str();
|
222
163
|
}
|
223
164
|
|
165
|
+
TEST(MonotonicMatcherTest, IsPrintable) {
|
166
|
+
stringstream ss;
|
167
|
+
ss << GreaterThan(5);
|
168
|
+
EXPECT_EQ("is > 5", ss.str());
|
169
|
+
}
|
170
|
+
|
224
171
|
TEST(MatchResultListenerTest, StreamingWorks) {
|
225
172
|
StringMatchResultListener listener;
|
226
173
|
listener << "hi" << 5;
|
@@ -238,8 +185,8 @@ TEST(MatchResultListenerTest, StreamingWorks) {
|
|
238
185
|
}
|
239
186
|
|
240
187
|
TEST(MatchResultListenerTest, CanAccessUnderlyingStream) {
|
241
|
-
EXPECT_TRUE(DummyMatchResultListener().stream() ==
|
242
|
-
EXPECT_TRUE(StreamMatchResultListener(
|
188
|
+
EXPECT_TRUE(DummyMatchResultListener().stream() == nullptr);
|
189
|
+
EXPECT_TRUE(StreamMatchResultListener(nullptr).stream() == nullptr);
|
243
190
|
|
244
191
|
EXPECT_EQ(&std::cout, StreamMatchResultListener(&std::cout).stream());
|
245
192
|
}
|
@@ -249,21 +196,19 @@ TEST(MatchResultListenerTest, IsInterestedWorks) {
|
|
249
196
|
EXPECT_TRUE(StreamMatchResultListener(&std::cout).IsInterested());
|
250
197
|
|
251
198
|
EXPECT_FALSE(DummyMatchResultListener().IsInterested());
|
252
|
-
EXPECT_FALSE(StreamMatchResultListener(
|
199
|
+
EXPECT_FALSE(StreamMatchResultListener(nullptr).IsInterested());
|
253
200
|
}
|
254
201
|
|
255
202
|
// Makes sure that the MatcherInterface<T> interface doesn't
|
256
203
|
// change.
|
257
204
|
class EvenMatcherImpl : public MatcherInterface<int> {
|
258
205
|
public:
|
259
|
-
|
260
|
-
|
206
|
+
bool MatchAndExplain(int x,
|
207
|
+
MatchResultListener* /* listener */) const override {
|
261
208
|
return x % 2 == 0;
|
262
209
|
}
|
263
210
|
|
264
|
-
|
265
|
-
*os << "is an even number";
|
266
|
-
}
|
211
|
+
void DescribeTo(ostream* os) const override { *os << "is an even number"; }
|
267
212
|
|
268
213
|
// We deliberately don't define DescribeNegationTo() and
|
269
214
|
// ExplainMatchResultTo() here, to make sure the definition of these
|
@@ -279,11 +224,11 @@ TEST(MatcherInterfaceTest, CanBeImplementedUsingPublishedAPI) {
|
|
279
224
|
|
280
225
|
class NewEvenMatcherImpl : public MatcherInterface<int> {
|
281
226
|
public:
|
282
|
-
|
227
|
+
bool MatchAndExplain(int x, MatchResultListener* listener) const override {
|
283
228
|
const bool match = x % 2 == 0;
|
284
229
|
// Verifies that we can stream to a listener directly.
|
285
230
|
*listener << "value % " << 2;
|
286
|
-
if (listener->stream() !=
|
231
|
+
if (listener->stream() != nullptr) {
|
287
232
|
// Verifies that we can stream to a listener's underlying stream
|
288
233
|
// too.
|
289
234
|
*listener->stream() << " == " << (x % 2);
|
@@ -291,9 +236,7 @@ class NewEvenMatcherImpl : public MatcherInterface<int> {
|
|
291
236
|
return match;
|
292
237
|
}
|
293
238
|
|
294
|
-
|
295
|
-
*os << "is an even number";
|
296
|
-
}
|
239
|
+
void DescribeTo(ostream* os) const override { *os << "is an even number"; }
|
297
240
|
};
|
298
241
|
|
299
242
|
TEST(MatcherInterfaceTest, CanBeImplementedUsingNewAPI) {
|
@@ -326,12 +269,28 @@ TEST(MatcherTest, CanBeImplicitlyConstructedFromValue) {
|
|
326
269
|
|
327
270
|
// Tests that NULL can be used in place of Eq(NULL).
|
328
271
|
TEST(MatcherTest, CanBeImplicitlyConstructedFromNULL) {
|
329
|
-
Matcher<int*> m1 =
|
330
|
-
EXPECT_TRUE(m1.Matches(
|
272
|
+
Matcher<int*> m1 = nullptr;
|
273
|
+
EXPECT_TRUE(m1.Matches(nullptr));
|
331
274
|
int n = 0;
|
332
275
|
EXPECT_FALSE(m1.Matches(&n));
|
333
276
|
}
|
334
277
|
|
278
|
+
// Tests that matchers can be constructed from a variable that is not properly
|
279
|
+
// defined. This should be illegal, but many users rely on this accidentally.
|
280
|
+
struct Undefined {
|
281
|
+
virtual ~Undefined() = 0;
|
282
|
+
static const int kInt = 1;
|
283
|
+
};
|
284
|
+
|
285
|
+
TEST(MatcherTest, CanBeConstructedFromUndefinedVariable) {
|
286
|
+
Matcher<int> m1 = Undefined::kInt;
|
287
|
+
EXPECT_TRUE(m1.Matches(1));
|
288
|
+
EXPECT_FALSE(m1.Matches(2));
|
289
|
+
}
|
290
|
+
|
291
|
+
// Test that a matcher parameterized with an abstract class compiles.
|
292
|
+
TEST(MatcherTest, CanAcceptAbstractClass) { Matcher<const Undefined&> m = _; }
|
293
|
+
|
335
294
|
// Tests that matchers are copyable.
|
336
295
|
TEST(MatcherTest, IsCopyable) {
|
337
296
|
// Tests the copy constructor.
|
@@ -365,72 +324,86 @@ TEST(MatcherTest, MatchAndExplain) {
|
|
365
324
|
}
|
366
325
|
|
367
326
|
// Tests that a C-string literal can be implicitly converted to a
|
368
|
-
// Matcher<string> or Matcher<const string&>.
|
327
|
+
// Matcher<std::string> or Matcher<const std::string&>.
|
369
328
|
TEST(StringMatcherTest, CanBeImplicitlyConstructedFromCStringLiteral) {
|
370
|
-
Matcher<string> m1 = "hi";
|
329
|
+
Matcher<std::string> m1 = "hi";
|
371
330
|
EXPECT_TRUE(m1.Matches("hi"));
|
372
331
|
EXPECT_FALSE(m1.Matches("hello"));
|
373
332
|
|
374
|
-
Matcher<const string&> m2 = "hi";
|
333
|
+
Matcher<const std::string&> m2 = "hi";
|
375
334
|
EXPECT_TRUE(m2.Matches("hi"));
|
376
335
|
EXPECT_FALSE(m2.Matches("hello"));
|
377
336
|
}
|
378
337
|
|
379
338
|
// Tests that a string object can be implicitly converted to a
|
380
|
-
// Matcher<string> or Matcher<const string&>.
|
339
|
+
// Matcher<std::string> or Matcher<const std::string&>.
|
381
340
|
TEST(StringMatcherTest, CanBeImplicitlyConstructedFromString) {
|
382
|
-
Matcher<string> m1 = string("hi");
|
341
|
+
Matcher<std::string> m1 = std::string("hi");
|
383
342
|
EXPECT_TRUE(m1.Matches("hi"));
|
384
343
|
EXPECT_FALSE(m1.Matches("hello"));
|
385
344
|
|
386
|
-
Matcher<const string&> m2 = string("hi");
|
345
|
+
Matcher<const std::string&> m2 = std::string("hi");
|
387
346
|
EXPECT_TRUE(m2.Matches("hi"));
|
388
347
|
EXPECT_FALSE(m2.Matches("hello"));
|
389
348
|
}
|
390
349
|
|
391
|
-
#if
|
350
|
+
#if GTEST_HAS_ABSL
|
392
351
|
// Tests that a C-string literal can be implicitly converted to a
|
393
|
-
// Matcher<
|
394
|
-
TEST(
|
395
|
-
Matcher<
|
352
|
+
// Matcher<absl::string_view> or Matcher<const absl::string_view&>.
|
353
|
+
TEST(StringViewMatcherTest, CanBeImplicitlyConstructedFromCStringLiteral) {
|
354
|
+
Matcher<absl::string_view> m1 = "cats";
|
396
355
|
EXPECT_TRUE(m1.Matches("cats"));
|
397
356
|
EXPECT_FALSE(m1.Matches("dogs"));
|
398
357
|
|
399
|
-
Matcher<const
|
358
|
+
Matcher<const absl::string_view&> m2 = "cats";
|
400
359
|
EXPECT_TRUE(m2.Matches("cats"));
|
401
360
|
EXPECT_FALSE(m2.Matches("dogs"));
|
402
361
|
}
|
403
362
|
|
404
|
-
// Tests that a string object can be implicitly converted to a
|
405
|
-
// Matcher<
|
406
|
-
TEST(
|
407
|
-
Matcher<
|
363
|
+
// Tests that a std::string object can be implicitly converted to a
|
364
|
+
// Matcher<absl::string_view> or Matcher<const absl::string_view&>.
|
365
|
+
TEST(StringViewMatcherTest, CanBeImplicitlyConstructedFromString) {
|
366
|
+
Matcher<absl::string_view> m1 = std::string("cats");
|
367
|
+
EXPECT_TRUE(m1.Matches("cats"));
|
368
|
+
EXPECT_FALSE(m1.Matches("dogs"));
|
369
|
+
|
370
|
+
Matcher<const absl::string_view&> m2 = std::string("cats");
|
371
|
+
EXPECT_TRUE(m2.Matches("cats"));
|
372
|
+
EXPECT_FALSE(m2.Matches("dogs"));
|
373
|
+
}
|
374
|
+
|
375
|
+
// Tests that a absl::string_view object can be implicitly converted to a
|
376
|
+
// Matcher<absl::string_view> or Matcher<const absl::string_view&>.
|
377
|
+
TEST(StringViewMatcherTest, CanBeImplicitlyConstructedFromStringView) {
|
378
|
+
Matcher<absl::string_view> m1 = absl::string_view("cats");
|
408
379
|
EXPECT_TRUE(m1.Matches("cats"));
|
409
380
|
EXPECT_FALSE(m1.Matches("dogs"));
|
410
381
|
|
411
|
-
Matcher<const
|
382
|
+
Matcher<const absl::string_view&> m2 = absl::string_view("cats");
|
412
383
|
EXPECT_TRUE(m2.Matches("cats"));
|
413
384
|
EXPECT_FALSE(m2.Matches("dogs"));
|
414
385
|
}
|
386
|
+
#endif // GTEST_HAS_ABSL
|
415
387
|
|
416
|
-
// Tests that a
|
417
|
-
// Matcher<
|
418
|
-
TEST(
|
419
|
-
|
388
|
+
// Tests that a std::reference_wrapper<std::string> object can be implicitly
|
389
|
+
// converted to a Matcher<std::string> or Matcher<const std::string&> via Eq().
|
390
|
+
TEST(StringMatcherTest,
|
391
|
+
CanBeImplicitlyConstructedFromEqReferenceWrapperString) {
|
392
|
+
std::string value = "cats";
|
393
|
+
Matcher<std::string> m1 = Eq(std::ref(value));
|
420
394
|
EXPECT_TRUE(m1.Matches("cats"));
|
421
395
|
EXPECT_FALSE(m1.Matches("dogs"));
|
422
396
|
|
423
|
-
Matcher<const
|
397
|
+
Matcher<const std::string&> m2 = Eq(std::ref(value));
|
424
398
|
EXPECT_TRUE(m2.Matches("cats"));
|
425
399
|
EXPECT_FALSE(m2.Matches("dogs"));
|
426
400
|
}
|
427
|
-
#endif // GTEST_HAS_STRING_PIECE_
|
428
401
|
|
429
402
|
// Tests that MakeMatcher() constructs a Matcher<T> from a
|
430
403
|
// MatcherInterface* without requiring the user to explicitly
|
431
404
|
// write the type.
|
432
405
|
TEST(MakeMatcherTest, ConstructsMatcherFromMatcherInterface) {
|
433
|
-
const MatcherInterface<int>* dummy_impl =
|
406
|
+
const MatcherInterface<int>* dummy_impl = nullptr;
|
434
407
|
Matcher<int> m = MakeMatcher(dummy_impl);
|
435
408
|
}
|
436
409
|
|
@@ -489,7 +462,7 @@ class PolymorphicIsEvenImpl {
|
|
489
462
|
bool MatchAndExplain(const T& x, MatchResultListener* listener) const {
|
490
463
|
// Verifies that we can stream to the listener directly.
|
491
464
|
*listener << "% " << 2;
|
492
|
-
if (listener->stream() !=
|
465
|
+
if (listener->stream() != nullptr) {
|
493
466
|
// Verifies that we can stream to the listener's underlying stream
|
494
467
|
// too.
|
495
468
|
*listener->stream() << " == " << (x % 2);
|
@@ -609,11 +582,76 @@ TEST(MatcherCastTest, FromSameType) {
|
|
609
582
|
EXPECT_FALSE(m2.Matches(1));
|
610
583
|
}
|
611
584
|
|
585
|
+
// Tests that MatcherCast<T>(m) works when m is a value of the same type as the
|
586
|
+
// value type of the Matcher.
|
587
|
+
TEST(MatcherCastTest, FromAValue) {
|
588
|
+
Matcher<int> m = MatcherCast<int>(42);
|
589
|
+
EXPECT_TRUE(m.Matches(42));
|
590
|
+
EXPECT_FALSE(m.Matches(239));
|
591
|
+
}
|
592
|
+
|
593
|
+
// Tests that MatcherCast<T>(m) works when m is a value of the type implicitly
|
594
|
+
// convertible to the value type of the Matcher.
|
595
|
+
TEST(MatcherCastTest, FromAnImplicitlyConvertibleValue) {
|
596
|
+
const int kExpected = 'c';
|
597
|
+
Matcher<int> m = MatcherCast<int>('c');
|
598
|
+
EXPECT_TRUE(m.Matches(kExpected));
|
599
|
+
EXPECT_FALSE(m.Matches(kExpected + 1));
|
600
|
+
}
|
601
|
+
|
602
|
+
struct NonImplicitlyConstructibleTypeWithOperatorEq {
|
603
|
+
friend bool operator==(
|
604
|
+
const NonImplicitlyConstructibleTypeWithOperatorEq& /* ignored */,
|
605
|
+
int rhs) {
|
606
|
+
return 42 == rhs;
|
607
|
+
}
|
608
|
+
friend bool operator==(
|
609
|
+
int lhs,
|
610
|
+
const NonImplicitlyConstructibleTypeWithOperatorEq& /* ignored */) {
|
611
|
+
return lhs == 42;
|
612
|
+
}
|
613
|
+
};
|
614
|
+
|
615
|
+
// Tests that MatcherCast<T>(m) works when m is a neither a matcher nor
|
616
|
+
// implicitly convertible to the value type of the Matcher, but the value type
|
617
|
+
// of the matcher has operator==() overload accepting m.
|
618
|
+
TEST(MatcherCastTest, NonImplicitlyConstructibleTypeWithOperatorEq) {
|
619
|
+
Matcher<NonImplicitlyConstructibleTypeWithOperatorEq> m1 =
|
620
|
+
MatcherCast<NonImplicitlyConstructibleTypeWithOperatorEq>(42);
|
621
|
+
EXPECT_TRUE(m1.Matches(NonImplicitlyConstructibleTypeWithOperatorEq()));
|
622
|
+
|
623
|
+
Matcher<NonImplicitlyConstructibleTypeWithOperatorEq> m2 =
|
624
|
+
MatcherCast<NonImplicitlyConstructibleTypeWithOperatorEq>(239);
|
625
|
+
EXPECT_FALSE(m2.Matches(NonImplicitlyConstructibleTypeWithOperatorEq()));
|
626
|
+
|
627
|
+
// When updating the following lines please also change the comment to
|
628
|
+
// namespace convertible_from_any.
|
629
|
+
Matcher<int> m3 =
|
630
|
+
MatcherCast<int>(NonImplicitlyConstructibleTypeWithOperatorEq());
|
631
|
+
EXPECT_TRUE(m3.Matches(42));
|
632
|
+
EXPECT_FALSE(m3.Matches(239));
|
633
|
+
}
|
634
|
+
|
635
|
+
// ConvertibleFromAny does not work with MSVC. resulting in
|
636
|
+
// error C2440: 'initializing': cannot convert from 'Eq' to 'M'
|
637
|
+
// No constructor could take the source type, or constructor overload
|
638
|
+
// resolution was ambiguous
|
639
|
+
|
640
|
+
#if !defined _MSC_VER
|
641
|
+
|
642
|
+
// The below ConvertibleFromAny struct is implicitly constructible from anything
|
643
|
+
// and when in the same namespace can interact with other tests. In particular,
|
644
|
+
// if it is in the same namespace as other tests and one removes
|
645
|
+
// NonImplicitlyConstructibleTypeWithOperatorEq::operator==(int lhs, ...);
|
646
|
+
// then the corresponding test still compiles (and it should not!) by implicitly
|
647
|
+
// converting NonImplicitlyConstructibleTypeWithOperatorEq to ConvertibleFromAny
|
648
|
+
// in m3.Matcher().
|
649
|
+
namespace convertible_from_any {
|
612
650
|
// Implicitly convertible from any type.
|
613
651
|
struct ConvertibleFromAny {
|
614
652
|
ConvertibleFromAny(int a_value) : value(a_value) {}
|
615
653
|
template <typename T>
|
616
|
-
|
654
|
+
ConvertibleFromAny(const T& /*a_value*/) : value(-1) {
|
617
655
|
ADD_FAILURE() << "Conversion constructor called";
|
618
656
|
}
|
619
657
|
int value;
|
@@ -639,6 +677,9 @@ TEST(MatcherCastTest, FromConvertibleFromAny) {
|
|
639
677
|
EXPECT_TRUE(m.Matches(ConvertibleFromAny(1)));
|
640
678
|
EXPECT_FALSE(m.Matches(ConvertibleFromAny(2)));
|
641
679
|
}
|
680
|
+
} // namespace convertible_from_any
|
681
|
+
|
682
|
+
#endif // !defined _MSC_VER
|
642
683
|
|
643
684
|
struct IntReferenceWrapper {
|
644
685
|
IntReferenceWrapper(const int& a_value) : value(&a_value) {}
|
@@ -744,6 +785,9 @@ TEST(SafeMatcherCastTest, FromSameType) {
|
|
744
785
|
EXPECT_FALSE(m2.Matches(1));
|
745
786
|
}
|
746
787
|
|
788
|
+
#if !defined _MSC_VER
|
789
|
+
|
790
|
+
namespace convertible_from_any {
|
747
791
|
TEST(SafeMatcherCastTest, ConversionConstructorIsUsed) {
|
748
792
|
Matcher<ConvertibleFromAny> m = SafeMatcherCast<ConvertibleFromAny>(1);
|
749
793
|
EXPECT_TRUE(m.Matches(ConvertibleFromAny(1)));
|
@@ -756,6 +800,9 @@ TEST(SafeMatcherCastTest, FromConvertibleFromAny) {
|
|
756
800
|
EXPECT_TRUE(m.Matches(ConvertibleFromAny(1)));
|
757
801
|
EXPECT_FALSE(m.Matches(ConvertibleFromAny(2)));
|
758
802
|
}
|
803
|
+
} // namespace convertible_from_any
|
804
|
+
|
805
|
+
#endif // !defined _MSC_VER
|
759
806
|
|
760
807
|
TEST(SafeMatcherCastTest, ValueIsNotCopied) {
|
761
808
|
int n = 42;
|
@@ -767,7 +814,7 @@ TEST(SafeMatcherCastTest, ValueIsNotCopied) {
|
|
767
814
|
TEST(ExpectThat, TakesLiterals) {
|
768
815
|
EXPECT_THAT(1, 1);
|
769
816
|
EXPECT_THAT(1.0, 1.0);
|
770
|
-
EXPECT_THAT(string(), "");
|
817
|
+
EXPECT_THAT(std::string(), "");
|
771
818
|
}
|
772
819
|
|
773
820
|
TEST(ExpectThat, TakesFunctions) {
|
@@ -867,15 +914,13 @@ class Unprintable {
|
|
867
914
|
public:
|
868
915
|
Unprintable() : c_('a') {}
|
869
916
|
|
917
|
+
bool operator==(const Unprintable& /* rhs */) const { return true; }
|
918
|
+
// -Wunused-private-field: dummy accessor for `c_`.
|
919
|
+
char dummy_c() { return c_; }
|
870
920
|
private:
|
871
921
|
char c_;
|
872
922
|
};
|
873
923
|
|
874
|
-
inline bool operator==(const Unprintable& /* lhs */,
|
875
|
-
const Unprintable& /* rhs */) {
|
876
|
-
return true;
|
877
|
-
}
|
878
|
-
|
879
924
|
TEST(EqTest, CanDescribeSelf) {
|
880
925
|
Matcher<Unprintable> m = Eq(Unprintable());
|
881
926
|
EXPECT_EQ("is equal to 1-byte object <61>", Describe(m));
|
@@ -914,7 +959,7 @@ TEST(TypedEqTest, CanDescribeSelf) {
|
|
914
959
|
// Type<T>::IsTypeOf(v) compiles iff the type of value v is T, where T
|
915
960
|
// is a "bare" type (i.e. not in the form of const U or U&). If v's
|
916
961
|
// type is not T, the compiler will generate a message about
|
917
|
-
// "undefined
|
962
|
+
// "undefined reference".
|
918
963
|
template <typename T>
|
919
964
|
struct Type {
|
920
965
|
static bool IsTypeOf(const T& /* v */) { return true; }
|
@@ -973,7 +1018,7 @@ TEST(LeTest, CanDescribeSelf) {
|
|
973
1018
|
|
974
1019
|
// Tests that Lt(v) matches anything < v.
|
975
1020
|
TEST(LtTest, ImplementsLessThan) {
|
976
|
-
Matcher<const string&> m1 = Lt("Hello");
|
1021
|
+
Matcher<const std::string&> m1 = Lt("Hello");
|
977
1022
|
EXPECT_TRUE(m1.Matches("Abc"));
|
978
1023
|
EXPECT_FALSE(m1.Matches("Hello"));
|
979
1024
|
EXPECT_FALSE(m1.Matches("Hello, world!"));
|
@@ -999,61 +1044,72 @@ TEST(NeTest, CanDescribeSelf) {
|
|
999
1044
|
EXPECT_EQ("isn't equal to 5", Describe(m));
|
1000
1045
|
}
|
1001
1046
|
|
1047
|
+
class MoveOnly {
|
1048
|
+
public:
|
1049
|
+
explicit MoveOnly(int i) : i_(i) {}
|
1050
|
+
MoveOnly(const MoveOnly&) = delete;
|
1051
|
+
MoveOnly(MoveOnly&&) = default;
|
1052
|
+
MoveOnly& operator=(const MoveOnly&) = delete;
|
1053
|
+
MoveOnly& operator=(MoveOnly&&) = default;
|
1054
|
+
|
1055
|
+
bool operator==(const MoveOnly& other) const { return i_ == other.i_; }
|
1056
|
+
bool operator!=(const MoveOnly& other) const { return i_ != other.i_; }
|
1057
|
+
bool operator<(const MoveOnly& other) const { return i_ < other.i_; }
|
1058
|
+
bool operator<=(const MoveOnly& other) const { return i_ <= other.i_; }
|
1059
|
+
bool operator>(const MoveOnly& other) const { return i_ > other.i_; }
|
1060
|
+
bool operator>=(const MoveOnly& other) const { return i_ >= other.i_; }
|
1061
|
+
|
1062
|
+
private:
|
1063
|
+
int i_;
|
1064
|
+
};
|
1065
|
+
|
1066
|
+
struct MoveHelper {
|
1067
|
+
MOCK_METHOD1(Call, void(MoveOnly));
|
1068
|
+
};
|
1069
|
+
|
1070
|
+
TEST(ComparisonBaseTest, WorksWithMoveOnly) {
|
1071
|
+
MoveOnly m{0};
|
1072
|
+
MoveHelper helper;
|
1073
|
+
|
1074
|
+
EXPECT_CALL(helper, Call(Eq(ByRef(m))));
|
1075
|
+
helper.Call(MoveOnly(0));
|
1076
|
+
EXPECT_CALL(helper, Call(Ne(ByRef(m))));
|
1077
|
+
helper.Call(MoveOnly(1));
|
1078
|
+
EXPECT_CALL(helper, Call(Le(ByRef(m))));
|
1079
|
+
helper.Call(MoveOnly(0));
|
1080
|
+
EXPECT_CALL(helper, Call(Lt(ByRef(m))));
|
1081
|
+
helper.Call(MoveOnly(-1));
|
1082
|
+
EXPECT_CALL(helper, Call(Ge(ByRef(m))));
|
1083
|
+
helper.Call(MoveOnly(0));
|
1084
|
+
EXPECT_CALL(helper, Call(Gt(ByRef(m))));
|
1085
|
+
helper.Call(MoveOnly(1));
|
1086
|
+
}
|
1087
|
+
|
1002
1088
|
// Tests that IsNull() matches any NULL pointer of any type.
|
1003
1089
|
TEST(IsNullTest, MatchesNullPointer) {
|
1004
1090
|
Matcher<int*> m1 = IsNull();
|
1005
|
-
int* p1 =
|
1091
|
+
int* p1 = nullptr;
|
1006
1092
|
int n = 0;
|
1007
1093
|
EXPECT_TRUE(m1.Matches(p1));
|
1008
1094
|
EXPECT_FALSE(m1.Matches(&n));
|
1009
1095
|
|
1010
1096
|
Matcher<const char*> m2 = IsNull();
|
1011
|
-
const char* p2 =
|
1097
|
+
const char* p2 = nullptr;
|
1012
1098
|
EXPECT_TRUE(m2.Matches(p2));
|
1013
1099
|
EXPECT_FALSE(m2.Matches("hi"));
|
1014
1100
|
|
1015
|
-
#if !GTEST_OS_SYMBIAN
|
1016
|
-
// Nokia's Symbian compiler generates:
|
1017
|
-
// gmock-matchers.h: ambiguous access to overloaded function
|
1018
|
-
// gmock-matchers.h: 'testing::Matcher<void *>::Matcher(void *)'
|
1019
|
-
// gmock-matchers.h: 'testing::Matcher<void *>::Matcher(const testing::
|
1020
|
-
// MatcherInterface<void *> *)'
|
1021
|
-
// gmock-matchers.h: (point of instantiation: 'testing::
|
1022
|
-
// gmock_matchers_test::IsNullTest_MatchesNullPointer_Test::TestBody()')
|
1023
|
-
// gmock-matchers.h: (instantiating: 'testing::PolymorphicMatc
|
1024
1101
|
Matcher<void*> m3 = IsNull();
|
1025
|
-
void* p3 =
|
1102
|
+
void* p3 = nullptr;
|
1026
1103
|
EXPECT_TRUE(m3.Matches(p3));
|
1027
1104
|
EXPECT_FALSE(m3.Matches(reinterpret_cast<void*>(0xbeef)));
|
1028
|
-
#endif
|
1029
|
-
}
|
1030
|
-
|
1031
|
-
TEST(IsNullTest, LinkedPtr) {
|
1032
|
-
const Matcher<linked_ptr<int> > m = IsNull();
|
1033
|
-
const linked_ptr<int> null_p;
|
1034
|
-
const linked_ptr<int> non_null_p(new int);
|
1035
|
-
|
1036
|
-
EXPECT_TRUE(m.Matches(null_p));
|
1037
|
-
EXPECT_FALSE(m.Matches(non_null_p));
|
1038
|
-
}
|
1039
|
-
|
1040
|
-
TEST(IsNullTest, ReferenceToConstLinkedPtr) {
|
1041
|
-
const Matcher<const linked_ptr<double>&> m = IsNull();
|
1042
|
-
const linked_ptr<double> null_p;
|
1043
|
-
const linked_ptr<double> non_null_p(new double);
|
1044
|
-
|
1045
|
-
EXPECT_TRUE(m.Matches(null_p));
|
1046
|
-
EXPECT_FALSE(m.Matches(non_null_p));
|
1047
1105
|
}
|
1048
1106
|
|
1049
|
-
#if GTEST_HAS_STD_FUNCTION_
|
1050
1107
|
TEST(IsNullTest, StdFunction) {
|
1051
1108
|
const Matcher<std::function<void()>> m = IsNull();
|
1052
1109
|
|
1053
1110
|
EXPECT_TRUE(m.Matches(std::function<void()>()));
|
1054
1111
|
EXPECT_FALSE(m.Matches([]{}));
|
1055
1112
|
}
|
1056
|
-
#endif // GTEST_HAS_STD_FUNCTION_
|
1057
1113
|
|
1058
1114
|
// Tests that IsNull() describes itself properly.
|
1059
1115
|
TEST(IsNullTest, CanDescribeSelf) {
|
@@ -1065,43 +1121,41 @@ TEST(IsNullTest, CanDescribeSelf) {
|
|
1065
1121
|
// Tests that NotNull() matches any non-NULL pointer of any type.
|
1066
1122
|
TEST(NotNullTest, MatchesNonNullPointer) {
|
1067
1123
|
Matcher<int*> m1 = NotNull();
|
1068
|
-
int* p1 =
|
1124
|
+
int* p1 = nullptr;
|
1069
1125
|
int n = 0;
|
1070
1126
|
EXPECT_FALSE(m1.Matches(p1));
|
1071
1127
|
EXPECT_TRUE(m1.Matches(&n));
|
1072
1128
|
|
1073
1129
|
Matcher<const char*> m2 = NotNull();
|
1074
|
-
const char* p2 =
|
1130
|
+
const char* p2 = nullptr;
|
1075
1131
|
EXPECT_FALSE(m2.Matches(p2));
|
1076
1132
|
EXPECT_TRUE(m2.Matches("hi"));
|
1077
1133
|
}
|
1078
1134
|
|
1079
1135
|
TEST(NotNullTest, LinkedPtr) {
|
1080
|
-
const Matcher<
|
1081
|
-
const
|
1082
|
-
const
|
1136
|
+
const Matcher<std::shared_ptr<int>> m = NotNull();
|
1137
|
+
const std::shared_ptr<int> null_p;
|
1138
|
+
const std::shared_ptr<int> non_null_p(new int);
|
1083
1139
|
|
1084
1140
|
EXPECT_FALSE(m.Matches(null_p));
|
1085
1141
|
EXPECT_TRUE(m.Matches(non_null_p));
|
1086
1142
|
}
|
1087
1143
|
|
1088
1144
|
TEST(NotNullTest, ReferenceToConstLinkedPtr) {
|
1089
|
-
const Matcher<const
|
1090
|
-
const
|
1091
|
-
const
|
1145
|
+
const Matcher<const std::shared_ptr<double>&> m = NotNull();
|
1146
|
+
const std::shared_ptr<double> null_p;
|
1147
|
+
const std::shared_ptr<double> non_null_p(new double);
|
1092
1148
|
|
1093
1149
|
EXPECT_FALSE(m.Matches(null_p));
|
1094
1150
|
EXPECT_TRUE(m.Matches(non_null_p));
|
1095
1151
|
}
|
1096
1152
|
|
1097
|
-
#if GTEST_HAS_STD_FUNCTION_
|
1098
1153
|
TEST(NotNullTest, StdFunction) {
|
1099
1154
|
const Matcher<std::function<void()>> m = NotNull();
|
1100
1155
|
|
1101
1156
|
EXPECT_TRUE(m.Matches([]{}));
|
1102
1157
|
EXPECT_FALSE(m.Matches(std::function<void()>()));
|
1103
1158
|
}
|
1104
|
-
#endif // GTEST_HAS_STD_FUNCTION_
|
1105
1159
|
|
1106
1160
|
// Tests that NotNull() describes itself properly.
|
1107
1161
|
TEST(NotNullTest, CanDescribeSelf) {
|
@@ -1125,7 +1179,7 @@ TEST(RefTest, CanDescribeSelf) {
|
|
1125
1179
|
Matcher<int&> m = Ref(n);
|
1126
1180
|
stringstream ss;
|
1127
1181
|
ss << "references the variable @" << &n << " 5";
|
1128
|
-
EXPECT_EQ(
|
1182
|
+
EXPECT_EQ(ss.str(), Describe(m));
|
1129
1183
|
}
|
1130
1184
|
|
1131
1185
|
// Test that Ref(non_const_varialbe) can be used as a matcher for a
|
@@ -1169,39 +1223,58 @@ TEST(RefTest, ExplainsResult) {
|
|
1169
1223
|
// Tests string comparison matchers.
|
1170
1224
|
|
1171
1225
|
TEST(StrEqTest, MatchesEqualString) {
|
1172
|
-
Matcher<const char*> m = StrEq(string("Hello"));
|
1226
|
+
Matcher<const char*> m = StrEq(std::string("Hello"));
|
1173
1227
|
EXPECT_TRUE(m.Matches("Hello"));
|
1174
1228
|
EXPECT_FALSE(m.Matches("hello"));
|
1175
|
-
EXPECT_FALSE(m.Matches(
|
1229
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
1176
1230
|
|
1177
|
-
Matcher<const string&> m2 = StrEq("Hello");
|
1231
|
+
Matcher<const std::string&> m2 = StrEq("Hello");
|
1178
1232
|
EXPECT_TRUE(m2.Matches("Hello"));
|
1179
1233
|
EXPECT_FALSE(m2.Matches("Hi"));
|
1234
|
+
|
1235
|
+
#if GTEST_HAS_ABSL
|
1236
|
+
Matcher<const absl::string_view&> m3 = StrEq("Hello");
|
1237
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("Hello")));
|
1238
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("hello")));
|
1239
|
+
EXPECT_FALSE(m3.Matches(absl::string_view()));
|
1240
|
+
|
1241
|
+
Matcher<const absl::string_view&> m_empty = StrEq("");
|
1242
|
+
EXPECT_TRUE(m_empty.Matches(absl::string_view("")));
|
1243
|
+
EXPECT_TRUE(m_empty.Matches(absl::string_view()));
|
1244
|
+
EXPECT_FALSE(m_empty.Matches(absl::string_view("hello")));
|
1245
|
+
#endif // GTEST_HAS_ABSL
|
1180
1246
|
}
|
1181
1247
|
|
1182
1248
|
TEST(StrEqTest, CanDescribeSelf) {
|
1183
|
-
Matcher<string> m = StrEq("Hi-\'\"?\\\a\b\f\n\r\t\v\xD3");
|
1249
|
+
Matcher<std::string> m = StrEq("Hi-\'\"?\\\a\b\f\n\r\t\v\xD3");
|
1184
1250
|
EXPECT_EQ("is equal to \"Hi-\'\\\"?\\\\\\a\\b\\f\\n\\r\\t\\v\\xD3\"",
|
1185
1251
|
Describe(m));
|
1186
1252
|
|
1187
|
-
string str("01204500800");
|
1253
|
+
std::string str("01204500800");
|
1188
1254
|
str[3] = '\0';
|
1189
|
-
Matcher<string> m2 = StrEq(str);
|
1255
|
+
Matcher<std::string> m2 = StrEq(str);
|
1190
1256
|
EXPECT_EQ("is equal to \"012\\04500800\"", Describe(m2));
|
1191
1257
|
str[0] = str[6] = str[7] = str[9] = str[10] = '\0';
|
1192
|
-
Matcher<string> m3 = StrEq(str);
|
1258
|
+
Matcher<std::string> m3 = StrEq(str);
|
1193
1259
|
EXPECT_EQ("is equal to \"\\012\\045\\0\\08\\0\\0\"", Describe(m3));
|
1194
1260
|
}
|
1195
1261
|
|
1196
1262
|
TEST(StrNeTest, MatchesUnequalString) {
|
1197
1263
|
Matcher<const char*> m = StrNe("Hello");
|
1198
1264
|
EXPECT_TRUE(m.Matches(""));
|
1199
|
-
EXPECT_TRUE(m.Matches(
|
1265
|
+
EXPECT_TRUE(m.Matches(nullptr));
|
1200
1266
|
EXPECT_FALSE(m.Matches("Hello"));
|
1201
1267
|
|
1202
|
-
Matcher<string> m2 = StrNe(string("Hello"));
|
1268
|
+
Matcher<std::string> m2 = StrNe(std::string("Hello"));
|
1203
1269
|
EXPECT_TRUE(m2.Matches("hello"));
|
1204
1270
|
EXPECT_FALSE(m2.Matches("Hello"));
|
1271
|
+
|
1272
|
+
#if GTEST_HAS_ABSL
|
1273
|
+
Matcher<const absl::string_view> m3 = StrNe("Hello");
|
1274
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("")));
|
1275
|
+
EXPECT_TRUE(m3.Matches(absl::string_view()));
|
1276
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("Hello")));
|
1277
|
+
#endif // GTEST_HAS_ABSL
|
1205
1278
|
}
|
1206
1279
|
|
1207
1280
|
TEST(StrNeTest, CanDescribeSelf) {
|
@@ -1210,57 +1283,73 @@ TEST(StrNeTest, CanDescribeSelf) {
|
|
1210
1283
|
}
|
1211
1284
|
|
1212
1285
|
TEST(StrCaseEqTest, MatchesEqualStringIgnoringCase) {
|
1213
|
-
Matcher<const char*> m = StrCaseEq(string("Hello"));
|
1286
|
+
Matcher<const char*> m = StrCaseEq(std::string("Hello"));
|
1214
1287
|
EXPECT_TRUE(m.Matches("Hello"));
|
1215
1288
|
EXPECT_TRUE(m.Matches("hello"));
|
1216
1289
|
EXPECT_FALSE(m.Matches("Hi"));
|
1217
|
-
EXPECT_FALSE(m.Matches(
|
1290
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
1218
1291
|
|
1219
|
-
Matcher<const string&> m2 = StrCaseEq("Hello");
|
1292
|
+
Matcher<const std::string&> m2 = StrCaseEq("Hello");
|
1220
1293
|
EXPECT_TRUE(m2.Matches("hello"));
|
1221
1294
|
EXPECT_FALSE(m2.Matches("Hi"));
|
1295
|
+
|
1296
|
+
#if GTEST_HAS_ABSL
|
1297
|
+
Matcher<const absl::string_view&> m3 = StrCaseEq(std::string("Hello"));
|
1298
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("Hello")));
|
1299
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("hello")));
|
1300
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("Hi")));
|
1301
|
+
EXPECT_FALSE(m3.Matches(absl::string_view()));
|
1302
|
+
#endif // GTEST_HAS_ABSL
|
1222
1303
|
}
|
1223
1304
|
|
1224
1305
|
TEST(StrCaseEqTest, MatchesEqualStringWith0IgnoringCase) {
|
1225
|
-
string str1("oabocdooeoo");
|
1226
|
-
string str2("OABOCDOOEOO");
|
1227
|
-
Matcher<const string&> m0 = StrCaseEq(str1);
|
1228
|
-
EXPECT_FALSE(m0.Matches(str2 + string(1, '\0')));
|
1306
|
+
std::string str1("oabocdooeoo");
|
1307
|
+
std::string str2("OABOCDOOEOO");
|
1308
|
+
Matcher<const std::string&> m0 = StrCaseEq(str1);
|
1309
|
+
EXPECT_FALSE(m0.Matches(str2 + std::string(1, '\0')));
|
1229
1310
|
|
1230
1311
|
str1[3] = str2[3] = '\0';
|
1231
|
-
Matcher<const string&> m1 = StrCaseEq(str1);
|
1312
|
+
Matcher<const std::string&> m1 = StrCaseEq(str1);
|
1232
1313
|
EXPECT_TRUE(m1.Matches(str2));
|
1233
1314
|
|
1234
1315
|
str1[0] = str1[6] = str1[7] = str1[10] = '\0';
|
1235
1316
|
str2[0] = str2[6] = str2[7] = str2[10] = '\0';
|
1236
|
-
Matcher<const string&> m2 = StrCaseEq(str1);
|
1317
|
+
Matcher<const std::string&> m2 = StrCaseEq(str1);
|
1237
1318
|
str1[9] = str2[9] = '\0';
|
1238
1319
|
EXPECT_FALSE(m2.Matches(str2));
|
1239
1320
|
|
1240
|
-
Matcher<const string&> m3 = StrCaseEq(str1);
|
1321
|
+
Matcher<const std::string&> m3 = StrCaseEq(str1);
|
1241
1322
|
EXPECT_TRUE(m3.Matches(str2));
|
1242
1323
|
|
1243
1324
|
EXPECT_FALSE(m3.Matches(str2 + "x"));
|
1244
1325
|
str2.append(1, '\0');
|
1245
1326
|
EXPECT_FALSE(m3.Matches(str2));
|
1246
|
-
EXPECT_FALSE(m3.Matches(string(str2, 0, 9)));
|
1327
|
+
EXPECT_FALSE(m3.Matches(std::string(str2, 0, 9)));
|
1247
1328
|
}
|
1248
1329
|
|
1249
1330
|
TEST(StrCaseEqTest, CanDescribeSelf) {
|
1250
|
-
Matcher<string> m = StrCaseEq("Hi");
|
1331
|
+
Matcher<std::string> m = StrCaseEq("Hi");
|
1251
1332
|
EXPECT_EQ("is equal to (ignoring case) \"Hi\"", Describe(m));
|
1252
1333
|
}
|
1253
1334
|
|
1254
1335
|
TEST(StrCaseNeTest, MatchesUnequalStringIgnoringCase) {
|
1255
1336
|
Matcher<const char*> m = StrCaseNe("Hello");
|
1256
1337
|
EXPECT_TRUE(m.Matches("Hi"));
|
1257
|
-
EXPECT_TRUE(m.Matches(
|
1338
|
+
EXPECT_TRUE(m.Matches(nullptr));
|
1258
1339
|
EXPECT_FALSE(m.Matches("Hello"));
|
1259
1340
|
EXPECT_FALSE(m.Matches("hello"));
|
1260
1341
|
|
1261
|
-
Matcher<string> m2 = StrCaseNe(string("Hello"));
|
1342
|
+
Matcher<std::string> m2 = StrCaseNe(std::string("Hello"));
|
1262
1343
|
EXPECT_TRUE(m2.Matches(""));
|
1263
1344
|
EXPECT_FALSE(m2.Matches("Hello"));
|
1345
|
+
|
1346
|
+
#if GTEST_HAS_ABSL
|
1347
|
+
Matcher<const absl::string_view> m3 = StrCaseNe("Hello");
|
1348
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("Hi")));
|
1349
|
+
EXPECT_TRUE(m3.Matches(absl::string_view()));
|
1350
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("Hello")));
|
1351
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("hello")));
|
1352
|
+
#endif // GTEST_HAS_ABSL
|
1264
1353
|
}
|
1265
1354
|
|
1266
1355
|
TEST(StrCaseNeTest, CanDescribeSelf) {
|
@@ -1270,13 +1359,17 @@ TEST(StrCaseNeTest, CanDescribeSelf) {
|
|
1270
1359
|
|
1271
1360
|
// Tests that HasSubstr() works for matching string-typed values.
|
1272
1361
|
TEST(HasSubstrTest, WorksForStringClasses) {
|
1273
|
-
const Matcher<string> m1 = HasSubstr("foo");
|
1274
|
-
EXPECT_TRUE(m1.Matches(string("I love food.")));
|
1275
|
-
EXPECT_FALSE(m1.Matches(string("tofo")));
|
1362
|
+
const Matcher<std::string> m1 = HasSubstr("foo");
|
1363
|
+
EXPECT_TRUE(m1.Matches(std::string("I love food.")));
|
1364
|
+
EXPECT_FALSE(m1.Matches(std::string("tofo")));
|
1276
1365
|
|
1277
1366
|
const Matcher<const std::string&> m2 = HasSubstr("foo");
|
1278
1367
|
EXPECT_TRUE(m2.Matches(std::string("I love food.")));
|
1279
1368
|
EXPECT_FALSE(m2.Matches(std::string("tofo")));
|
1369
|
+
|
1370
|
+
const Matcher<std::string> m_empty = HasSubstr("");
|
1371
|
+
EXPECT_TRUE(m_empty.Matches(std::string()));
|
1372
|
+
EXPECT_TRUE(m_empty.Matches(std::string("not empty")));
|
1280
1373
|
}
|
1281
1374
|
|
1282
1375
|
// Tests that HasSubstr() works for matching C-string-typed values.
|
@@ -1284,17 +1377,42 @@ TEST(HasSubstrTest, WorksForCStrings) {
|
|
1284
1377
|
const Matcher<char*> m1 = HasSubstr("foo");
|
1285
1378
|
EXPECT_TRUE(m1.Matches(const_cast<char*>("I love food.")));
|
1286
1379
|
EXPECT_FALSE(m1.Matches(const_cast<char*>("tofo")));
|
1287
|
-
EXPECT_FALSE(m1.Matches(
|
1380
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1288
1381
|
|
1289
1382
|
const Matcher<const char*> m2 = HasSubstr("foo");
|
1290
1383
|
EXPECT_TRUE(m2.Matches("I love food."));
|
1291
1384
|
EXPECT_FALSE(m2.Matches("tofo"));
|
1292
|
-
EXPECT_FALSE(m2.Matches(
|
1385
|
+
EXPECT_FALSE(m2.Matches(nullptr));
|
1386
|
+
|
1387
|
+
const Matcher<const char*> m_empty = HasSubstr("");
|
1388
|
+
EXPECT_TRUE(m_empty.Matches("not empty"));
|
1389
|
+
EXPECT_TRUE(m_empty.Matches(""));
|
1390
|
+
EXPECT_FALSE(m_empty.Matches(nullptr));
|
1391
|
+
}
|
1392
|
+
|
1393
|
+
#if GTEST_HAS_ABSL
|
1394
|
+
// Tests that HasSubstr() works for matching absl::string_view-typed values.
|
1395
|
+
TEST(HasSubstrTest, WorksForStringViewClasses) {
|
1396
|
+
const Matcher<absl::string_view> m1 = HasSubstr("foo");
|
1397
|
+
EXPECT_TRUE(m1.Matches(absl::string_view("I love food.")));
|
1398
|
+
EXPECT_FALSE(m1.Matches(absl::string_view("tofo")));
|
1399
|
+
EXPECT_FALSE(m1.Matches(absl::string_view()));
|
1400
|
+
|
1401
|
+
const Matcher<const absl::string_view&> m2 = HasSubstr("foo");
|
1402
|
+
EXPECT_TRUE(m2.Matches(absl::string_view("I love food.")));
|
1403
|
+
EXPECT_FALSE(m2.Matches(absl::string_view("tofo")));
|
1404
|
+
EXPECT_FALSE(m2.Matches(absl::string_view()));
|
1405
|
+
|
1406
|
+
const Matcher<const absl::string_view&> m3 = HasSubstr("");
|
1407
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("foo")));
|
1408
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("")));
|
1409
|
+
EXPECT_TRUE(m3.Matches(absl::string_view()));
|
1293
1410
|
}
|
1411
|
+
#endif // GTEST_HAS_ABSL
|
1294
1412
|
|
1295
1413
|
// Tests that HasSubstr(s) describes itself properly.
|
1296
1414
|
TEST(HasSubstrTest, CanDescribeSelf) {
|
1297
|
-
Matcher<string> m = HasSubstr("foo\n\"");
|
1415
|
+
Matcher<std::string> m = HasSubstr("foo\n\"");
|
1298
1416
|
EXPECT_EQ("has substring \"foo\\n\\\"\"", Describe(m));
|
1299
1417
|
}
|
1300
1418
|
|
@@ -1320,6 +1438,38 @@ TEST(KeyTest, MatchesCorrectly) {
|
|
1320
1438
|
EXPECT_THAT(p, Not(Key(Lt(25))));
|
1321
1439
|
}
|
1322
1440
|
|
1441
|
+
TEST(KeyTest, WorksWithMoveOnly) {
|
1442
|
+
pair<std::unique_ptr<int>, std::unique_ptr<int>> p;
|
1443
|
+
EXPECT_THAT(p, Key(Eq(nullptr)));
|
1444
|
+
}
|
1445
|
+
|
1446
|
+
template <size_t I>
|
1447
|
+
struct Tag {};
|
1448
|
+
|
1449
|
+
struct PairWithGet {
|
1450
|
+
int member_1;
|
1451
|
+
std::string member_2;
|
1452
|
+
using first_type = int;
|
1453
|
+
using second_type = std::string;
|
1454
|
+
|
1455
|
+
const int& GetImpl(Tag<0>) const { return member_1; }
|
1456
|
+
const std::string& GetImpl(Tag<1>) const { return member_2; }
|
1457
|
+
};
|
1458
|
+
template <size_t I>
|
1459
|
+
auto get(const PairWithGet& value) -> decltype(value.GetImpl(Tag<I>())) {
|
1460
|
+
return value.GetImpl(Tag<I>());
|
1461
|
+
}
|
1462
|
+
TEST(PairTest, MatchesPairWithGetCorrectly) {
|
1463
|
+
PairWithGet p{25, "foo"};
|
1464
|
+
EXPECT_THAT(p, Key(25));
|
1465
|
+
EXPECT_THAT(p, Not(Key(42)));
|
1466
|
+
EXPECT_THAT(p, Key(Ge(20)));
|
1467
|
+
EXPECT_THAT(p, Not(Key(Lt(25))));
|
1468
|
+
|
1469
|
+
std::vector<PairWithGet> v = {{11, "Foo"}, {29, "gMockIsBestMock"}};
|
1470
|
+
EXPECT_THAT(v, Contains(Key(29)));
|
1471
|
+
}
|
1472
|
+
|
1323
1473
|
TEST(KeyTest, SafelyCastsInnerMatcher) {
|
1324
1474
|
Matcher<int> is_positive = Gt(0);
|
1325
1475
|
Matcher<int> is_negative = Lt(0);
|
@@ -1436,6 +1586,12 @@ TEST(PairTest, MatchesCorrectly) {
|
|
1436
1586
|
EXPECT_THAT(p, Not(Pair(Lt(13), HasSubstr("a"))));
|
1437
1587
|
}
|
1438
1588
|
|
1589
|
+
TEST(PairTest, WorksWithMoveOnly) {
|
1590
|
+
pair<std::unique_ptr<int>, std::unique_ptr<int>> p;
|
1591
|
+
p.second.reset(new int(7));
|
1592
|
+
EXPECT_THAT(p, Pair(Eq(nullptr), Ne(nullptr)));
|
1593
|
+
}
|
1594
|
+
|
1439
1595
|
TEST(PairTest, SafelyCastsInnerMatchers) {
|
1440
1596
|
Matcher<int> is_positive = Gt(0);
|
1441
1597
|
Matcher<int> is_negative = Lt(0);
|
@@ -1457,20 +1613,44 @@ TEST(PairTest, InsideContainsUsingMap) {
|
|
1457
1613
|
EXPECT_THAT(container, Not(Contains(Pair(3, _))));
|
1458
1614
|
}
|
1459
1615
|
|
1616
|
+
TEST(ContainsTest, WorksWithMoveOnly) {
|
1617
|
+
ContainerHelper helper;
|
1618
|
+
EXPECT_CALL(helper, Call(Contains(Pointee(2))));
|
1619
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
1620
|
+
}
|
1621
|
+
|
1622
|
+
TEST(PairTest, UseGetInsteadOfMembers) {
|
1623
|
+
PairWithGet pair{7, "ABC"};
|
1624
|
+
EXPECT_THAT(pair, Pair(7, "ABC"));
|
1625
|
+
EXPECT_THAT(pair, Pair(Ge(7), HasSubstr("AB")));
|
1626
|
+
EXPECT_THAT(pair, Not(Pair(Lt(7), "ABC")));
|
1627
|
+
|
1628
|
+
std::vector<PairWithGet> v = {{11, "Foo"}, {29, "gMockIsBestMock"}};
|
1629
|
+
EXPECT_THAT(v,
|
1630
|
+
ElementsAre(Pair(11, std::string("Foo")), Pair(Ge(10), Not(""))));
|
1631
|
+
}
|
1632
|
+
|
1460
1633
|
// Tests StartsWith(s).
|
1461
1634
|
|
1462
1635
|
TEST(StartsWithTest, MatchesStringWithGivenPrefix) {
|
1463
|
-
const Matcher<const char*> m1 = StartsWith(string(""));
|
1636
|
+
const Matcher<const char*> m1 = StartsWith(std::string(""));
|
1464
1637
|
EXPECT_TRUE(m1.Matches("Hi"));
|
1465
1638
|
EXPECT_TRUE(m1.Matches(""));
|
1466
|
-
EXPECT_FALSE(m1.Matches(
|
1639
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1467
1640
|
|
1468
|
-
const Matcher<const string&> m2 = StartsWith("Hi");
|
1641
|
+
const Matcher<const std::string&> m2 = StartsWith("Hi");
|
1469
1642
|
EXPECT_TRUE(m2.Matches("Hi"));
|
1470
1643
|
EXPECT_TRUE(m2.Matches("Hi Hi!"));
|
1471
1644
|
EXPECT_TRUE(m2.Matches("High"));
|
1472
1645
|
EXPECT_FALSE(m2.Matches("H"));
|
1473
1646
|
EXPECT_FALSE(m2.Matches(" Hi"));
|
1647
|
+
|
1648
|
+
#if GTEST_HAS_ABSL
|
1649
|
+
const Matcher<absl::string_view> m_empty = StartsWith("");
|
1650
|
+
EXPECT_TRUE(m_empty.Matches(absl::string_view()));
|
1651
|
+
EXPECT_TRUE(m_empty.Matches(absl::string_view("")));
|
1652
|
+
EXPECT_TRUE(m_empty.Matches(absl::string_view("not empty")));
|
1653
|
+
#endif // GTEST_HAS_ABSL
|
1474
1654
|
}
|
1475
1655
|
|
1476
1656
|
TEST(StartsWithTest, CanDescribeSelf) {
|
@@ -1484,14 +1664,22 @@ TEST(EndsWithTest, MatchesStringWithGivenSuffix) {
|
|
1484
1664
|
const Matcher<const char*> m1 = EndsWith("");
|
1485
1665
|
EXPECT_TRUE(m1.Matches("Hi"));
|
1486
1666
|
EXPECT_TRUE(m1.Matches(""));
|
1487
|
-
EXPECT_FALSE(m1.Matches(
|
1667
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1488
1668
|
|
1489
|
-
const Matcher<const string&> m2 = EndsWith(string("Hi"));
|
1669
|
+
const Matcher<const std::string&> m2 = EndsWith(std::string("Hi"));
|
1490
1670
|
EXPECT_TRUE(m2.Matches("Hi"));
|
1491
1671
|
EXPECT_TRUE(m2.Matches("Wow Hi Hi"));
|
1492
1672
|
EXPECT_TRUE(m2.Matches("Super Hi"));
|
1493
1673
|
EXPECT_FALSE(m2.Matches("i"));
|
1494
1674
|
EXPECT_FALSE(m2.Matches("Hi "));
|
1675
|
+
|
1676
|
+
#if GTEST_HAS_ABSL
|
1677
|
+
const Matcher<const absl::string_view&> m4 = EndsWith("");
|
1678
|
+
EXPECT_TRUE(m4.Matches("Hi"));
|
1679
|
+
EXPECT_TRUE(m4.Matches(""));
|
1680
|
+
EXPECT_TRUE(m4.Matches(absl::string_view()));
|
1681
|
+
EXPECT_TRUE(m4.Matches(absl::string_view("")));
|
1682
|
+
#endif // GTEST_HAS_ABSL
|
1495
1683
|
}
|
1496
1684
|
|
1497
1685
|
TEST(EndsWithTest, CanDescribeSelf) {
|
@@ -1505,34 +1693,61 @@ TEST(MatchesRegexTest, MatchesStringMatchingGivenRegex) {
|
|
1505
1693
|
const Matcher<const char*> m1 = MatchesRegex("a.*z");
|
1506
1694
|
EXPECT_TRUE(m1.Matches("az"));
|
1507
1695
|
EXPECT_TRUE(m1.Matches("abcz"));
|
1508
|
-
EXPECT_FALSE(m1.Matches(
|
1696
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1509
1697
|
|
1510
|
-
const Matcher<const string&> m2 = MatchesRegex(new RE("a.*z"));
|
1698
|
+
const Matcher<const std::string&> m2 = MatchesRegex(new RE("a.*z"));
|
1511
1699
|
EXPECT_TRUE(m2.Matches("azbz"));
|
1512
1700
|
EXPECT_FALSE(m2.Matches("az1"));
|
1513
1701
|
EXPECT_FALSE(m2.Matches("1az"));
|
1702
|
+
|
1703
|
+
#if GTEST_HAS_ABSL
|
1704
|
+
const Matcher<const absl::string_view&> m3 = MatchesRegex("a.*z");
|
1705
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("az")));
|
1706
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("abcz")));
|
1707
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("1az")));
|
1708
|
+
EXPECT_FALSE(m3.Matches(absl::string_view()));
|
1709
|
+
const Matcher<const absl::string_view&> m4 = MatchesRegex("");
|
1710
|
+
EXPECT_TRUE(m4.Matches(absl::string_view("")));
|
1711
|
+
EXPECT_TRUE(m4.Matches(absl::string_view()));
|
1712
|
+
#endif // GTEST_HAS_ABSL
|
1514
1713
|
}
|
1515
1714
|
|
1516
1715
|
TEST(MatchesRegexTest, CanDescribeSelf) {
|
1517
|
-
Matcher<const std::string> m1 = MatchesRegex(string("Hi.*"));
|
1716
|
+
Matcher<const std::string> m1 = MatchesRegex(std::string("Hi.*"));
|
1518
1717
|
EXPECT_EQ("matches regular expression \"Hi.*\"", Describe(m1));
|
1519
1718
|
|
1520
1719
|
Matcher<const char*> m2 = MatchesRegex(new RE("a.*"));
|
1521
1720
|
EXPECT_EQ("matches regular expression \"a.*\"", Describe(m2));
|
1721
|
+
|
1722
|
+
#if GTEST_HAS_ABSL
|
1723
|
+
Matcher<const absl::string_view> m3 = MatchesRegex(new RE("0.*"));
|
1724
|
+
EXPECT_EQ("matches regular expression \"0.*\"", Describe(m3));
|
1725
|
+
#endif // GTEST_HAS_ABSL
|
1522
1726
|
}
|
1523
1727
|
|
1524
1728
|
// Tests ContainsRegex().
|
1525
1729
|
|
1526
1730
|
TEST(ContainsRegexTest, MatchesStringContainingGivenRegex) {
|
1527
|
-
const Matcher<const char*> m1 = ContainsRegex(string("a.*z"));
|
1731
|
+
const Matcher<const char*> m1 = ContainsRegex(std::string("a.*z"));
|
1528
1732
|
EXPECT_TRUE(m1.Matches("az"));
|
1529
1733
|
EXPECT_TRUE(m1.Matches("0abcz1"));
|
1530
|
-
EXPECT_FALSE(m1.Matches(
|
1734
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1531
1735
|
|
1532
|
-
const Matcher<const string&> m2 = ContainsRegex(new RE("a.*z"));
|
1736
|
+
const Matcher<const std::string&> m2 = ContainsRegex(new RE("a.*z"));
|
1533
1737
|
EXPECT_TRUE(m2.Matches("azbz"));
|
1534
1738
|
EXPECT_TRUE(m2.Matches("az1"));
|
1535
1739
|
EXPECT_FALSE(m2.Matches("1a"));
|
1740
|
+
|
1741
|
+
#if GTEST_HAS_ABSL
|
1742
|
+
const Matcher<const absl::string_view&> m3 = ContainsRegex(new RE("a.*z"));
|
1743
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("azbz")));
|
1744
|
+
EXPECT_TRUE(m3.Matches(absl::string_view("az1")));
|
1745
|
+
EXPECT_FALSE(m3.Matches(absl::string_view("1a")));
|
1746
|
+
EXPECT_FALSE(m3.Matches(absl::string_view()));
|
1747
|
+
const Matcher<const absl::string_view&> m4 = ContainsRegex("");
|
1748
|
+
EXPECT_TRUE(m4.Matches(absl::string_view("")));
|
1749
|
+
EXPECT_TRUE(m4.Matches(absl::string_view()));
|
1750
|
+
#endif // GTEST_HAS_ABSL
|
1536
1751
|
}
|
1537
1752
|
|
1538
1753
|
TEST(ContainsRegexTest, CanDescribeSelf) {
|
@@ -1541,6 +1756,11 @@ TEST(ContainsRegexTest, CanDescribeSelf) {
|
|
1541
1756
|
|
1542
1757
|
Matcher<const char*> m2 = ContainsRegex(new RE("a.*"));
|
1543
1758
|
EXPECT_EQ("contains regular expression \"a.*\"", Describe(m2));
|
1759
|
+
|
1760
|
+
#if GTEST_HAS_ABSL
|
1761
|
+
Matcher<const absl::string_view> m3 = ContainsRegex(new RE("0.*"));
|
1762
|
+
EXPECT_EQ("contains regular expression \"0.*\"", Describe(m3));
|
1763
|
+
#endif // GTEST_HAS_ABSL
|
1544
1764
|
}
|
1545
1765
|
|
1546
1766
|
// Tests for wide strings.
|
@@ -1549,7 +1769,7 @@ TEST(StdWideStrEqTest, MatchesEqual) {
|
|
1549
1769
|
Matcher<const wchar_t*> m = StrEq(::std::wstring(L"Hello"));
|
1550
1770
|
EXPECT_TRUE(m.Matches(L"Hello"));
|
1551
1771
|
EXPECT_FALSE(m.Matches(L"hello"));
|
1552
|
-
EXPECT_FALSE(m.Matches(
|
1772
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
1553
1773
|
|
1554
1774
|
Matcher<const ::std::wstring&> m2 = StrEq(L"Hello");
|
1555
1775
|
EXPECT_TRUE(m2.Matches(L"Hello"));
|
@@ -1589,7 +1809,7 @@ TEST(StdWideStrEqTest, CanDescribeSelf) {
|
|
1589
1809
|
TEST(StdWideStrNeTest, MatchesUnequalString) {
|
1590
1810
|
Matcher<const wchar_t*> m = StrNe(L"Hello");
|
1591
1811
|
EXPECT_TRUE(m.Matches(L""));
|
1592
|
-
EXPECT_TRUE(m.Matches(
|
1812
|
+
EXPECT_TRUE(m.Matches(nullptr));
|
1593
1813
|
EXPECT_FALSE(m.Matches(L"Hello"));
|
1594
1814
|
|
1595
1815
|
Matcher< ::std::wstring> m2 = StrNe(::std::wstring(L"Hello"));
|
@@ -1607,7 +1827,7 @@ TEST(StdWideStrCaseEqTest, MatchesEqualStringIgnoringCase) {
|
|
1607
1827
|
EXPECT_TRUE(m.Matches(L"Hello"));
|
1608
1828
|
EXPECT_TRUE(m.Matches(L"hello"));
|
1609
1829
|
EXPECT_FALSE(m.Matches(L"Hi"));
|
1610
|
-
EXPECT_FALSE(m.Matches(
|
1830
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
1611
1831
|
|
1612
1832
|
Matcher<const ::std::wstring&> m2 = StrCaseEq(L"Hello");
|
1613
1833
|
EXPECT_TRUE(m2.Matches(L"hello"));
|
@@ -1647,7 +1867,7 @@ TEST(StdWideStrCaseEqTest, CanDescribeSelf) {
|
|
1647
1867
|
TEST(StdWideStrCaseNeTest, MatchesUnequalStringIgnoringCase) {
|
1648
1868
|
Matcher<const wchar_t*> m = StrCaseNe(L"Hello");
|
1649
1869
|
EXPECT_TRUE(m.Matches(L"Hi"));
|
1650
|
-
EXPECT_TRUE(m.Matches(
|
1870
|
+
EXPECT_TRUE(m.Matches(nullptr));
|
1651
1871
|
EXPECT_FALSE(m.Matches(L"Hello"));
|
1652
1872
|
EXPECT_FALSE(m.Matches(L"hello"));
|
1653
1873
|
|
@@ -1677,12 +1897,12 @@ TEST(StdWideHasSubstrTest, WorksForCStrings) {
|
|
1677
1897
|
const Matcher<wchar_t*> m1 = HasSubstr(L"foo");
|
1678
1898
|
EXPECT_TRUE(m1.Matches(const_cast<wchar_t*>(L"I love food.")));
|
1679
1899
|
EXPECT_FALSE(m1.Matches(const_cast<wchar_t*>(L"tofo")));
|
1680
|
-
EXPECT_FALSE(m1.Matches(
|
1900
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1681
1901
|
|
1682
1902
|
const Matcher<const wchar_t*> m2 = HasSubstr(L"foo");
|
1683
1903
|
EXPECT_TRUE(m2.Matches(L"I love food."));
|
1684
1904
|
EXPECT_FALSE(m2.Matches(L"tofo"));
|
1685
|
-
EXPECT_FALSE(m2.Matches(
|
1905
|
+
EXPECT_FALSE(m2.Matches(nullptr));
|
1686
1906
|
}
|
1687
1907
|
|
1688
1908
|
// Tests that HasSubstr(s) describes itself properly.
|
@@ -1697,7 +1917,7 @@ TEST(StdWideStartsWithTest, MatchesStringWithGivenPrefix) {
|
|
1697
1917
|
const Matcher<const wchar_t*> m1 = StartsWith(::std::wstring(L""));
|
1698
1918
|
EXPECT_TRUE(m1.Matches(L"Hi"));
|
1699
1919
|
EXPECT_TRUE(m1.Matches(L""));
|
1700
|
-
EXPECT_FALSE(m1.Matches(
|
1920
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1701
1921
|
|
1702
1922
|
const Matcher<const ::std::wstring&> m2 = StartsWith(L"Hi");
|
1703
1923
|
EXPECT_TRUE(m2.Matches(L"Hi"));
|
@@ -1718,7 +1938,7 @@ TEST(StdWideEndsWithTest, MatchesStringWithGivenSuffix) {
|
|
1718
1938
|
const Matcher<const wchar_t*> m1 = EndsWith(L"");
|
1719
1939
|
EXPECT_TRUE(m1.Matches(L"Hi"));
|
1720
1940
|
EXPECT_TRUE(m1.Matches(L""));
|
1721
|
-
EXPECT_FALSE(m1.Matches(
|
1941
|
+
EXPECT_FALSE(m1.Matches(nullptr));
|
1722
1942
|
|
1723
1943
|
const Matcher<const ::std::wstring&> m2 = EndsWith(::std::wstring(L"Hi"));
|
1724
1944
|
EXPECT_TRUE(m2.Matches(L"Hi"));
|
@@ -1735,199 +1955,7 @@ TEST(StdWideEndsWithTest, CanDescribeSelf) {
|
|
1735
1955
|
|
1736
1956
|
#endif // GTEST_HAS_STD_WSTRING
|
1737
1957
|
|
1738
|
-
|
1739
|
-
TEST(GlobalWideStrEqTest, MatchesEqual) {
|
1740
|
-
Matcher<const wchar_t*> m = StrEq(::wstring(L"Hello"));
|
1741
|
-
EXPECT_TRUE(m.Matches(L"Hello"));
|
1742
|
-
EXPECT_FALSE(m.Matches(L"hello"));
|
1743
|
-
EXPECT_FALSE(m.Matches(NULL));
|
1744
|
-
|
1745
|
-
Matcher<const ::wstring&> m2 = StrEq(L"Hello");
|
1746
|
-
EXPECT_TRUE(m2.Matches(L"Hello"));
|
1747
|
-
EXPECT_FALSE(m2.Matches(L"Hi"));
|
1748
|
-
|
1749
|
-
Matcher<const ::wstring&> m3 = StrEq(L"\xD3\x576\x8D3\xC74D");
|
1750
|
-
EXPECT_TRUE(m3.Matches(L"\xD3\x576\x8D3\xC74D"));
|
1751
|
-
EXPECT_FALSE(m3.Matches(L"\xD3\x576\x8D3\xC74E"));
|
1752
|
-
|
1753
|
-
::wstring str(L"01204500800");
|
1754
|
-
str[3] = L'\0';
|
1755
|
-
Matcher<const ::wstring&> m4 = StrEq(str);
|
1756
|
-
EXPECT_TRUE(m4.Matches(str));
|
1757
|
-
str[0] = str[6] = str[7] = str[9] = str[10] = L'\0';
|
1758
|
-
Matcher<const ::wstring&> m5 = StrEq(str);
|
1759
|
-
EXPECT_TRUE(m5.Matches(str));
|
1760
|
-
}
|
1761
|
-
|
1762
|
-
TEST(GlobalWideStrEqTest, CanDescribeSelf) {
|
1763
|
-
Matcher< ::wstring> m = StrEq(L"Hi-\'\"?\\\a\b\f\n\r\t\v");
|
1764
|
-
EXPECT_EQ("is equal to L\"Hi-\'\\\"?\\\\\\a\\b\\f\\n\\r\\t\\v\"",
|
1765
|
-
Describe(m));
|
1766
|
-
|
1767
|
-
Matcher< ::wstring> m2 = StrEq(L"\xD3\x576\x8D3\xC74D");
|
1768
|
-
EXPECT_EQ("is equal to L\"\\xD3\\x576\\x8D3\\xC74D\"",
|
1769
|
-
Describe(m2));
|
1770
|
-
|
1771
|
-
::wstring str(L"01204500800");
|
1772
|
-
str[3] = L'\0';
|
1773
|
-
Matcher<const ::wstring&> m4 = StrEq(str);
|
1774
|
-
EXPECT_EQ("is equal to L\"012\\04500800\"", Describe(m4));
|
1775
|
-
str[0] = str[6] = str[7] = str[9] = str[10] = L'\0';
|
1776
|
-
Matcher<const ::wstring&> m5 = StrEq(str);
|
1777
|
-
EXPECT_EQ("is equal to L\"\\012\\045\\0\\08\\0\\0\"", Describe(m5));
|
1778
|
-
}
|
1779
|
-
|
1780
|
-
TEST(GlobalWideStrNeTest, MatchesUnequalString) {
|
1781
|
-
Matcher<const wchar_t*> m = StrNe(L"Hello");
|
1782
|
-
EXPECT_TRUE(m.Matches(L""));
|
1783
|
-
EXPECT_TRUE(m.Matches(NULL));
|
1784
|
-
EXPECT_FALSE(m.Matches(L"Hello"));
|
1785
|
-
|
1786
|
-
Matcher< ::wstring> m2 = StrNe(::wstring(L"Hello"));
|
1787
|
-
EXPECT_TRUE(m2.Matches(L"hello"));
|
1788
|
-
EXPECT_FALSE(m2.Matches(L"Hello"));
|
1789
|
-
}
|
1790
|
-
|
1791
|
-
TEST(GlobalWideStrNeTest, CanDescribeSelf) {
|
1792
|
-
Matcher<const wchar_t*> m = StrNe(L"Hi");
|
1793
|
-
EXPECT_EQ("isn't equal to L\"Hi\"", Describe(m));
|
1794
|
-
}
|
1795
|
-
|
1796
|
-
TEST(GlobalWideStrCaseEqTest, MatchesEqualStringIgnoringCase) {
|
1797
|
-
Matcher<const wchar_t*> m = StrCaseEq(::wstring(L"Hello"));
|
1798
|
-
EXPECT_TRUE(m.Matches(L"Hello"));
|
1799
|
-
EXPECT_TRUE(m.Matches(L"hello"));
|
1800
|
-
EXPECT_FALSE(m.Matches(L"Hi"));
|
1801
|
-
EXPECT_FALSE(m.Matches(NULL));
|
1802
|
-
|
1803
|
-
Matcher<const ::wstring&> m2 = StrCaseEq(L"Hello");
|
1804
|
-
EXPECT_TRUE(m2.Matches(L"hello"));
|
1805
|
-
EXPECT_FALSE(m2.Matches(L"Hi"));
|
1806
|
-
}
|
1807
|
-
|
1808
|
-
TEST(GlobalWideStrCaseEqTest, MatchesEqualStringWith0IgnoringCase) {
|
1809
|
-
::wstring str1(L"oabocdooeoo");
|
1810
|
-
::wstring str2(L"OABOCDOOEOO");
|
1811
|
-
Matcher<const ::wstring&> m0 = StrCaseEq(str1);
|
1812
|
-
EXPECT_FALSE(m0.Matches(str2 + ::wstring(1, L'\0')));
|
1813
|
-
|
1814
|
-
str1[3] = str2[3] = L'\0';
|
1815
|
-
Matcher<const ::wstring&> m1 = StrCaseEq(str1);
|
1816
|
-
EXPECT_TRUE(m1.Matches(str2));
|
1817
|
-
|
1818
|
-
str1[0] = str1[6] = str1[7] = str1[10] = L'\0';
|
1819
|
-
str2[0] = str2[6] = str2[7] = str2[10] = L'\0';
|
1820
|
-
Matcher<const ::wstring&> m2 = StrCaseEq(str1);
|
1821
|
-
str1[9] = str2[9] = L'\0';
|
1822
|
-
EXPECT_FALSE(m2.Matches(str2));
|
1823
|
-
|
1824
|
-
Matcher<const ::wstring&> m3 = StrCaseEq(str1);
|
1825
|
-
EXPECT_TRUE(m3.Matches(str2));
|
1826
|
-
|
1827
|
-
EXPECT_FALSE(m3.Matches(str2 + L"x"));
|
1828
|
-
str2.append(1, L'\0');
|
1829
|
-
EXPECT_FALSE(m3.Matches(str2));
|
1830
|
-
EXPECT_FALSE(m3.Matches(::wstring(str2, 0, 9)));
|
1831
|
-
}
|
1832
|
-
|
1833
|
-
TEST(GlobalWideStrCaseEqTest, CanDescribeSelf) {
|
1834
|
-
Matcher< ::wstring> m = StrCaseEq(L"Hi");
|
1835
|
-
EXPECT_EQ("is equal to (ignoring case) L\"Hi\"", Describe(m));
|
1836
|
-
}
|
1837
|
-
|
1838
|
-
TEST(GlobalWideStrCaseNeTest, MatchesUnequalStringIgnoringCase) {
|
1839
|
-
Matcher<const wchar_t*> m = StrCaseNe(L"Hello");
|
1840
|
-
EXPECT_TRUE(m.Matches(L"Hi"));
|
1841
|
-
EXPECT_TRUE(m.Matches(NULL));
|
1842
|
-
EXPECT_FALSE(m.Matches(L"Hello"));
|
1843
|
-
EXPECT_FALSE(m.Matches(L"hello"));
|
1844
|
-
|
1845
|
-
Matcher< ::wstring> m2 = StrCaseNe(::wstring(L"Hello"));
|
1846
|
-
EXPECT_TRUE(m2.Matches(L""));
|
1847
|
-
EXPECT_FALSE(m2.Matches(L"Hello"));
|
1848
|
-
}
|
1849
|
-
|
1850
|
-
TEST(GlobalWideStrCaseNeTest, CanDescribeSelf) {
|
1851
|
-
Matcher<const wchar_t*> m = StrCaseNe(L"Hi");
|
1852
|
-
EXPECT_EQ("isn't equal to (ignoring case) L\"Hi\"", Describe(m));
|
1853
|
-
}
|
1854
|
-
|
1855
|
-
// Tests that HasSubstr() works for matching wstring-typed values.
|
1856
|
-
TEST(GlobalWideHasSubstrTest, WorksForStringClasses) {
|
1857
|
-
const Matcher< ::wstring> m1 = HasSubstr(L"foo");
|
1858
|
-
EXPECT_TRUE(m1.Matches(::wstring(L"I love food.")));
|
1859
|
-
EXPECT_FALSE(m1.Matches(::wstring(L"tofo")));
|
1860
|
-
|
1861
|
-
const Matcher<const ::wstring&> m2 = HasSubstr(L"foo");
|
1862
|
-
EXPECT_TRUE(m2.Matches(::wstring(L"I love food.")));
|
1863
|
-
EXPECT_FALSE(m2.Matches(::wstring(L"tofo")));
|
1864
|
-
}
|
1865
|
-
|
1866
|
-
// Tests that HasSubstr() works for matching C-wide-string-typed values.
|
1867
|
-
TEST(GlobalWideHasSubstrTest, WorksForCStrings) {
|
1868
|
-
const Matcher<wchar_t*> m1 = HasSubstr(L"foo");
|
1869
|
-
EXPECT_TRUE(m1.Matches(const_cast<wchar_t*>(L"I love food.")));
|
1870
|
-
EXPECT_FALSE(m1.Matches(const_cast<wchar_t*>(L"tofo")));
|
1871
|
-
EXPECT_FALSE(m1.Matches(NULL));
|
1872
|
-
|
1873
|
-
const Matcher<const wchar_t*> m2 = HasSubstr(L"foo");
|
1874
|
-
EXPECT_TRUE(m2.Matches(L"I love food."));
|
1875
|
-
EXPECT_FALSE(m2.Matches(L"tofo"));
|
1876
|
-
EXPECT_FALSE(m2.Matches(NULL));
|
1877
|
-
}
|
1878
|
-
|
1879
|
-
// Tests that HasSubstr(s) describes itself properly.
|
1880
|
-
TEST(GlobalWideHasSubstrTest, CanDescribeSelf) {
|
1881
|
-
Matcher< ::wstring> m = HasSubstr(L"foo\n\"");
|
1882
|
-
EXPECT_EQ("has substring L\"foo\\n\\\"\"", Describe(m));
|
1883
|
-
}
|
1884
|
-
|
1885
|
-
// Tests StartsWith(s).
|
1886
|
-
|
1887
|
-
TEST(GlobalWideStartsWithTest, MatchesStringWithGivenPrefix) {
|
1888
|
-
const Matcher<const wchar_t*> m1 = StartsWith(::wstring(L""));
|
1889
|
-
EXPECT_TRUE(m1.Matches(L"Hi"));
|
1890
|
-
EXPECT_TRUE(m1.Matches(L""));
|
1891
|
-
EXPECT_FALSE(m1.Matches(NULL));
|
1892
|
-
|
1893
|
-
const Matcher<const ::wstring&> m2 = StartsWith(L"Hi");
|
1894
|
-
EXPECT_TRUE(m2.Matches(L"Hi"));
|
1895
|
-
EXPECT_TRUE(m2.Matches(L"Hi Hi!"));
|
1896
|
-
EXPECT_TRUE(m2.Matches(L"High"));
|
1897
|
-
EXPECT_FALSE(m2.Matches(L"H"));
|
1898
|
-
EXPECT_FALSE(m2.Matches(L" Hi"));
|
1899
|
-
}
|
1900
|
-
|
1901
|
-
TEST(GlobalWideStartsWithTest, CanDescribeSelf) {
|
1902
|
-
Matcher<const ::wstring> m = StartsWith(L"Hi");
|
1903
|
-
EXPECT_EQ("starts with L\"Hi\"", Describe(m));
|
1904
|
-
}
|
1905
|
-
|
1906
|
-
// Tests EndsWith(s).
|
1907
|
-
|
1908
|
-
TEST(GlobalWideEndsWithTest, MatchesStringWithGivenSuffix) {
|
1909
|
-
const Matcher<const wchar_t*> m1 = EndsWith(L"");
|
1910
|
-
EXPECT_TRUE(m1.Matches(L"Hi"));
|
1911
|
-
EXPECT_TRUE(m1.Matches(L""));
|
1912
|
-
EXPECT_FALSE(m1.Matches(NULL));
|
1913
|
-
|
1914
|
-
const Matcher<const ::wstring&> m2 = EndsWith(::wstring(L"Hi"));
|
1915
|
-
EXPECT_TRUE(m2.Matches(L"Hi"));
|
1916
|
-
EXPECT_TRUE(m2.Matches(L"Wow Hi Hi"));
|
1917
|
-
EXPECT_TRUE(m2.Matches(L"Super Hi"));
|
1918
|
-
EXPECT_FALSE(m2.Matches(L"i"));
|
1919
|
-
EXPECT_FALSE(m2.Matches(L"Hi "));
|
1920
|
-
}
|
1921
|
-
|
1922
|
-
TEST(GlobalWideEndsWithTest, CanDescribeSelf) {
|
1923
|
-
Matcher<const ::wstring> m = EndsWith(L"Hi");
|
1924
|
-
EXPECT_EQ("ends with L\"Hi\"", Describe(m));
|
1925
|
-
}
|
1926
|
-
|
1927
|
-
#endif // GTEST_HAS_GLOBAL_WSTRING
|
1928
|
-
|
1929
|
-
|
1930
|
-
typedef ::testing::tuple<long, int> Tuple2; // NOLINT
|
1958
|
+
typedef ::std::tuple<long, int> Tuple2; // NOLINT
|
1931
1959
|
|
1932
1960
|
// Tests that Eq() matches a 2-tuple where the first field == the
|
1933
1961
|
// second field.
|
@@ -2018,6 +2046,157 @@ TEST(Ne2Test, CanDescribeSelf) {
|
|
2018
2046
|
EXPECT_EQ("are an unequal pair", Describe(m));
|
2019
2047
|
}
|
2020
2048
|
|
2049
|
+
TEST(PairMatchBaseTest, WorksWithMoveOnly) {
|
2050
|
+
using Pointers = std::tuple<std::unique_ptr<int>, std::unique_ptr<int>>;
|
2051
|
+
Matcher<Pointers> matcher = Eq();
|
2052
|
+
Pointers pointers;
|
2053
|
+
// Tested values don't matter; the point is that matcher does not copy the
|
2054
|
+
// matched values.
|
2055
|
+
EXPECT_TRUE(matcher.Matches(pointers));
|
2056
|
+
}
|
2057
|
+
|
2058
|
+
// Tests that FloatEq() matches a 2-tuple where
|
2059
|
+
// FloatEq(first field) matches the second field.
|
2060
|
+
TEST(FloatEq2Test, MatchesEqualArguments) {
|
2061
|
+
typedef ::std::tuple<float, float> Tpl;
|
2062
|
+
Matcher<const Tpl&> m = FloatEq();
|
2063
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2064
|
+
EXPECT_TRUE(m.Matches(Tpl(0.3f, 0.1f + 0.1f + 0.1f)));
|
2065
|
+
EXPECT_FALSE(m.Matches(Tpl(1.1f, 1.0f)));
|
2066
|
+
}
|
2067
|
+
|
2068
|
+
// Tests that FloatEq() describes itself properly.
|
2069
|
+
TEST(FloatEq2Test, CanDescribeSelf) {
|
2070
|
+
Matcher<const ::std::tuple<float, float>&> m = FloatEq();
|
2071
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2072
|
+
}
|
2073
|
+
|
2074
|
+
// Tests that NanSensitiveFloatEq() matches a 2-tuple where
|
2075
|
+
// NanSensitiveFloatEq(first field) matches the second field.
|
2076
|
+
TEST(NanSensitiveFloatEqTest, MatchesEqualArgumentsWithNaN) {
|
2077
|
+
typedef ::std::tuple<float, float> Tpl;
|
2078
|
+
Matcher<const Tpl&> m = NanSensitiveFloatEq();
|
2079
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2080
|
+
EXPECT_TRUE(m.Matches(Tpl(std::numeric_limits<float>::quiet_NaN(),
|
2081
|
+
std::numeric_limits<float>::quiet_NaN())));
|
2082
|
+
EXPECT_FALSE(m.Matches(Tpl(1.1f, 1.0f)));
|
2083
|
+
EXPECT_FALSE(m.Matches(Tpl(1.0f, std::numeric_limits<float>::quiet_NaN())));
|
2084
|
+
EXPECT_FALSE(m.Matches(Tpl(std::numeric_limits<float>::quiet_NaN(), 1.0f)));
|
2085
|
+
}
|
2086
|
+
|
2087
|
+
// Tests that NanSensitiveFloatEq() describes itself properly.
|
2088
|
+
TEST(NanSensitiveFloatEqTest, CanDescribeSelfWithNaNs) {
|
2089
|
+
Matcher<const ::std::tuple<float, float>&> m = NanSensitiveFloatEq();
|
2090
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2091
|
+
}
|
2092
|
+
|
2093
|
+
// Tests that DoubleEq() matches a 2-tuple where
|
2094
|
+
// DoubleEq(first field) matches the second field.
|
2095
|
+
TEST(DoubleEq2Test, MatchesEqualArguments) {
|
2096
|
+
typedef ::std::tuple<double, double> Tpl;
|
2097
|
+
Matcher<const Tpl&> m = DoubleEq();
|
2098
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0, 1.0)));
|
2099
|
+
EXPECT_TRUE(m.Matches(Tpl(0.3, 0.1 + 0.1 + 0.1)));
|
2100
|
+
EXPECT_FALSE(m.Matches(Tpl(1.1, 1.0)));
|
2101
|
+
}
|
2102
|
+
|
2103
|
+
// Tests that DoubleEq() describes itself properly.
|
2104
|
+
TEST(DoubleEq2Test, CanDescribeSelf) {
|
2105
|
+
Matcher<const ::std::tuple<double, double>&> m = DoubleEq();
|
2106
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2107
|
+
}
|
2108
|
+
|
2109
|
+
// Tests that NanSensitiveDoubleEq() matches a 2-tuple where
|
2110
|
+
// NanSensitiveDoubleEq(first field) matches the second field.
|
2111
|
+
TEST(NanSensitiveDoubleEqTest, MatchesEqualArgumentsWithNaN) {
|
2112
|
+
typedef ::std::tuple<double, double> Tpl;
|
2113
|
+
Matcher<const Tpl&> m = NanSensitiveDoubleEq();
|
2114
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2115
|
+
EXPECT_TRUE(m.Matches(Tpl(std::numeric_limits<double>::quiet_NaN(),
|
2116
|
+
std::numeric_limits<double>::quiet_NaN())));
|
2117
|
+
EXPECT_FALSE(m.Matches(Tpl(1.1f, 1.0f)));
|
2118
|
+
EXPECT_FALSE(m.Matches(Tpl(1.0f, std::numeric_limits<double>::quiet_NaN())));
|
2119
|
+
EXPECT_FALSE(m.Matches(Tpl(std::numeric_limits<double>::quiet_NaN(), 1.0f)));
|
2120
|
+
}
|
2121
|
+
|
2122
|
+
// Tests that DoubleEq() describes itself properly.
|
2123
|
+
TEST(NanSensitiveDoubleEqTest, CanDescribeSelfWithNaNs) {
|
2124
|
+
Matcher<const ::std::tuple<double, double>&> m = NanSensitiveDoubleEq();
|
2125
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2126
|
+
}
|
2127
|
+
|
2128
|
+
// Tests that FloatEq() matches a 2-tuple where
|
2129
|
+
// FloatNear(first field, max_abs_error) matches the second field.
|
2130
|
+
TEST(FloatNear2Test, MatchesEqualArguments) {
|
2131
|
+
typedef ::std::tuple<float, float> Tpl;
|
2132
|
+
Matcher<const Tpl&> m = FloatNear(0.5f);
|
2133
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2134
|
+
EXPECT_TRUE(m.Matches(Tpl(1.3f, 1.0f)));
|
2135
|
+
EXPECT_FALSE(m.Matches(Tpl(1.8f, 1.0f)));
|
2136
|
+
}
|
2137
|
+
|
2138
|
+
// Tests that FloatNear() describes itself properly.
|
2139
|
+
TEST(FloatNear2Test, CanDescribeSelf) {
|
2140
|
+
Matcher<const ::std::tuple<float, float>&> m = FloatNear(0.5f);
|
2141
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2142
|
+
}
|
2143
|
+
|
2144
|
+
// Tests that NanSensitiveFloatNear() matches a 2-tuple where
|
2145
|
+
// NanSensitiveFloatNear(first field) matches the second field.
|
2146
|
+
TEST(NanSensitiveFloatNearTest, MatchesNearbyArgumentsWithNaN) {
|
2147
|
+
typedef ::std::tuple<float, float> Tpl;
|
2148
|
+
Matcher<const Tpl&> m = NanSensitiveFloatNear(0.5f);
|
2149
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2150
|
+
EXPECT_TRUE(m.Matches(Tpl(1.1f, 1.0f)));
|
2151
|
+
EXPECT_TRUE(m.Matches(Tpl(std::numeric_limits<float>::quiet_NaN(),
|
2152
|
+
std::numeric_limits<float>::quiet_NaN())));
|
2153
|
+
EXPECT_FALSE(m.Matches(Tpl(1.6f, 1.0f)));
|
2154
|
+
EXPECT_FALSE(m.Matches(Tpl(1.0f, std::numeric_limits<float>::quiet_NaN())));
|
2155
|
+
EXPECT_FALSE(m.Matches(Tpl(std::numeric_limits<float>::quiet_NaN(), 1.0f)));
|
2156
|
+
}
|
2157
|
+
|
2158
|
+
// Tests that NanSensitiveFloatNear() describes itself properly.
|
2159
|
+
TEST(NanSensitiveFloatNearTest, CanDescribeSelfWithNaNs) {
|
2160
|
+
Matcher<const ::std::tuple<float, float>&> m = NanSensitiveFloatNear(0.5f);
|
2161
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2162
|
+
}
|
2163
|
+
|
2164
|
+
// Tests that FloatEq() matches a 2-tuple where
|
2165
|
+
// DoubleNear(first field, max_abs_error) matches the second field.
|
2166
|
+
TEST(DoubleNear2Test, MatchesEqualArguments) {
|
2167
|
+
typedef ::std::tuple<double, double> Tpl;
|
2168
|
+
Matcher<const Tpl&> m = DoubleNear(0.5);
|
2169
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0, 1.0)));
|
2170
|
+
EXPECT_TRUE(m.Matches(Tpl(1.3, 1.0)));
|
2171
|
+
EXPECT_FALSE(m.Matches(Tpl(1.8, 1.0)));
|
2172
|
+
}
|
2173
|
+
|
2174
|
+
// Tests that DoubleNear() describes itself properly.
|
2175
|
+
TEST(DoubleNear2Test, CanDescribeSelf) {
|
2176
|
+
Matcher<const ::std::tuple<double, double>&> m = DoubleNear(0.5);
|
2177
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2178
|
+
}
|
2179
|
+
|
2180
|
+
// Tests that NanSensitiveDoubleNear() matches a 2-tuple where
|
2181
|
+
// NanSensitiveDoubleNear(first field) matches the second field.
|
2182
|
+
TEST(NanSensitiveDoubleNearTest, MatchesNearbyArgumentsWithNaN) {
|
2183
|
+
typedef ::std::tuple<double, double> Tpl;
|
2184
|
+
Matcher<const Tpl&> m = NanSensitiveDoubleNear(0.5f);
|
2185
|
+
EXPECT_TRUE(m.Matches(Tpl(1.0f, 1.0f)));
|
2186
|
+
EXPECT_TRUE(m.Matches(Tpl(1.1f, 1.0f)));
|
2187
|
+
EXPECT_TRUE(m.Matches(Tpl(std::numeric_limits<double>::quiet_NaN(),
|
2188
|
+
std::numeric_limits<double>::quiet_NaN())));
|
2189
|
+
EXPECT_FALSE(m.Matches(Tpl(1.6f, 1.0f)));
|
2190
|
+
EXPECT_FALSE(m.Matches(Tpl(1.0f, std::numeric_limits<double>::quiet_NaN())));
|
2191
|
+
EXPECT_FALSE(m.Matches(Tpl(std::numeric_limits<double>::quiet_NaN(), 1.0f)));
|
2192
|
+
}
|
2193
|
+
|
2194
|
+
// Tests that NanSensitiveDoubleNear() describes itself properly.
|
2195
|
+
TEST(NanSensitiveDoubleNearTest, CanDescribeSelfWithNaNs) {
|
2196
|
+
Matcher<const ::std::tuple<double, double>&> m = NanSensitiveDoubleNear(0.5f);
|
2197
|
+
EXPECT_EQ("are an almost-equal pair", Describe(m));
|
2198
|
+
}
|
2199
|
+
|
2021
2200
|
// Tests that Not(m) matches any value that doesn't match m.
|
2022
2201
|
TEST(NotTest, NegatesMatcher) {
|
2023
2202
|
Matcher<int> m;
|
@@ -2096,29 +2275,16 @@ TEST(AllOfTest, MatchesWhenAllMatch) {
|
|
2096
2275
|
Ne(8), Ne(9)));
|
2097
2276
|
AllOfMatches(10, AllOf(Ne(1), Ne(2), Ne(3), Ne(4), Ne(5), Ne(6), Ne(7), Ne(8),
|
2098
2277
|
Ne(9), Ne(10)));
|
2278
|
+
AllOfMatches(
|
2279
|
+
50, AllOf(Ne(1), Ne(2), Ne(3), Ne(4), Ne(5), Ne(6), Ne(7), Ne(8), Ne(9),
|
2280
|
+
Ne(10), Ne(11), Ne(12), Ne(13), Ne(14), Ne(15), Ne(16), Ne(17),
|
2281
|
+
Ne(18), Ne(19), Ne(20), Ne(21), Ne(22), Ne(23), Ne(24), Ne(25),
|
2282
|
+
Ne(26), Ne(27), Ne(28), Ne(29), Ne(30), Ne(31), Ne(32), Ne(33),
|
2283
|
+
Ne(34), Ne(35), Ne(36), Ne(37), Ne(38), Ne(39), Ne(40), Ne(41),
|
2284
|
+
Ne(42), Ne(43), Ne(44), Ne(45), Ne(46), Ne(47), Ne(48), Ne(49),
|
2285
|
+
Ne(50)));
|
2099
2286
|
}
|
2100
2287
|
|
2101
|
-
#if GTEST_LANG_CXX11
|
2102
|
-
// Tests the variadic version of the AllOfMatcher.
|
2103
|
-
TEST(AllOfTest, VariadicMatchesWhenAllMatch) {
|
2104
|
-
// Make sure AllOf is defined in the right namespace and does not depend on
|
2105
|
-
// ADL.
|
2106
|
-
::testing::AllOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11);
|
2107
|
-
Matcher<int> m = AllOf(Ne(1), Ne(2), Ne(3), Ne(4), Ne(5), Ne(6), Ne(7), Ne(8),
|
2108
|
-
Ne(9), Ne(10), Ne(11));
|
2109
|
-
EXPECT_THAT(Describe(m), EndsWith("and (isn't equal to 11))))))))))"));
|
2110
|
-
AllOfMatches(11, m);
|
2111
|
-
AllOfMatches(50, AllOf(Ne(1), Ne(2), Ne(3), Ne(4), Ne(5), Ne(6), Ne(7), Ne(8),
|
2112
|
-
Ne(9), Ne(10), Ne(11), Ne(12), Ne(13), Ne(14), Ne(15),
|
2113
|
-
Ne(16), Ne(17), Ne(18), Ne(19), Ne(20), Ne(21), Ne(22),
|
2114
|
-
Ne(23), Ne(24), Ne(25), Ne(26), Ne(27), Ne(28), Ne(29),
|
2115
|
-
Ne(30), Ne(31), Ne(32), Ne(33), Ne(34), Ne(35), Ne(36),
|
2116
|
-
Ne(37), Ne(38), Ne(39), Ne(40), Ne(41), Ne(42), Ne(43),
|
2117
|
-
Ne(44), Ne(45), Ne(46), Ne(47), Ne(48), Ne(49),
|
2118
|
-
Ne(50)));
|
2119
|
-
}
|
2120
|
-
|
2121
|
-
#endif // GTEST_LANG_CXX11
|
2122
2288
|
|
2123
2289
|
// Tests that AllOf(m1, ..., mn) describes itself properly.
|
2124
2290
|
TEST(AllOfTest, CanDescribeSelf) {
|
@@ -2127,59 +2293,51 @@ TEST(AllOfTest, CanDescribeSelf) {
|
|
2127
2293
|
EXPECT_EQ("(is <= 2) and (is >= 1)", Describe(m));
|
2128
2294
|
|
2129
2295
|
m = AllOf(Gt(0), Ne(1), Ne(2));
|
2130
|
-
|
2131
|
-
|
2132
|
-
|
2133
|
-
Describe(m));
|
2134
|
-
|
2296
|
+
std::string expected_descr1 =
|
2297
|
+
"(is > 0) and (isn't equal to 1) and (isn't equal to 2)";
|
2298
|
+
EXPECT_EQ(expected_descr1, Describe(m));
|
2135
2299
|
|
2136
2300
|
m = AllOf(Gt(0), Ne(1), Ne(2), Ne(3));
|
2137
|
-
|
2138
|
-
|
2139
|
-
|
2140
|
-
|
2141
|
-
Describe(m));
|
2142
|
-
|
2301
|
+
std::string expected_descr2 =
|
2302
|
+
"(is > 0) and (isn't equal to 1) and (isn't equal to 2) and (isn't equal "
|
2303
|
+
"to 3)";
|
2304
|
+
EXPECT_EQ(expected_descr2, Describe(m));
|
2143
2305
|
|
2144
2306
|
m = AllOf(Ge(0), Lt(10), Ne(3), Ne(5), Ne(7));
|
2145
|
-
|
2146
|
-
|
2147
|
-
|
2148
|
-
|
2149
|
-
"(isn't equal to 7)))",
|
2150
|
-
Describe(m));
|
2307
|
+
std::string expected_descr3 =
|
2308
|
+
"(is >= 0) and (is < 10) and (isn't equal to 3) and (isn't equal to 5) "
|
2309
|
+
"and (isn't equal to 7)";
|
2310
|
+
EXPECT_EQ(expected_descr3, Describe(m));
|
2151
2311
|
}
|
2152
2312
|
|
2153
2313
|
// Tests that AllOf(m1, ..., mn) describes its negation properly.
|
2154
2314
|
TEST(AllOfTest, CanDescribeNegation) {
|
2155
2315
|
Matcher<int> m;
|
2156
2316
|
m = AllOf(Le(2), Ge(1));
|
2157
|
-
|
2158
|
-
|
2159
|
-
DescribeNegation(m));
|
2317
|
+
std::string expected_descr4 = "(isn't <= 2) or (isn't >= 1)";
|
2318
|
+
EXPECT_EQ(expected_descr4, DescribeNegation(m));
|
2160
2319
|
|
2161
2320
|
m = AllOf(Gt(0), Ne(1), Ne(2));
|
2162
|
-
|
2163
|
-
|
2164
|
-
|
2165
|
-
DescribeNegation(m));
|
2166
|
-
|
2321
|
+
std::string expected_descr5 =
|
2322
|
+
"(isn't > 0) or (is equal to 1) or (is equal to 2)";
|
2323
|
+
EXPECT_EQ(expected_descr5, DescribeNegation(m));
|
2167
2324
|
|
2168
2325
|
m = AllOf(Gt(0), Ne(1), Ne(2), Ne(3));
|
2169
|
-
|
2170
|
-
|
2171
|
-
|
2172
|
-
"(is equal to 3))",
|
2173
|
-
DescribeNegation(m));
|
2174
|
-
|
2326
|
+
std::string expected_descr6 =
|
2327
|
+
"(isn't > 0) or (is equal to 1) or (is equal to 2) or (is equal to 3)";
|
2328
|
+
EXPECT_EQ(expected_descr6, DescribeNegation(m));
|
2175
2329
|
|
2176
2330
|
m = AllOf(Ge(0), Lt(10), Ne(3), Ne(5), Ne(7));
|
2177
|
-
|
2178
|
-
|
2179
|
-
|
2180
|
-
|
2181
|
-
|
2182
|
-
|
2331
|
+
std::string expected_desr7 =
|
2332
|
+
"(isn't >= 0) or (isn't < 10) or (is equal to 3) or (is equal to 5) or "
|
2333
|
+
"(is equal to 7)";
|
2334
|
+
EXPECT_EQ(expected_desr7, DescribeNegation(m));
|
2335
|
+
|
2336
|
+
m = AllOf(Ne(1), Ne(2), Ne(3), Ne(4), Ne(5), Ne(6), Ne(7), Ne(8), Ne(9),
|
2337
|
+
Ne(10), Ne(11));
|
2338
|
+
AllOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11);
|
2339
|
+
EXPECT_THAT(Describe(m), EndsWith("and (isn't equal to 11)"));
|
2340
|
+
AllOfMatches(11, m);
|
2183
2341
|
}
|
2184
2342
|
|
2185
2343
|
// Tests that monomorphic matchers are safely cast by the AllOf matcher.
|
@@ -2241,7 +2399,7 @@ TEST(AllOfTest, ExplainsResult) {
|
|
2241
2399
|
}
|
2242
2400
|
|
2243
2401
|
// Helper to allow easy testing of AnyOf matchers with num parameters.
|
2244
|
-
void AnyOfMatches(int num, const Matcher<int>& m) {
|
2402
|
+
static void AnyOfMatches(int num, const Matcher<int>& m) {
|
2245
2403
|
SCOPED_TRACE(Describe(m));
|
2246
2404
|
EXPECT_FALSE(m.Matches(0));
|
2247
2405
|
for (int i = 1; i <= num; ++i) {
|
@@ -2250,10 +2408,20 @@ void AnyOfMatches(int num, const Matcher<int>& m) {
|
|
2250
2408
|
EXPECT_FALSE(m.Matches(num + 1));
|
2251
2409
|
}
|
2252
2410
|
|
2253
|
-
|
2254
|
-
|
2255
|
-
|
2256
|
-
|
2411
|
+
static void AnyOfStringMatches(int num, const Matcher<std::string>& m) {
|
2412
|
+
SCOPED_TRACE(Describe(m));
|
2413
|
+
EXPECT_FALSE(m.Matches(std::to_string(0)));
|
2414
|
+
|
2415
|
+
for (int i = 1; i <= num; ++i) {
|
2416
|
+
EXPECT_TRUE(m.Matches(std::to_string(i)));
|
2417
|
+
}
|
2418
|
+
EXPECT_FALSE(m.Matches(std::to_string(num + 1)));
|
2419
|
+
}
|
2420
|
+
|
2421
|
+
// Tests that AnyOf(m1, ..., mn) matches any value that matches at
|
2422
|
+
// least one of the given matchers.
|
2423
|
+
TEST(AnyOfTest, MatchesWhenAnyMatches) {
|
2424
|
+
Matcher<int> m;
|
2257
2425
|
m = AnyOf(Le(1), Ge(3));
|
2258
2426
|
EXPECT_TRUE(m.Matches(1));
|
2259
2427
|
EXPECT_TRUE(m.Matches(4));
|
@@ -2293,50 +2461,75 @@ TEST(AnyOfTest, MatchesWhenAnyMatches) {
|
|
2293
2461
|
AnyOfMatches(10, AnyOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
|
2294
2462
|
}
|
2295
2463
|
|
2296
|
-
#if GTEST_LANG_CXX11
|
2297
2464
|
// Tests the variadic version of the AnyOfMatcher.
|
2298
2465
|
TEST(AnyOfTest, VariadicMatchesWhenAnyMatches) {
|
2299
2466
|
// Also make sure AnyOf is defined in the right namespace and does not depend
|
2300
2467
|
// on ADL.
|
2301
2468
|
Matcher<int> m = ::testing::AnyOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11);
|
2302
2469
|
|
2303
|
-
EXPECT_THAT(Describe(m), EndsWith("or (is equal to 11)
|
2470
|
+
EXPECT_THAT(Describe(m), EndsWith("or (is equal to 11)"));
|
2304
2471
|
AnyOfMatches(11, m);
|
2305
2472
|
AnyOfMatches(50, AnyOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
|
2306
2473
|
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
2307
2474
|
21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
|
2308
2475
|
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
|
2309
2476
|
41, 42, 43, 44, 45, 46, 47, 48, 49, 50));
|
2477
|
+
AnyOfStringMatches(
|
2478
|
+
50, AnyOf("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
|
2479
|
+
"13", "14", "15", "16", "17", "18", "19", "20", "21", "22",
|
2480
|
+
"23", "24", "25", "26", "27", "28", "29", "30", "31", "32",
|
2481
|
+
"33", "34", "35", "36", "37", "38", "39", "40", "41", "42",
|
2482
|
+
"43", "44", "45", "46", "47", "48", "49", "50"));
|
2483
|
+
}
|
2484
|
+
|
2485
|
+
// Tests the variadic version of the ElementsAreMatcher
|
2486
|
+
TEST(ElementsAreTest, HugeMatcher) {
|
2487
|
+
vector<int> test_vector{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
|
2488
|
+
|
2489
|
+
EXPECT_THAT(test_vector,
|
2490
|
+
ElementsAre(Eq(1), Eq(2), Lt(13), Eq(4), Eq(5), Eq(6), Eq(7),
|
2491
|
+
Eq(8), Eq(9), Eq(10), Gt(1), Eq(12)));
|
2492
|
+
}
|
2493
|
+
|
2494
|
+
// Tests the variadic version of the UnorderedElementsAreMatcher
|
2495
|
+
TEST(ElementsAreTest, HugeMatcherStr) {
|
2496
|
+
vector<std::string> test_vector{
|
2497
|
+
"literal_string", "", "", "", "", "", "", "", "", "", "", ""};
|
2498
|
+
|
2499
|
+
EXPECT_THAT(test_vector, UnorderedElementsAre("literal_string", _, _, _, _, _,
|
2500
|
+
_, _, _, _, _, _));
|
2501
|
+
}
|
2502
|
+
|
2503
|
+
// Tests the variadic version of the UnorderedElementsAreMatcher
|
2504
|
+
TEST(ElementsAreTest, HugeMatcherUnordered) {
|
2505
|
+
vector<int> test_vector{2, 1, 8, 5, 4, 6, 7, 3, 9, 12, 11, 10};
|
2506
|
+
|
2507
|
+
EXPECT_THAT(test_vector, UnorderedElementsAre(
|
2508
|
+
Eq(2), Eq(1), Gt(7), Eq(5), Eq(4), Eq(6), Eq(7),
|
2509
|
+
Eq(3), Eq(9), Eq(12), Eq(11), Ne(122)));
|
2310
2510
|
}
|
2311
2511
|
|
2312
|
-
#endif // GTEST_LANG_CXX11
|
2313
2512
|
|
2314
2513
|
// Tests that AnyOf(m1, ..., mn) describes itself properly.
|
2315
2514
|
TEST(AnyOfTest, CanDescribeSelf) {
|
2316
2515
|
Matcher<int> m;
|
2317
2516
|
m = AnyOf(Le(1), Ge(3));
|
2517
|
+
|
2318
2518
|
EXPECT_EQ("(is <= 1) or (is >= 3)",
|
2319
2519
|
Describe(m));
|
2320
2520
|
|
2321
2521
|
m = AnyOf(Lt(0), Eq(1), Eq(2));
|
2322
|
-
EXPECT_EQ("(is < 0) or "
|
2323
|
-
"((is equal to 1) or (is equal to 2))",
|
2324
|
-
Describe(m));
|
2522
|
+
EXPECT_EQ("(is < 0) or (is equal to 1) or (is equal to 2)", Describe(m));
|
2325
2523
|
|
2326
2524
|
m = AnyOf(Lt(0), Eq(1), Eq(2), Eq(3));
|
2327
|
-
EXPECT_EQ("(
|
2328
|
-
"(is equal to 1)) or "
|
2329
|
-
"((is equal to 2) or "
|
2330
|
-
"(is equal to 3))",
|
2525
|
+
EXPECT_EQ("(is < 0) or (is equal to 1) or (is equal to 2) or (is equal to 3)",
|
2331
2526
|
Describe(m));
|
2332
2527
|
|
2333
2528
|
m = AnyOf(Le(0), Gt(10), 3, 5, 7);
|
2334
|
-
EXPECT_EQ(
|
2335
|
-
|
2336
|
-
|
2337
|
-
|
2338
|
-
"(is equal to 7)))",
|
2339
|
-
Describe(m));
|
2529
|
+
EXPECT_EQ(
|
2530
|
+
"(is <= 0) or (is > 10) or (is equal to 3) or (is equal to 5) or (is "
|
2531
|
+
"equal to 7)",
|
2532
|
+
Describe(m));
|
2340
2533
|
}
|
2341
2534
|
|
2342
2535
|
// Tests that AnyOf(m1, ..., mn) describes its negation properly.
|
@@ -2347,24 +2540,20 @@ TEST(AnyOfTest, CanDescribeNegation) {
|
|
2347
2540
|
DescribeNegation(m));
|
2348
2541
|
|
2349
2542
|
m = AnyOf(Lt(0), Eq(1), Eq(2));
|
2350
|
-
EXPECT_EQ("(isn't < 0) and "
|
2351
|
-
"((isn't equal to 1) and (isn't equal to 2))",
|
2543
|
+
EXPECT_EQ("(isn't < 0) and (isn't equal to 1) and (isn't equal to 2)",
|
2352
2544
|
DescribeNegation(m));
|
2353
2545
|
|
2354
2546
|
m = AnyOf(Lt(0), Eq(1), Eq(2), Eq(3));
|
2355
|
-
EXPECT_EQ(
|
2356
|
-
|
2357
|
-
|
2358
|
-
|
2359
|
-
DescribeNegation(m));
|
2547
|
+
EXPECT_EQ(
|
2548
|
+
"(isn't < 0) and (isn't equal to 1) and (isn't equal to 2) and (isn't "
|
2549
|
+
"equal to 3)",
|
2550
|
+
DescribeNegation(m));
|
2360
2551
|
|
2361
2552
|
m = AnyOf(Le(0), Gt(10), 3, 5, 7);
|
2362
|
-
EXPECT_EQ(
|
2363
|
-
|
2364
|
-
|
2365
|
-
|
2366
|
-
"(isn't equal to 7)))",
|
2367
|
-
DescribeNegation(m));
|
2553
|
+
EXPECT_EQ(
|
2554
|
+
"(isn't <= 0) and (isn't > 10) and (isn't equal to 3) and (isn't equal "
|
2555
|
+
"to 5) and (isn't equal to 7)",
|
2556
|
+
DescribeNegation(m));
|
2368
2557
|
}
|
2369
2558
|
|
2370
2559
|
// Tests that monomorphic matchers are safely cast by the AnyOf matcher.
|
@@ -2583,9 +2772,25 @@ TEST(ExplainMatchResultTest, WorksInsideMATCHER) {
|
|
2583
2772
|
EXPECT_THAT(0, Really(Eq(0)));
|
2584
2773
|
}
|
2585
2774
|
|
2775
|
+
TEST(DescribeMatcherTest, WorksWithValue) {
|
2776
|
+
EXPECT_EQ("is equal to 42", DescribeMatcher<int>(42));
|
2777
|
+
EXPECT_EQ("isn't equal to 42", DescribeMatcher<int>(42, true));
|
2778
|
+
}
|
2779
|
+
|
2780
|
+
TEST(DescribeMatcherTest, WorksWithMonomorphicMatcher) {
|
2781
|
+
const Matcher<int> monomorphic = Le(0);
|
2782
|
+
EXPECT_EQ("is <= 0", DescribeMatcher<int>(monomorphic));
|
2783
|
+
EXPECT_EQ("isn't <= 0", DescribeMatcher<int>(monomorphic, true));
|
2784
|
+
}
|
2785
|
+
|
2786
|
+
TEST(DescribeMatcherTest, WorksWithPolymorphicMatcher) {
|
2787
|
+
EXPECT_EQ("is even", DescribeMatcher<int>(PolymorphicIsEven()));
|
2788
|
+
EXPECT_EQ("is odd", DescribeMatcher<int>(PolymorphicIsEven(), true));
|
2789
|
+
}
|
2790
|
+
|
2586
2791
|
TEST(AllArgsTest, WorksForTuple) {
|
2587
|
-
EXPECT_THAT(make_tuple(1, 2L), AllArgs(Lt()));
|
2588
|
-
EXPECT_THAT(make_tuple(2L, 1), Not(AllArgs(Lt())));
|
2792
|
+
EXPECT_THAT(std::make_tuple(1, 2L), AllArgs(Lt()));
|
2793
|
+
EXPECT_THAT(std::make_tuple(2L, 1), Not(AllArgs(Lt())));
|
2589
2794
|
}
|
2590
2795
|
|
2591
2796
|
TEST(AllArgsTest, WorksForNonTuple) {
|
@@ -2617,6 +2822,44 @@ TEST(AllArgsTest, WorksInWithClause) {
|
|
2617
2822
|
EXPECT_EQ(2, helper.Helper('a', 1));
|
2618
2823
|
}
|
2619
2824
|
|
2825
|
+
class OptionalMatchersHelper {
|
2826
|
+
public:
|
2827
|
+
OptionalMatchersHelper() {}
|
2828
|
+
|
2829
|
+
MOCK_METHOD0(NoArgs, int());
|
2830
|
+
|
2831
|
+
MOCK_METHOD1(OneArg, int(int y));
|
2832
|
+
|
2833
|
+
MOCK_METHOD2(TwoArgs, int(char x, int y));
|
2834
|
+
|
2835
|
+
MOCK_METHOD1(Overloaded, int(char x));
|
2836
|
+
MOCK_METHOD2(Overloaded, int(char x, int y));
|
2837
|
+
|
2838
|
+
private:
|
2839
|
+
GTEST_DISALLOW_COPY_AND_ASSIGN_(OptionalMatchersHelper);
|
2840
|
+
};
|
2841
|
+
|
2842
|
+
TEST(AllArgsTest, WorksWithoutMatchers) {
|
2843
|
+
OptionalMatchersHelper helper;
|
2844
|
+
|
2845
|
+
ON_CALL(helper, NoArgs).WillByDefault(Return(10));
|
2846
|
+
ON_CALL(helper, OneArg).WillByDefault(Return(20));
|
2847
|
+
ON_CALL(helper, TwoArgs).WillByDefault(Return(30));
|
2848
|
+
|
2849
|
+
EXPECT_EQ(10, helper.NoArgs());
|
2850
|
+
EXPECT_EQ(20, helper.OneArg(1));
|
2851
|
+
EXPECT_EQ(30, helper.TwoArgs('\1', 2));
|
2852
|
+
|
2853
|
+
EXPECT_CALL(helper, NoArgs).Times(1);
|
2854
|
+
EXPECT_CALL(helper, OneArg).WillOnce(Return(100));
|
2855
|
+
EXPECT_CALL(helper, OneArg(17)).WillOnce(Return(200));
|
2856
|
+
EXPECT_CALL(helper, TwoArgs).Times(0);
|
2857
|
+
|
2858
|
+
EXPECT_EQ(10, helper.NoArgs());
|
2859
|
+
EXPECT_EQ(100, helper.OneArg(1));
|
2860
|
+
EXPECT_EQ(200, helper.OneArg(17));
|
2861
|
+
}
|
2862
|
+
|
2620
2863
|
// Tests that ASSERT_THAT() and EXPECT_THAT() work when the value
|
2621
2864
|
// matches the matcher.
|
2622
2865
|
TEST(MatcherAssertionTest, WorksWhenMatcherIsSatisfied) {
|
@@ -2667,27 +2910,15 @@ TEST(MatcherAssertionTest, WorksForByRefArguments) {
|
|
2667
2910
|
"Actual: 0" + OfType("int") + ", which is located @");
|
2668
2911
|
}
|
2669
2912
|
|
2670
|
-
#if !GTEST_OS_SYMBIAN
|
2671
2913
|
// Tests that ASSERT_THAT() and EXPECT_THAT() work when the matcher is
|
2672
2914
|
// monomorphic.
|
2673
|
-
|
2674
|
-
// ASSERT_THAT("hello", starts_with_he) fails to compile with Nokia's
|
2675
|
-
// Symbian compiler: it tries to compile
|
2676
|
-
// template<T, U> class MatcherCastImpl { ...
|
2677
|
-
// virtual bool MatchAndExplain(T x, ...) const {
|
2678
|
-
// return source_matcher_.MatchAndExplain(static_cast<U>(x), ...);
|
2679
|
-
// with U == string and T == const char*
|
2680
|
-
// With ASSERT_THAT("hello"...) changed to ASSERT_THAT(string("hello") ... )
|
2681
|
-
// the compiler silently crashes with no output.
|
2682
|
-
// If MatcherCastImpl is changed to use U(x) instead of static_cast<U>(x)
|
2683
|
-
// the code compiles but the converted string is bogus.
|
2684
2915
|
TEST(MatcherAssertionTest, WorksForMonomorphicMatcher) {
|
2685
2916
|
Matcher<const char*> starts_with_he = StartsWith("he");
|
2686
2917
|
ASSERT_THAT("hello", starts_with_he);
|
2687
2918
|
|
2688
|
-
Matcher<const string&> ends_with_ok = EndsWith("ok");
|
2919
|
+
Matcher<const std::string&> ends_with_ok = EndsWith("ok");
|
2689
2920
|
ASSERT_THAT("book", ends_with_ok);
|
2690
|
-
const string bad = "bad";
|
2921
|
+
const std::string bad = "bad";
|
2691
2922
|
EXPECT_NONFATAL_FAILURE(EXPECT_THAT(bad, ends_with_ok),
|
2692
2923
|
"Value of: bad\n"
|
2693
2924
|
"Expected: ends with \"ok\"\n"
|
@@ -2698,7 +2929,6 @@ TEST(MatcherAssertionTest, WorksForMonomorphicMatcher) {
|
|
2698
2929
|
"Expected: is > 5\n"
|
2699
2930
|
" Actual: 5" + OfType("int"));
|
2700
2931
|
}
|
2701
|
-
#endif // !GTEST_OS_SYMBIAN
|
2702
2932
|
|
2703
2933
|
// Tests floating-point matchers.
|
2704
2934
|
template <typename RawType>
|
@@ -2712,18 +2942,22 @@ class FloatingPointTest : public testing::Test {
|
|
2712
2942
|
zero_bits_(Floating(0).bits()),
|
2713
2943
|
one_bits_(Floating(1).bits()),
|
2714
2944
|
infinity_bits_(Floating(Floating::Infinity()).bits()),
|
2715
|
-
close_to_positive_zero_(
|
2716
|
-
|
2717
|
-
|
2945
|
+
close_to_positive_zero_(
|
2946
|
+
Floating::ReinterpretBits(zero_bits_ + max_ulps_/2)),
|
2947
|
+
close_to_negative_zero_(
|
2948
|
+
-Floating::ReinterpretBits(zero_bits_ + max_ulps_ - max_ulps_/2)),
|
2949
|
+
further_from_negative_zero_(-Floating::ReinterpretBits(
|
2718
2950
|
zero_bits_ + max_ulps_ + 1 - max_ulps_/2)),
|
2719
|
-
close_to_one_(
|
2720
|
-
further_from_one_(
|
2951
|
+
close_to_one_(Floating::ReinterpretBits(one_bits_ + max_ulps_)),
|
2952
|
+
further_from_one_(Floating::ReinterpretBits(one_bits_ + max_ulps_ + 1)),
|
2721
2953
|
infinity_(Floating::Infinity()),
|
2722
|
-
close_to_infinity_(
|
2723
|
-
|
2954
|
+
close_to_infinity_(
|
2955
|
+
Floating::ReinterpretBits(infinity_bits_ - max_ulps_)),
|
2956
|
+
further_from_infinity_(
|
2957
|
+
Floating::ReinterpretBits(infinity_bits_ - max_ulps_ - 1)),
|
2724
2958
|
max_(Floating::Max()),
|
2725
|
-
nan1_(
|
2726
|
-
nan2_(
|
2959
|
+
nan1_(Floating::ReinterpretBits(Floating::kExponentBitMask | 1)),
|
2960
|
+
nan2_(Floating::ReinterpretBits(Floating::kExponentBitMask | 200)) {
|
2727
2961
|
}
|
2728
2962
|
|
2729
2963
|
void TestSize() {
|
@@ -2778,7 +3012,7 @@ class FloatingPointTest : public testing::Test {
|
|
2778
3012
|
|
2779
3013
|
// Pre-calculated numbers to be used by the tests.
|
2780
3014
|
|
2781
|
-
const
|
3015
|
+
const Bits max_ulps_;
|
2782
3016
|
|
2783
3017
|
const Bits zero_bits_; // The bits that represent 0.0.
|
2784
3018
|
const Bits one_bits_; // The bits that represent 1.0.
|
@@ -2804,12 +3038,6 @@ class FloatingPointTest : public testing::Test {
|
|
2804
3038
|
// Some NaNs.
|
2805
3039
|
const RawType nan1_;
|
2806
3040
|
const RawType nan2_;
|
2807
|
-
|
2808
|
-
private:
|
2809
|
-
template <typename T>
|
2810
|
-
static RawType AsBits(T value) {
|
2811
|
-
return Floating::ReinterpretBits(static_cast<Bits>(value));
|
2812
|
-
}
|
2813
3041
|
};
|
2814
3042
|
|
2815
3043
|
// Tests floating-point matchers with fixed epsilons.
|
@@ -3099,7 +3327,8 @@ TEST_F(DoubleNearTest, ExplainsResultWhenMatchFails) {
|
|
3099
3327
|
EXPECT_EQ("which is 0.2 from 2", Explain(DoubleNear(2.0, 0.1), 2.2));
|
3100
3328
|
EXPECT_EQ("which is -0.3 from 2", Explain(DoubleNear(2.0, 0.1), 1.7));
|
3101
3329
|
|
3102
|
-
const string explanation =
|
3330
|
+
const std::string explanation =
|
3331
|
+
Explain(DoubleNear(2.1, 1e-10), 2.1 + 1.2e-10);
|
3103
3332
|
// Different C++ implementations may print floating-point numbers
|
3104
3333
|
// slightly differently.
|
3105
3334
|
EXPECT_TRUE(explanation == "which is 1.2e-10 from 2.1" || // GCC
|
@@ -3146,7 +3375,7 @@ TEST(PointeeTest, RawPointer) {
|
|
3146
3375
|
EXPECT_TRUE(m.Matches(&n));
|
3147
3376
|
n = -1;
|
3148
3377
|
EXPECT_FALSE(m.Matches(&n));
|
3149
|
-
EXPECT_FALSE(m.Matches(
|
3378
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3150
3379
|
}
|
3151
3380
|
|
3152
3381
|
TEST(PointeeTest, RawPointerToConst) {
|
@@ -3156,7 +3385,7 @@ TEST(PointeeTest, RawPointerToConst) {
|
|
3156
3385
|
EXPECT_TRUE(m.Matches(&x));
|
3157
3386
|
x = -1;
|
3158
3387
|
EXPECT_FALSE(m.Matches(&x));
|
3159
|
-
EXPECT_FALSE(m.Matches(
|
3388
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3160
3389
|
}
|
3161
3390
|
|
3162
3391
|
TEST(PointeeTest, ReferenceToConstRawPointer) {
|
@@ -3166,7 +3395,7 @@ TEST(PointeeTest, ReferenceToConstRawPointer) {
|
|
3166
3395
|
EXPECT_TRUE(m.Matches(&n));
|
3167
3396
|
n = -1;
|
3168
3397
|
EXPECT_FALSE(m.Matches(&n));
|
3169
|
-
EXPECT_FALSE(m.Matches(
|
3398
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3170
3399
|
}
|
3171
3400
|
|
3172
3401
|
TEST(PointeeTest, ReferenceToNonConstRawPointer) {
|
@@ -3177,7 +3406,7 @@ TEST(PointeeTest, ReferenceToNonConstRawPointer) {
|
|
3177
3406
|
EXPECT_TRUE(m.Matches(p));
|
3178
3407
|
x = -1;
|
3179
3408
|
EXPECT_FALSE(m.Matches(p));
|
3180
|
-
p =
|
3409
|
+
p = nullptr;
|
3181
3410
|
EXPECT_FALSE(m.Matches(p));
|
3182
3411
|
}
|
3183
3412
|
|
@@ -3186,7 +3415,6 @@ MATCHER_P(FieldIIs, inner_matcher, "") {
|
|
3186
3415
|
}
|
3187
3416
|
|
3188
3417
|
#if GTEST_HAS_RTTI
|
3189
|
-
|
3190
3418
|
TEST(WhenDynamicCastToTest, SameType) {
|
3191
3419
|
Derived derived;
|
3192
3420
|
derived.i = 4;
|
@@ -3217,7 +3445,7 @@ TEST(WhenDynamicCastToTest, WrongTypes) {
|
|
3217
3445
|
|
3218
3446
|
TEST(WhenDynamicCastToTest, AlreadyNull) {
|
3219
3447
|
// Already NULL.
|
3220
|
-
Base* as_base_ptr =
|
3448
|
+
Base* as_base_ptr = nullptr;
|
3221
3449
|
EXPECT_THAT(as_base_ptr, WhenDynamicCastTo<Derived*>(IsNull()));
|
3222
3450
|
}
|
3223
3451
|
|
@@ -3244,7 +3472,7 @@ TEST(WhenDynamicCastToTest, AmbiguousCast) {
|
|
3244
3472
|
|
3245
3473
|
TEST(WhenDynamicCastToTest, Describe) {
|
3246
3474
|
Matcher<Base*> matcher = WhenDynamicCastTo<Derived*>(Pointee(_));
|
3247
|
-
const string prefix =
|
3475
|
+
const std::string prefix =
|
3248
3476
|
"when dynamic_cast to " + internal::GetTypeName<Derived*>() + ", ";
|
3249
3477
|
EXPECT_EQ(prefix + "points to a value that is anything", Describe(matcher));
|
3250
3478
|
EXPECT_EQ(prefix + "does not point to a value that is anything",
|
@@ -3253,7 +3481,7 @@ TEST(WhenDynamicCastToTest, Describe) {
|
|
3253
3481
|
|
3254
3482
|
TEST(WhenDynamicCastToTest, Explain) {
|
3255
3483
|
Matcher<Base*> matcher = WhenDynamicCastTo<Derived*>(Pointee(_));
|
3256
|
-
Base* null =
|
3484
|
+
Base* null = nullptr;
|
3257
3485
|
EXPECT_THAT(Explain(matcher, null), HasSubstr("NULL"));
|
3258
3486
|
Derived derived;
|
3259
3487
|
EXPECT_TRUE(matcher.Matches(&derived));
|
@@ -3278,7 +3506,6 @@ TEST(WhenDynamicCastToTest, BadReference) {
|
|
3278
3506
|
Base& as_base_ref = derived;
|
3279
3507
|
EXPECT_THAT(as_base_ref, Not(WhenDynamicCastTo<const OtherDerived&>(_)));
|
3280
3508
|
}
|
3281
|
-
|
3282
3509
|
#endif // GTEST_HAS_RTTI
|
3283
3510
|
|
3284
3511
|
// Minimal const-propagating pointer.
|
@@ -3315,7 +3542,7 @@ TEST(PointeeTest, WorksWithConstPropagatingPointers) {
|
|
3315
3542
|
|
3316
3543
|
TEST(PointeeTest, NeverMatchesNull) {
|
3317
3544
|
const Matcher<const char*> m = Pointee(_);
|
3318
|
-
EXPECT_FALSE(m.Matches(
|
3545
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3319
3546
|
}
|
3320
3547
|
|
3321
3548
|
// Tests that we can write Pointee(value) instead of Pointee(Eq(value)).
|
@@ -3326,7 +3553,7 @@ TEST(PointeeTest, MatchesAgainstAValue) {
|
|
3326
3553
|
EXPECT_TRUE(m.Matches(&n));
|
3327
3554
|
n = -1;
|
3328
3555
|
EXPECT_FALSE(m.Matches(&n));
|
3329
|
-
EXPECT_FALSE(m.Matches(
|
3556
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3330
3557
|
}
|
3331
3558
|
|
3332
3559
|
TEST(PointeeTest, CanDescribeSelf) {
|
@@ -3337,9 +3564,9 @@ TEST(PointeeTest, CanDescribeSelf) {
|
|
3337
3564
|
}
|
3338
3565
|
|
3339
3566
|
TEST(PointeeTest, CanExplainMatchResult) {
|
3340
|
-
const Matcher<const string*> m = Pointee(StartsWith("Hi"));
|
3567
|
+
const Matcher<const std::string*> m = Pointee(StartsWith("Hi"));
|
3341
3568
|
|
3342
|
-
EXPECT_EQ("", Explain(m, static_cast<const string*>(
|
3569
|
+
EXPECT_EQ("", Explain(m, static_cast<const std::string*>(nullptr)));
|
3343
3570
|
|
3344
3571
|
const Matcher<long*> m2 = Pointee(GreaterThan(1)); // NOLINT
|
3345
3572
|
long n = 3; // NOLINT
|
@@ -3376,7 +3603,7 @@ MATCHER_P(UncopyableIs, inner_matcher, "") {
|
|
3376
3603
|
|
3377
3604
|
// A user-defined struct for testing Field().
|
3378
3605
|
struct AStruct {
|
3379
|
-
AStruct() : x(0), y(1.0), z(5), p(
|
3606
|
+
AStruct() : x(0), y(1.0), z(5), p(nullptr) {}
|
3380
3607
|
AStruct(const AStruct& rhs)
|
3381
3608
|
: x(rhs.x), y(rhs.y), z(rhs.z.value()), p(rhs.p) {}
|
3382
3609
|
|
@@ -3400,11 +3627,14 @@ struct DerivedStruct : public AStruct {
|
|
3400
3627
|
// Tests that Field(&Foo::field, ...) works when field is non-const.
|
3401
3628
|
TEST(FieldTest, WorksForNonConstField) {
|
3402
3629
|
Matcher<AStruct> m = Field(&AStruct::x, Ge(0));
|
3630
|
+
Matcher<AStruct> m_with_name = Field("x", &AStruct::x, Ge(0));
|
3403
3631
|
|
3404
3632
|
AStruct a;
|
3405
3633
|
EXPECT_TRUE(m.Matches(a));
|
3634
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3406
3635
|
a.x = -1;
|
3407
3636
|
EXPECT_FALSE(m.Matches(a));
|
3637
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3408
3638
|
}
|
3409
3639
|
|
3410
3640
|
// Tests that Field(&Foo::field, ...) works when field is const.
|
@@ -3412,9 +3642,13 @@ TEST(FieldTest, WorksForConstField) {
|
|
3412
3642
|
AStruct a;
|
3413
3643
|
|
3414
3644
|
Matcher<AStruct> m = Field(&AStruct::y, Ge(0.0));
|
3645
|
+
Matcher<AStruct> m_with_name = Field("y", &AStruct::y, Ge(0.0));
|
3415
3646
|
EXPECT_TRUE(m.Matches(a));
|
3647
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3416
3648
|
m = Field(&AStruct::y, Le(0.0));
|
3649
|
+
m_with_name = Field("y", &AStruct::y, Le(0.0));
|
3417
3650
|
EXPECT_FALSE(m.Matches(a));
|
3651
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3418
3652
|
}
|
3419
3653
|
|
3420
3654
|
// Tests that Field(&Foo::field, ...) works when field is not copyable.
|
@@ -3430,7 +3664,7 @@ TEST(FieldTest, WorksForUncopyableField) {
|
|
3430
3664
|
// Tests that Field(&Foo::field, ...) works when field is a pointer.
|
3431
3665
|
TEST(FieldTest, WorksForPointerField) {
|
3432
3666
|
// Matching against NULL.
|
3433
|
-
Matcher<AStruct> m = Field(&AStruct::p, static_cast<const char*>(
|
3667
|
+
Matcher<AStruct> m = Field(&AStruct::p, static_cast<const char*>(nullptr));
|
3434
3668
|
AStruct a;
|
3435
3669
|
EXPECT_TRUE(m.Matches(a));
|
3436
3670
|
a.p = "hi";
|
@@ -3488,6 +3722,14 @@ TEST(FieldTest, CanDescribeSelf) {
|
|
3488
3722
|
EXPECT_EQ("is an object whose given field isn't >= 0", DescribeNegation(m));
|
3489
3723
|
}
|
3490
3724
|
|
3725
|
+
TEST(FieldTest, CanDescribeSelfWithFieldName) {
|
3726
|
+
Matcher<const AStruct&> m = Field("field_name", &AStruct::x, Ge(0));
|
3727
|
+
|
3728
|
+
EXPECT_EQ("is an object whose field `field_name` is >= 0", Describe(m));
|
3729
|
+
EXPECT_EQ("is an object whose field `field_name` isn't >= 0",
|
3730
|
+
DescribeNegation(m));
|
3731
|
+
}
|
3732
|
+
|
3491
3733
|
// Tests that Field() can explain the match result.
|
3492
3734
|
TEST(FieldTest, CanExplainMatchResult) {
|
3493
3735
|
Matcher<const AStruct&> m = Field(&AStruct::x, Ge(0));
|
@@ -3502,6 +3744,19 @@ TEST(FieldTest, CanExplainMatchResult) {
|
|
3502
3744
|
Explain(m, a));
|
3503
3745
|
}
|
3504
3746
|
|
3747
|
+
TEST(FieldTest, CanExplainMatchResultWithFieldName) {
|
3748
|
+
Matcher<const AStruct&> m = Field("field_name", &AStruct::x, Ge(0));
|
3749
|
+
|
3750
|
+
AStruct a;
|
3751
|
+
a.x = 1;
|
3752
|
+
EXPECT_EQ("whose field `field_name` is 1" + OfType("int"), Explain(m, a));
|
3753
|
+
|
3754
|
+
m = Field("field_name", &AStruct::x, GreaterThan(0));
|
3755
|
+
EXPECT_EQ("whose field `field_name` is 1" + OfType("int") +
|
3756
|
+
", which is 1 more than 0",
|
3757
|
+
Explain(m, a));
|
3758
|
+
}
|
3759
|
+
|
3505
3760
|
// Tests that Field() works when the argument is a pointer to const.
|
3506
3761
|
TEST(FieldForPointerTest, WorksForPointerToConst) {
|
3507
3762
|
Matcher<const AStruct*> m = Field(&AStruct::x, Ge(0));
|
@@ -3535,7 +3790,7 @@ TEST(FieldForPointerTest, WorksForReferenceToConstPointer) {
|
|
3535
3790
|
// Tests that Field() does not match the NULL pointer.
|
3536
3791
|
TEST(FieldForPointerTest, DoesNotMatchNull) {
|
3537
3792
|
Matcher<const AStruct*> m = Field(&AStruct::x, _);
|
3538
|
-
EXPECT_FALSE(m.Matches(
|
3793
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3539
3794
|
}
|
3540
3795
|
|
3541
3796
|
// Tests that Field(&Foo::field, ...) works when the argument's type
|
@@ -3559,13 +3814,21 @@ TEST(FieldForPointerTest, CanDescribeSelf) {
|
|
3559
3814
|
EXPECT_EQ("is an object whose given field isn't >= 0", DescribeNegation(m));
|
3560
3815
|
}
|
3561
3816
|
|
3817
|
+
TEST(FieldForPointerTest, CanDescribeSelfWithFieldName) {
|
3818
|
+
Matcher<const AStruct*> m = Field("field_name", &AStruct::x, Ge(0));
|
3819
|
+
|
3820
|
+
EXPECT_EQ("is an object whose field `field_name` is >= 0", Describe(m));
|
3821
|
+
EXPECT_EQ("is an object whose field `field_name` isn't >= 0",
|
3822
|
+
DescribeNegation(m));
|
3823
|
+
}
|
3824
|
+
|
3562
3825
|
// Tests that Field() can explain the result of matching a pointer.
|
3563
3826
|
TEST(FieldForPointerTest, CanExplainMatchResult) {
|
3564
3827
|
Matcher<const AStruct*> m = Field(&AStruct::x, Ge(0));
|
3565
3828
|
|
3566
3829
|
AStruct a;
|
3567
3830
|
a.x = 1;
|
3568
|
-
EXPECT_EQ("", Explain(m, static_cast<const AStruct*>(
|
3831
|
+
EXPECT_EQ("", Explain(m, static_cast<const AStruct*>(nullptr)));
|
3569
3832
|
EXPECT_EQ("which points to an object whose given field is 1" + OfType("int"),
|
3570
3833
|
Explain(m, &a));
|
3571
3834
|
|
@@ -3574,6 +3837,22 @@ TEST(FieldForPointerTest, CanExplainMatchResult) {
|
|
3574
3837
|
", which is 1 more than 0", Explain(m, &a));
|
3575
3838
|
}
|
3576
3839
|
|
3840
|
+
TEST(FieldForPointerTest, CanExplainMatchResultWithFieldName) {
|
3841
|
+
Matcher<const AStruct*> m = Field("field_name", &AStruct::x, Ge(0));
|
3842
|
+
|
3843
|
+
AStruct a;
|
3844
|
+
a.x = 1;
|
3845
|
+
EXPECT_EQ("", Explain(m, static_cast<const AStruct*>(nullptr)));
|
3846
|
+
EXPECT_EQ(
|
3847
|
+
"which points to an object whose field `field_name` is 1" + OfType("int"),
|
3848
|
+
Explain(m, &a));
|
3849
|
+
|
3850
|
+
m = Field("field_name", &AStruct::x, GreaterThan(0));
|
3851
|
+
EXPECT_EQ("which points to an object whose field `field_name` is 1" +
|
3852
|
+
OfType("int") + ", which is 1 more than 0",
|
3853
|
+
Explain(m, &a));
|
3854
|
+
}
|
3855
|
+
|
3577
3856
|
// A user-defined class for testing Property().
|
3578
3857
|
class AClass {
|
3579
3858
|
public:
|
@@ -3585,15 +3864,18 @@ class AClass {
|
|
3585
3864
|
void set_n(int new_n) { n_ = new_n; }
|
3586
3865
|
|
3587
3866
|
// A getter that returns a reference to const.
|
3588
|
-
const string& s() const { return s_; }
|
3867
|
+
const std::string& s() const { return s_; }
|
3868
|
+
|
3869
|
+
const std::string& s_ref() const & { return s_; }
|
3589
3870
|
|
3590
|
-
void set_s(const string& new_s) { s_ = new_s; }
|
3871
|
+
void set_s(const std::string& new_s) { s_ = new_s; }
|
3591
3872
|
|
3592
3873
|
// A getter that returns a reference to non-const.
|
3593
3874
|
double& x() const { return x_; }
|
3875
|
+
|
3594
3876
|
private:
|
3595
3877
|
int n_;
|
3596
|
-
string s_;
|
3878
|
+
std::string s_;
|
3597
3879
|
|
3598
3880
|
static double x_;
|
3599
3881
|
};
|
@@ -3612,26 +3894,50 @@ class DerivedClass : public AClass {
|
|
3612
3894
|
// returns a non-reference.
|
3613
3895
|
TEST(PropertyTest, WorksForNonReferenceProperty) {
|
3614
3896
|
Matcher<const AClass&> m = Property(&AClass::n, Ge(0));
|
3897
|
+
Matcher<const AClass&> m_with_name = Property("n", &AClass::n, Ge(0));
|
3615
3898
|
|
3616
3899
|
AClass a;
|
3617
3900
|
a.set_n(1);
|
3618
3901
|
EXPECT_TRUE(m.Matches(a));
|
3902
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3619
3903
|
|
3620
3904
|
a.set_n(-1);
|
3621
3905
|
EXPECT_FALSE(m.Matches(a));
|
3906
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3622
3907
|
}
|
3623
3908
|
|
3624
3909
|
// Tests that Property(&Foo::property, ...) works when property()
|
3625
3910
|
// returns a reference to const.
|
3626
3911
|
TEST(PropertyTest, WorksForReferenceToConstProperty) {
|
3627
3912
|
Matcher<const AClass&> m = Property(&AClass::s, StartsWith("hi"));
|
3913
|
+
Matcher<const AClass&> m_with_name =
|
3914
|
+
Property("s", &AClass::s, StartsWith("hi"));
|
3915
|
+
|
3916
|
+
AClass a;
|
3917
|
+
a.set_s("hill");
|
3918
|
+
EXPECT_TRUE(m.Matches(a));
|
3919
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3920
|
+
|
3921
|
+
a.set_s("hole");
|
3922
|
+
EXPECT_FALSE(m.Matches(a));
|
3923
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3924
|
+
}
|
3925
|
+
|
3926
|
+
// Tests that Property(&Foo::property, ...) works when property() is
|
3927
|
+
// ref-qualified.
|
3928
|
+
TEST(PropertyTest, WorksForRefQualifiedProperty) {
|
3929
|
+
Matcher<const AClass&> m = Property(&AClass::s_ref, StartsWith("hi"));
|
3930
|
+
Matcher<const AClass&> m_with_name =
|
3931
|
+
Property("s", &AClass::s_ref, StartsWith("hi"));
|
3628
3932
|
|
3629
3933
|
AClass a;
|
3630
3934
|
a.set_s("hill");
|
3631
3935
|
EXPECT_TRUE(m.Matches(a));
|
3936
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3632
3937
|
|
3633
3938
|
a.set_s("hole");
|
3634
3939
|
EXPECT_FALSE(m.Matches(a));
|
3940
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3635
3941
|
}
|
3636
3942
|
|
3637
3943
|
// Tests that Property(&Foo::property, ...) works when property()
|
@@ -3682,10 +3988,15 @@ TEST(PropertyTest, WorksForCompatibleMatcherType) {
|
|
3682
3988
|
Matcher<const AClass&> m = Property(&AClass::n,
|
3683
3989
|
Matcher<signed char>(Ge(0)));
|
3684
3990
|
|
3991
|
+
Matcher<const AClass&> m_with_name =
|
3992
|
+
Property("n", &AClass::n, Matcher<signed char>(Ge(0)));
|
3993
|
+
|
3685
3994
|
AClass a;
|
3686
3995
|
EXPECT_TRUE(m.Matches(a));
|
3996
|
+
EXPECT_TRUE(m_with_name.Matches(a));
|
3687
3997
|
a.set_n(-1);
|
3688
3998
|
EXPECT_FALSE(m.Matches(a));
|
3999
|
+
EXPECT_FALSE(m_with_name.Matches(a));
|
3689
4000
|
}
|
3690
4001
|
|
3691
4002
|
// Tests that Property() can describe itself.
|
@@ -3697,6 +4008,14 @@ TEST(PropertyTest, CanDescribeSelf) {
|
|
3697
4008
|
DescribeNegation(m));
|
3698
4009
|
}
|
3699
4010
|
|
4011
|
+
TEST(PropertyTest, CanDescribeSelfWithPropertyName) {
|
4012
|
+
Matcher<const AClass&> m = Property("fancy_name", &AClass::n, Ge(0));
|
4013
|
+
|
4014
|
+
EXPECT_EQ("is an object whose property `fancy_name` is >= 0", Describe(m));
|
4015
|
+
EXPECT_EQ("is an object whose property `fancy_name` isn't >= 0",
|
4016
|
+
DescribeNegation(m));
|
4017
|
+
}
|
4018
|
+
|
3700
4019
|
// Tests that Property() can explain the match result.
|
3701
4020
|
TEST(PropertyTest, CanExplainMatchResult) {
|
3702
4021
|
Matcher<const AClass&> m = Property(&AClass::n, Ge(0));
|
@@ -3711,6 +4030,19 @@ TEST(PropertyTest, CanExplainMatchResult) {
|
|
3711
4030
|
Explain(m, a));
|
3712
4031
|
}
|
3713
4032
|
|
4033
|
+
TEST(PropertyTest, CanExplainMatchResultWithPropertyName) {
|
4034
|
+
Matcher<const AClass&> m = Property("fancy_name", &AClass::n, Ge(0));
|
4035
|
+
|
4036
|
+
AClass a;
|
4037
|
+
a.set_n(1);
|
4038
|
+
EXPECT_EQ("whose property `fancy_name` is 1" + OfType("int"), Explain(m, a));
|
4039
|
+
|
4040
|
+
m = Property("fancy_name", &AClass::n, GreaterThan(0));
|
4041
|
+
EXPECT_EQ("whose property `fancy_name` is 1" + OfType("int") +
|
4042
|
+
", which is 1 more than 0",
|
4043
|
+
Explain(m, a));
|
4044
|
+
}
|
4045
|
+
|
3714
4046
|
// Tests that Property() works when the argument is a pointer to const.
|
3715
4047
|
TEST(PropertyForPointerTest, WorksForPointerToConst) {
|
3716
4048
|
Matcher<const AClass*> m = Property(&AClass::n, Ge(0));
|
@@ -3751,7 +4083,7 @@ TEST(PropertyForPointerTest, WorksForReferenceToConstPointer) {
|
|
3751
4083
|
// Tests that Property() does not match the NULL pointer.
|
3752
4084
|
TEST(PropertyForPointerTest, WorksForReferenceToNonConstProperty) {
|
3753
4085
|
Matcher<const AClass*> m = Property(&AClass::x, _);
|
3754
|
-
EXPECT_FALSE(m.Matches(
|
4086
|
+
EXPECT_FALSE(m.Matches(nullptr));
|
3755
4087
|
}
|
3756
4088
|
|
3757
4089
|
// Tests that Property(&Foo::property, ...) works when the argument's
|
@@ -3778,13 +4110,21 @@ TEST(PropertyForPointerTest, CanDescribeSelf) {
|
|
3778
4110
|
DescribeNegation(m));
|
3779
4111
|
}
|
3780
4112
|
|
4113
|
+
TEST(PropertyForPointerTest, CanDescribeSelfWithPropertyDescription) {
|
4114
|
+
Matcher<const AClass*> m = Property("fancy_name", &AClass::n, Ge(0));
|
4115
|
+
|
4116
|
+
EXPECT_EQ("is an object whose property `fancy_name` is >= 0", Describe(m));
|
4117
|
+
EXPECT_EQ("is an object whose property `fancy_name` isn't >= 0",
|
4118
|
+
DescribeNegation(m));
|
4119
|
+
}
|
4120
|
+
|
3781
4121
|
// Tests that Property() can explain the result of matching a pointer.
|
3782
4122
|
TEST(PropertyForPointerTest, CanExplainMatchResult) {
|
3783
4123
|
Matcher<const AClass*> m = Property(&AClass::n, Ge(0));
|
3784
4124
|
|
3785
4125
|
AClass a;
|
3786
4126
|
a.set_n(1);
|
3787
|
-
EXPECT_EQ("", Explain(m, static_cast<const AClass*>(
|
4127
|
+
EXPECT_EQ("", Explain(m, static_cast<const AClass*>(nullptr)));
|
3788
4128
|
EXPECT_EQ(
|
3789
4129
|
"which points to an object whose given property is 1" + OfType("int"),
|
3790
4130
|
Explain(m, &a));
|
@@ -3795,14 +4135,32 @@ TEST(PropertyForPointerTest, CanExplainMatchResult) {
|
|
3795
4135
|
Explain(m, &a));
|
3796
4136
|
}
|
3797
4137
|
|
4138
|
+
TEST(PropertyForPointerTest, CanExplainMatchResultWithPropertyName) {
|
4139
|
+
Matcher<const AClass*> m = Property("fancy_name", &AClass::n, Ge(0));
|
4140
|
+
|
4141
|
+
AClass a;
|
4142
|
+
a.set_n(1);
|
4143
|
+
EXPECT_EQ("", Explain(m, static_cast<const AClass*>(nullptr)));
|
4144
|
+
EXPECT_EQ("which points to an object whose property `fancy_name` is 1" +
|
4145
|
+
OfType("int"),
|
4146
|
+
Explain(m, &a));
|
4147
|
+
|
4148
|
+
m = Property("fancy_name", &AClass::n, GreaterThan(0));
|
4149
|
+
EXPECT_EQ("which points to an object whose property `fancy_name` is 1" +
|
4150
|
+
OfType("int") + ", which is 1 more than 0",
|
4151
|
+
Explain(m, &a));
|
4152
|
+
}
|
4153
|
+
|
3798
4154
|
// Tests ResultOf.
|
3799
4155
|
|
3800
4156
|
// Tests that ResultOf(f, ...) compiles and works as expected when f is a
|
3801
4157
|
// function pointer.
|
3802
|
-
string IntToStringFunction(int input) {
|
4158
|
+
std::string IntToStringFunction(int input) {
|
4159
|
+
return input == 1 ? "foo" : "bar";
|
4160
|
+
}
|
3803
4161
|
|
3804
4162
|
TEST(ResultOfTest, WorksForFunctionPointers) {
|
3805
|
-
Matcher<int> matcher = ResultOf(&IntToStringFunction, Eq(string("foo")));
|
4163
|
+
Matcher<int> matcher = ResultOf(&IntToStringFunction, Eq(std::string("foo")));
|
3806
4164
|
|
3807
4165
|
EXPECT_TRUE(matcher.Matches(1));
|
3808
4166
|
EXPECT_FALSE(matcher.Matches(2));
|
@@ -3868,12 +4226,12 @@ TEST(ResultOfTest, WorksForReferenceToNonConstResults) {
|
|
3868
4226
|
|
3869
4227
|
// Tests that ResultOf(f, ...) compiles and works as expected when f(x)
|
3870
4228
|
// returns a reference to const.
|
3871
|
-
const string& StringFunction(const string& input) { return input; }
|
4229
|
+
const std::string& StringFunction(const std::string& input) { return input; }
|
3872
4230
|
|
3873
4231
|
TEST(ResultOfTest, WorksForReferenceToConstResults) {
|
3874
|
-
string s = "foo";
|
3875
|
-
string s2 = s;
|
3876
|
-
Matcher<const string&> matcher = ResultOf(&StringFunction, Ref(s));
|
4232
|
+
std::string s = "foo";
|
4233
|
+
std::string s2 = s;
|
4234
|
+
Matcher<const std::string&> matcher = ResultOf(&StringFunction, Ref(s));
|
3877
4235
|
|
3878
4236
|
EXPECT_TRUE(matcher.Matches(s));
|
3879
4237
|
EXPECT_FALSE(matcher.Matches(s2));
|
@@ -3893,8 +4251,9 @@ TEST(ResultOfTest, WorksForCompatibleMatcherTypes) {
|
|
3893
4251
|
// a NULL function pointer.
|
3894
4252
|
TEST(ResultOfDeathTest, DiesOnNullFunctionPointers) {
|
3895
4253
|
EXPECT_DEATH_IF_SUPPORTED(
|
3896
|
-
ResultOf(static_cast<string(*)(int dummy)>(
|
3897
|
-
|
4254
|
+
ResultOf(static_cast<std::string (*)(int dummy)>(nullptr),
|
4255
|
+
Eq(std::string("foo"))),
|
4256
|
+
"NULL function pointer is passed into ResultOf\\(\\)\\.");
|
3898
4257
|
}
|
3899
4258
|
|
3900
4259
|
// Tests that ResultOf(f, ...) compiles and works as expected when f is a
|
@@ -3907,26 +4266,27 @@ TEST(ResultOfTest, WorksForFunctionReferences) {
|
|
3907
4266
|
|
3908
4267
|
// Tests that ResultOf(f, ...) compiles and works as expected when f is a
|
3909
4268
|
// function object.
|
3910
|
-
struct Functor : public ::std::unary_function<int, string> {
|
4269
|
+
struct Functor : public ::std::unary_function<int, std::string> {
|
3911
4270
|
result_type operator()(argument_type input) const {
|
3912
4271
|
return IntToStringFunction(input);
|
3913
4272
|
}
|
3914
4273
|
};
|
3915
4274
|
|
3916
4275
|
TEST(ResultOfTest, WorksForFunctors) {
|
3917
|
-
Matcher<int> matcher = ResultOf(Functor(), Eq(string("foo")));
|
4276
|
+
Matcher<int> matcher = ResultOf(Functor(), Eq(std::string("foo")));
|
3918
4277
|
|
3919
4278
|
EXPECT_TRUE(matcher.Matches(1));
|
3920
4279
|
EXPECT_FALSE(matcher.Matches(2));
|
3921
4280
|
}
|
3922
4281
|
|
3923
4282
|
// Tests that ResultOf(f, ...) compiles and works as expected when f is a
|
3924
|
-
// functor with more
|
4283
|
+
// functor with more than one operator() defined. ResultOf() must work
|
3925
4284
|
// for each defined operator().
|
3926
4285
|
struct PolymorphicFunctor {
|
3927
4286
|
typedef int result_type;
|
3928
4287
|
int operator()(int n) { return n; }
|
3929
4288
|
int operator()(const char* s) { return static_cast<int>(strlen(s)); }
|
4289
|
+
std::string operator()(int *p) { return p ? "good ptr" : "null"; }
|
3930
4290
|
};
|
3931
4291
|
|
3932
4292
|
TEST(ResultOfTest, WorksForPolymorphicFunctors) {
|
@@ -3941,6 +4301,21 @@ TEST(ResultOfTest, WorksForPolymorphicFunctors) {
|
|
3941
4301
|
EXPECT_FALSE(matcher_string.Matches("shrt"));
|
3942
4302
|
}
|
3943
4303
|
|
4304
|
+
TEST(ResultOfTest, WorksForPolymorphicFunctorsIgnoringResultType) {
|
4305
|
+
Matcher<int*> matcher = ResultOf(PolymorphicFunctor(), "good ptr");
|
4306
|
+
|
4307
|
+
int n = 0;
|
4308
|
+
EXPECT_TRUE(matcher.Matches(&n));
|
4309
|
+
EXPECT_FALSE(matcher.Matches(nullptr));
|
4310
|
+
}
|
4311
|
+
|
4312
|
+
TEST(ResultOfTest, WorksForLambdas) {
|
4313
|
+
Matcher<int> matcher =
|
4314
|
+
ResultOf([](int str_len) { return std::string(str_len, 'x'); }, "xxx");
|
4315
|
+
EXPECT_TRUE(matcher.Matches(3));
|
4316
|
+
EXPECT_FALSE(matcher.Matches(1));
|
4317
|
+
}
|
4318
|
+
|
3944
4319
|
const int* ReferencingFunction(const int& n) { return &n; }
|
3945
4320
|
|
3946
4321
|
struct ReferencingFunctor {
|
@@ -4080,11 +4455,11 @@ TEST(IsEmptyTest, ImplementsIsEmpty) {
|
|
4080
4455
|
}
|
4081
4456
|
|
4082
4457
|
TEST(IsEmptyTest, WorksWithString) {
|
4083
|
-
string text;
|
4458
|
+
std::string text;
|
4084
4459
|
EXPECT_THAT(text, IsEmpty());
|
4085
4460
|
text = "foo";
|
4086
4461
|
EXPECT_THAT(text, Not(IsEmpty()));
|
4087
|
-
text = string("\0", 1);
|
4462
|
+
text = std::string("\0", 1);
|
4088
4463
|
EXPECT_THAT(text, Not(IsEmpty()));
|
4089
4464
|
}
|
4090
4465
|
|
@@ -4102,6 +4477,48 @@ TEST(IsEmptyTest, ExplainsResult) {
|
|
4102
4477
|
EXPECT_EQ("whose size is 1", Explain(m, container));
|
4103
4478
|
}
|
4104
4479
|
|
4480
|
+
TEST(IsEmptyTest, WorksWithMoveOnly) {
|
4481
|
+
ContainerHelper helper;
|
4482
|
+
EXPECT_CALL(helper, Call(IsEmpty()));
|
4483
|
+
helper.Call({});
|
4484
|
+
}
|
4485
|
+
|
4486
|
+
TEST(IsTrueTest, IsTrueIsFalse) {
|
4487
|
+
EXPECT_THAT(true, IsTrue());
|
4488
|
+
EXPECT_THAT(false, IsFalse());
|
4489
|
+
EXPECT_THAT(true, Not(IsFalse()));
|
4490
|
+
EXPECT_THAT(false, Not(IsTrue()));
|
4491
|
+
EXPECT_THAT(0, Not(IsTrue()));
|
4492
|
+
EXPECT_THAT(0, IsFalse());
|
4493
|
+
EXPECT_THAT(nullptr, Not(IsTrue()));
|
4494
|
+
EXPECT_THAT(nullptr, IsFalse());
|
4495
|
+
EXPECT_THAT(-1, IsTrue());
|
4496
|
+
EXPECT_THAT(-1, Not(IsFalse()));
|
4497
|
+
EXPECT_THAT(1, IsTrue());
|
4498
|
+
EXPECT_THAT(1, Not(IsFalse()));
|
4499
|
+
EXPECT_THAT(2, IsTrue());
|
4500
|
+
EXPECT_THAT(2, Not(IsFalse()));
|
4501
|
+
int a = 42;
|
4502
|
+
EXPECT_THAT(a, IsTrue());
|
4503
|
+
EXPECT_THAT(a, Not(IsFalse()));
|
4504
|
+
EXPECT_THAT(&a, IsTrue());
|
4505
|
+
EXPECT_THAT(&a, Not(IsFalse()));
|
4506
|
+
EXPECT_THAT(false, Not(IsTrue()));
|
4507
|
+
EXPECT_THAT(true, Not(IsFalse()));
|
4508
|
+
EXPECT_THAT(std::true_type(), IsTrue());
|
4509
|
+
EXPECT_THAT(std::true_type(), Not(IsFalse()));
|
4510
|
+
EXPECT_THAT(std::false_type(), IsFalse());
|
4511
|
+
EXPECT_THAT(std::false_type(), Not(IsTrue()));
|
4512
|
+
EXPECT_THAT(nullptr, Not(IsTrue()));
|
4513
|
+
EXPECT_THAT(nullptr, IsFalse());
|
4514
|
+
std::unique_ptr<int> null_unique;
|
4515
|
+
std::unique_ptr<int> nonnull_unique(new int(0));
|
4516
|
+
EXPECT_THAT(null_unique, Not(IsTrue()));
|
4517
|
+
EXPECT_THAT(null_unique, IsFalse());
|
4518
|
+
EXPECT_THAT(nonnull_unique, IsTrue());
|
4519
|
+
EXPECT_THAT(nonnull_unique, Not(IsFalse()));
|
4520
|
+
}
|
4521
|
+
|
4105
4522
|
TEST(SizeIsTest, ImplementsSizeIs) {
|
4106
4523
|
vector<int> container;
|
4107
4524
|
EXPECT_THAT(container, SizeIs(0));
|
@@ -4115,7 +4532,7 @@ TEST(SizeIsTest, ImplementsSizeIs) {
|
|
4115
4532
|
}
|
4116
4533
|
|
4117
4534
|
TEST(SizeIsTest, WorksWithMap) {
|
4118
|
-
map<string, int> container;
|
4535
|
+
map<std::string, int> container;
|
4119
4536
|
EXPECT_THAT(container, SizeIs(0));
|
4120
4537
|
EXPECT_THAT(container, Not(SizeIs(1)));
|
4121
4538
|
container.insert(make_pair("foo", 1));
|
@@ -4134,6 +4551,23 @@ TEST(SizeIsTest, WorksWithReferences) {
|
|
4134
4551
|
EXPECT_THAT(container, m);
|
4135
4552
|
}
|
4136
4553
|
|
4554
|
+
TEST(SizeIsTest, WorksWithMoveOnly) {
|
4555
|
+
ContainerHelper helper;
|
4556
|
+
EXPECT_CALL(helper, Call(SizeIs(3)));
|
4557
|
+
helper.Call(MakeUniquePtrs({1, 2, 3}));
|
4558
|
+
}
|
4559
|
+
|
4560
|
+
// SizeIs should work for any type that provides a size() member function.
|
4561
|
+
// For example, a size_type member type should not need to be provided.
|
4562
|
+
struct MinimalistCustomType {
|
4563
|
+
int size() const { return 1; }
|
4564
|
+
};
|
4565
|
+
TEST(SizeIsTest, WorksWithMinimalistCustomType) {
|
4566
|
+
MinimalistCustomType container;
|
4567
|
+
EXPECT_THAT(container, SizeIs(1));
|
4568
|
+
EXPECT_THAT(container, Not(SizeIs(0)));
|
4569
|
+
}
|
4570
|
+
|
4137
4571
|
TEST(SizeIsTest, CanDescribeSelf) {
|
4138
4572
|
Matcher<vector<int> > m = SizeIs(2);
|
4139
4573
|
EXPECT_EQ("size is equal to 2", Describe(m));
|
@@ -4174,7 +4608,7 @@ typedef testing::Types<
|
|
4174
4608
|
list<int> >
|
4175
4609
|
ContainerEqTestTypes;
|
4176
4610
|
|
4177
|
-
|
4611
|
+
TYPED_TEST_SUITE(ContainerEqTest, ContainerEqTestTypes);
|
4178
4612
|
|
4179
4613
|
// Tests that the filled container is equal to itself.
|
4180
4614
|
TYPED_TEST(ContainerEqTest, EqualsSelf) {
|
@@ -4234,8 +4668,8 @@ TYPED_TEST(ContainerEqTest, DuplicateDifference) {
|
|
4234
4668
|
}
|
4235
4669
|
#endif // GTEST_HAS_TYPED_TEST
|
4236
4670
|
|
4237
|
-
// Tests that
|
4238
|
-
// Using just vector here, so order is
|
4671
|
+
// Tests that multiple missing values are reported.
|
4672
|
+
// Using just vector here, so order is predictable.
|
4239
4673
|
TEST(ContainerEqExtraTest, MultipleValuesMissing) {
|
4240
4674
|
static const int vals[] = {1, 1, 2, 3, 5, 8};
|
4241
4675
|
static const int test_vals[] = {2, 1, 5};
|
@@ -4248,7 +4682,7 @@ TEST(ContainerEqExtraTest, MultipleValuesMissing) {
|
|
4248
4682
|
}
|
4249
4683
|
|
4250
4684
|
// Tests that added values are reported.
|
4251
|
-
// Using just vector here, so order is
|
4685
|
+
// Using just vector here, so order is predictable.
|
4252
4686
|
TEST(ContainerEqExtraTest, MultipleValuesAdded) {
|
4253
4687
|
static const int vals[] = {1, 1, 2, 3, 5, 8};
|
4254
4688
|
static const int test_vals[] = {1, 2, 92, 3, 5, 8, 46};
|
@@ -4336,11 +4770,11 @@ TEST(ContainerEqExtraTest, WorksForNativeArrayAsTuple) {
|
|
4336
4770
|
const int b[] = {1, 2, 3, 4};
|
4337
4771
|
|
4338
4772
|
const int* const p1 = a1;
|
4339
|
-
EXPECT_THAT(make_tuple(p1, 3), ContainerEq(a2));
|
4340
|
-
EXPECT_THAT(make_tuple(p1, 3), Not(ContainerEq(b)));
|
4773
|
+
EXPECT_THAT(std::make_tuple(p1, 3), ContainerEq(a2));
|
4774
|
+
EXPECT_THAT(std::make_tuple(p1, 3), Not(ContainerEq(b)));
|
4341
4775
|
|
4342
4776
|
const int c[] = {1, 3, 2};
|
4343
|
-
EXPECT_THAT(make_tuple(p1, 3), Not(ContainerEq(c)));
|
4777
|
+
EXPECT_THAT(std::make_tuple(p1, 3), Not(ContainerEq(c)));
|
4344
4778
|
}
|
4345
4779
|
|
4346
4780
|
TEST(ContainerEqExtraTest, CopiesNativeArrayParameter) {
|
@@ -4380,13 +4814,13 @@ TEST(WhenSortedByTest, WorksForNonEmptyContainer) {
|
|
4380
4814
|
}
|
4381
4815
|
|
4382
4816
|
TEST(WhenSortedByTest, WorksForNonVectorContainer) {
|
4383
|
-
list<string> words;
|
4817
|
+
list<std::string> words;
|
4384
4818
|
words.push_back("say");
|
4385
4819
|
words.push_back("hello");
|
4386
4820
|
words.push_back("world");
|
4387
|
-
EXPECT_THAT(words, WhenSortedBy(less<string>(),
|
4821
|
+
EXPECT_THAT(words, WhenSortedBy(less<std::string>(),
|
4388
4822
|
ElementsAre("hello", "say", "world")));
|
4389
|
-
EXPECT_THAT(words, Not(WhenSortedBy(less<string>(),
|
4823
|
+
EXPECT_THAT(words, Not(WhenSortedBy(less<std::string>(),
|
4390
4824
|
ElementsAre("say", "hello", "world"))));
|
4391
4825
|
}
|
4392
4826
|
|
@@ -4429,7 +4863,7 @@ TEST(WhenSortedTest, WorksForEmptyContainer) {
|
|
4429
4863
|
}
|
4430
4864
|
|
4431
4865
|
TEST(WhenSortedTest, WorksForNonEmptyContainer) {
|
4432
|
-
list<string> words;
|
4866
|
+
list<std::string> words;
|
4433
4867
|
words.push_back("3");
|
4434
4868
|
words.push_back("1");
|
4435
4869
|
words.push_back("2");
|
@@ -4439,14 +4873,16 @@ TEST(WhenSortedTest, WorksForNonEmptyContainer) {
|
|
4439
4873
|
}
|
4440
4874
|
|
4441
4875
|
TEST(WhenSortedTest, WorksForMapTypes) {
|
4442
|
-
|
4443
|
-
|
4444
|
-
|
4445
|
-
|
4446
|
-
|
4447
|
-
|
4448
|
-
|
4449
|
-
|
4876
|
+
map<std::string, int> word_counts;
|
4877
|
+
word_counts["and"] = 1;
|
4878
|
+
word_counts["the"] = 1;
|
4879
|
+
word_counts["buffalo"] = 2;
|
4880
|
+
EXPECT_THAT(word_counts,
|
4881
|
+
WhenSorted(ElementsAre(Pair("and", 1), Pair("buffalo", 2),
|
4882
|
+
Pair("the", 1))));
|
4883
|
+
EXPECT_THAT(word_counts,
|
4884
|
+
Not(WhenSorted(ElementsAre(Pair("and", 1), Pair("the", 1),
|
4885
|
+
Pair("buffalo", 2)))));
|
4450
4886
|
}
|
4451
4887
|
|
4452
4888
|
TEST(WhenSortedTest, WorksForMultiMapTypes) {
|
@@ -4580,7 +5016,6 @@ TEST(StreamlikeTest, Iteration) {
|
|
4580
5016
|
}
|
4581
5017
|
}
|
4582
5018
|
|
4583
|
-
#if GTEST_HAS_STD_FORWARD_LIST_
|
4584
5019
|
TEST(BeginEndDistanceIsTest, WorksWithForwardList) {
|
4585
5020
|
std::forward_list<int> container;
|
4586
5021
|
EXPECT_THAT(container, BeginEndDistanceIs(0));
|
@@ -4592,7 +5027,6 @@ TEST(BeginEndDistanceIsTest, WorksWithForwardList) {
|
|
4592
5027
|
EXPECT_THAT(container, Not(BeginEndDistanceIs(0)));
|
4593
5028
|
EXPECT_THAT(container, BeginEndDistanceIs(2));
|
4594
5029
|
}
|
4595
|
-
#endif // GTEST_HAS_STD_FORWARD_LIST_
|
4596
5030
|
|
4597
5031
|
TEST(BeginEndDistanceIsTest, WorksWithNonStdList) {
|
4598
5032
|
const int a[5] = {1, 2, 3, 4, 5};
|
@@ -4607,6 +5041,12 @@ TEST(BeginEndDistanceIsTest, CanDescribeSelf) {
|
|
4607
5041
|
DescribeNegation(m));
|
4608
5042
|
}
|
4609
5043
|
|
5044
|
+
TEST(BeginEndDistanceIsTest, WorksWithMoveOnly) {
|
5045
|
+
ContainerHelper helper;
|
5046
|
+
EXPECT_CALL(helper, Call(BeginEndDistanceIs(2)));
|
5047
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
5048
|
+
}
|
5049
|
+
|
4610
5050
|
TEST(BeginEndDistanceIsTest, ExplainsResult) {
|
4611
5051
|
Matcher<vector<int> > m1 = BeginEndDistanceIs(2);
|
4612
5052
|
Matcher<vector<int> > m2 = BeginEndDistanceIs(Lt(2));
|
@@ -4654,6 +5094,262 @@ TEST(WhenSortedTest, WorksForVectorConstRefMatcherOnStreamlike) {
|
|
4654
5094
|
EXPECT_THAT(s, Not(WhenSorted(ElementsAre(2, 1, 4, 5, 3))));
|
4655
5095
|
}
|
4656
5096
|
|
5097
|
+
TEST(IsSupersetOfTest, WorksForNativeArray) {
|
5098
|
+
const int subset[] = {1, 4};
|
5099
|
+
const int superset[] = {1, 2, 4};
|
5100
|
+
const int disjoint[] = {1, 0, 3};
|
5101
|
+
EXPECT_THAT(subset, IsSupersetOf(subset));
|
5102
|
+
EXPECT_THAT(subset, Not(IsSupersetOf(superset)));
|
5103
|
+
EXPECT_THAT(superset, IsSupersetOf(subset));
|
5104
|
+
EXPECT_THAT(subset, Not(IsSupersetOf(disjoint)));
|
5105
|
+
EXPECT_THAT(disjoint, Not(IsSupersetOf(subset)));
|
5106
|
+
}
|
5107
|
+
|
5108
|
+
TEST(IsSupersetOfTest, WorksWithDuplicates) {
|
5109
|
+
const int not_enough[] = {1, 2};
|
5110
|
+
const int enough[] = {1, 1, 2};
|
5111
|
+
const int expected[] = {1, 1};
|
5112
|
+
EXPECT_THAT(not_enough, Not(IsSupersetOf(expected)));
|
5113
|
+
EXPECT_THAT(enough, IsSupersetOf(expected));
|
5114
|
+
}
|
5115
|
+
|
5116
|
+
TEST(IsSupersetOfTest, WorksForEmpty) {
|
5117
|
+
vector<int> numbers;
|
5118
|
+
vector<int> expected;
|
5119
|
+
EXPECT_THAT(numbers, IsSupersetOf(expected));
|
5120
|
+
expected.push_back(1);
|
5121
|
+
EXPECT_THAT(numbers, Not(IsSupersetOf(expected)));
|
5122
|
+
expected.clear();
|
5123
|
+
numbers.push_back(1);
|
5124
|
+
numbers.push_back(2);
|
5125
|
+
EXPECT_THAT(numbers, IsSupersetOf(expected));
|
5126
|
+
expected.push_back(1);
|
5127
|
+
EXPECT_THAT(numbers, IsSupersetOf(expected));
|
5128
|
+
expected.push_back(2);
|
5129
|
+
EXPECT_THAT(numbers, IsSupersetOf(expected));
|
5130
|
+
expected.push_back(3);
|
5131
|
+
EXPECT_THAT(numbers, Not(IsSupersetOf(expected)));
|
5132
|
+
}
|
5133
|
+
|
5134
|
+
TEST(IsSupersetOfTest, WorksForStreamlike) {
|
5135
|
+
const int a[5] = {1, 2, 3, 4, 5};
|
5136
|
+
Streamlike<int> s(a, a + GTEST_ARRAY_SIZE_(a));
|
5137
|
+
|
5138
|
+
vector<int> expected;
|
5139
|
+
expected.push_back(1);
|
5140
|
+
expected.push_back(2);
|
5141
|
+
expected.push_back(5);
|
5142
|
+
EXPECT_THAT(s, IsSupersetOf(expected));
|
5143
|
+
|
5144
|
+
expected.push_back(0);
|
5145
|
+
EXPECT_THAT(s, Not(IsSupersetOf(expected)));
|
5146
|
+
}
|
5147
|
+
|
5148
|
+
TEST(IsSupersetOfTest, TakesStlContainer) {
|
5149
|
+
const int actual[] = {3, 1, 2};
|
5150
|
+
|
5151
|
+
::std::list<int> expected;
|
5152
|
+
expected.push_back(1);
|
5153
|
+
expected.push_back(3);
|
5154
|
+
EXPECT_THAT(actual, IsSupersetOf(expected));
|
5155
|
+
|
5156
|
+
expected.push_back(4);
|
5157
|
+
EXPECT_THAT(actual, Not(IsSupersetOf(expected)));
|
5158
|
+
}
|
5159
|
+
|
5160
|
+
TEST(IsSupersetOfTest, Describe) {
|
5161
|
+
typedef std::vector<int> IntVec;
|
5162
|
+
IntVec expected;
|
5163
|
+
expected.push_back(111);
|
5164
|
+
expected.push_back(222);
|
5165
|
+
expected.push_back(333);
|
5166
|
+
EXPECT_THAT(
|
5167
|
+
Describe<IntVec>(IsSupersetOf(expected)),
|
5168
|
+
Eq("a surjection from elements to requirements exists such that:\n"
|
5169
|
+
" - an element is equal to 111\n"
|
5170
|
+
" - an element is equal to 222\n"
|
5171
|
+
" - an element is equal to 333"));
|
5172
|
+
}
|
5173
|
+
|
5174
|
+
TEST(IsSupersetOfTest, DescribeNegation) {
|
5175
|
+
typedef std::vector<int> IntVec;
|
5176
|
+
IntVec expected;
|
5177
|
+
expected.push_back(111);
|
5178
|
+
expected.push_back(222);
|
5179
|
+
expected.push_back(333);
|
5180
|
+
EXPECT_THAT(
|
5181
|
+
DescribeNegation<IntVec>(IsSupersetOf(expected)),
|
5182
|
+
Eq("no surjection from elements to requirements exists such that:\n"
|
5183
|
+
" - an element is equal to 111\n"
|
5184
|
+
" - an element is equal to 222\n"
|
5185
|
+
" - an element is equal to 333"));
|
5186
|
+
}
|
5187
|
+
|
5188
|
+
TEST(IsSupersetOfTest, MatchAndExplain) {
|
5189
|
+
std::vector<int> v;
|
5190
|
+
v.push_back(2);
|
5191
|
+
v.push_back(3);
|
5192
|
+
std::vector<int> expected;
|
5193
|
+
expected.push_back(1);
|
5194
|
+
expected.push_back(2);
|
5195
|
+
StringMatchResultListener listener;
|
5196
|
+
ASSERT_FALSE(ExplainMatchResult(IsSupersetOf(expected), v, &listener))
|
5197
|
+
<< listener.str();
|
5198
|
+
EXPECT_THAT(listener.str(),
|
5199
|
+
Eq("where the following matchers don't match any elements:\n"
|
5200
|
+
"matcher #0: is equal to 1"));
|
5201
|
+
|
5202
|
+
v.push_back(1);
|
5203
|
+
listener.Clear();
|
5204
|
+
ASSERT_TRUE(ExplainMatchResult(IsSupersetOf(expected), v, &listener))
|
5205
|
+
<< listener.str();
|
5206
|
+
EXPECT_THAT(listener.str(), Eq("where:\n"
|
5207
|
+
" - element #0 is matched by matcher #1,\n"
|
5208
|
+
" - element #2 is matched by matcher #0"));
|
5209
|
+
}
|
5210
|
+
|
5211
|
+
TEST(IsSupersetOfTest, WorksForRhsInitializerList) {
|
5212
|
+
const int numbers[] = {1, 3, 6, 2, 4, 5};
|
5213
|
+
EXPECT_THAT(numbers, IsSupersetOf({1, 2}));
|
5214
|
+
EXPECT_THAT(numbers, Not(IsSupersetOf({3, 0})));
|
5215
|
+
}
|
5216
|
+
|
5217
|
+
TEST(IsSupersetOfTest, WorksWithMoveOnly) {
|
5218
|
+
ContainerHelper helper;
|
5219
|
+
EXPECT_CALL(helper, Call(IsSupersetOf({Pointee(1)})));
|
5220
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
5221
|
+
EXPECT_CALL(helper, Call(Not(IsSupersetOf({Pointee(1), Pointee(2)}))));
|
5222
|
+
helper.Call(MakeUniquePtrs({2}));
|
5223
|
+
}
|
5224
|
+
|
5225
|
+
TEST(IsSubsetOfTest, WorksForNativeArray) {
|
5226
|
+
const int subset[] = {1, 4};
|
5227
|
+
const int superset[] = {1, 2, 4};
|
5228
|
+
const int disjoint[] = {1, 0, 3};
|
5229
|
+
EXPECT_THAT(subset, IsSubsetOf(subset));
|
5230
|
+
EXPECT_THAT(subset, IsSubsetOf(superset));
|
5231
|
+
EXPECT_THAT(superset, Not(IsSubsetOf(subset)));
|
5232
|
+
EXPECT_THAT(subset, Not(IsSubsetOf(disjoint)));
|
5233
|
+
EXPECT_THAT(disjoint, Not(IsSubsetOf(subset)));
|
5234
|
+
}
|
5235
|
+
|
5236
|
+
TEST(IsSubsetOfTest, WorksWithDuplicates) {
|
5237
|
+
const int not_enough[] = {1, 2};
|
5238
|
+
const int enough[] = {1, 1, 2};
|
5239
|
+
const int actual[] = {1, 1};
|
5240
|
+
EXPECT_THAT(actual, Not(IsSubsetOf(not_enough)));
|
5241
|
+
EXPECT_THAT(actual, IsSubsetOf(enough));
|
5242
|
+
}
|
5243
|
+
|
5244
|
+
TEST(IsSubsetOfTest, WorksForEmpty) {
|
5245
|
+
vector<int> numbers;
|
5246
|
+
vector<int> expected;
|
5247
|
+
EXPECT_THAT(numbers, IsSubsetOf(expected));
|
5248
|
+
expected.push_back(1);
|
5249
|
+
EXPECT_THAT(numbers, IsSubsetOf(expected));
|
5250
|
+
expected.clear();
|
5251
|
+
numbers.push_back(1);
|
5252
|
+
numbers.push_back(2);
|
5253
|
+
EXPECT_THAT(numbers, Not(IsSubsetOf(expected)));
|
5254
|
+
expected.push_back(1);
|
5255
|
+
EXPECT_THAT(numbers, Not(IsSubsetOf(expected)));
|
5256
|
+
expected.push_back(2);
|
5257
|
+
EXPECT_THAT(numbers, IsSubsetOf(expected));
|
5258
|
+
expected.push_back(3);
|
5259
|
+
EXPECT_THAT(numbers, IsSubsetOf(expected));
|
5260
|
+
}
|
5261
|
+
|
5262
|
+
TEST(IsSubsetOfTest, WorksForStreamlike) {
|
5263
|
+
const int a[5] = {1, 2};
|
5264
|
+
Streamlike<int> s(a, a + GTEST_ARRAY_SIZE_(a));
|
5265
|
+
|
5266
|
+
vector<int> expected;
|
5267
|
+
expected.push_back(1);
|
5268
|
+
EXPECT_THAT(s, Not(IsSubsetOf(expected)));
|
5269
|
+
expected.push_back(2);
|
5270
|
+
expected.push_back(5);
|
5271
|
+
EXPECT_THAT(s, IsSubsetOf(expected));
|
5272
|
+
}
|
5273
|
+
|
5274
|
+
TEST(IsSubsetOfTest, TakesStlContainer) {
|
5275
|
+
const int actual[] = {3, 1, 2};
|
5276
|
+
|
5277
|
+
::std::list<int> expected;
|
5278
|
+
expected.push_back(1);
|
5279
|
+
expected.push_back(3);
|
5280
|
+
EXPECT_THAT(actual, Not(IsSubsetOf(expected)));
|
5281
|
+
|
5282
|
+
expected.push_back(2);
|
5283
|
+
expected.push_back(4);
|
5284
|
+
EXPECT_THAT(actual, IsSubsetOf(expected));
|
5285
|
+
}
|
5286
|
+
|
5287
|
+
TEST(IsSubsetOfTest, Describe) {
|
5288
|
+
typedef std::vector<int> IntVec;
|
5289
|
+
IntVec expected;
|
5290
|
+
expected.push_back(111);
|
5291
|
+
expected.push_back(222);
|
5292
|
+
expected.push_back(333);
|
5293
|
+
|
5294
|
+
EXPECT_THAT(
|
5295
|
+
Describe<IntVec>(IsSubsetOf(expected)),
|
5296
|
+
Eq("an injection from elements to requirements exists such that:\n"
|
5297
|
+
" - an element is equal to 111\n"
|
5298
|
+
" - an element is equal to 222\n"
|
5299
|
+
" - an element is equal to 333"));
|
5300
|
+
}
|
5301
|
+
|
5302
|
+
TEST(IsSubsetOfTest, DescribeNegation) {
|
5303
|
+
typedef std::vector<int> IntVec;
|
5304
|
+
IntVec expected;
|
5305
|
+
expected.push_back(111);
|
5306
|
+
expected.push_back(222);
|
5307
|
+
expected.push_back(333);
|
5308
|
+
EXPECT_THAT(
|
5309
|
+
DescribeNegation<IntVec>(IsSubsetOf(expected)),
|
5310
|
+
Eq("no injection from elements to requirements exists such that:\n"
|
5311
|
+
" - an element is equal to 111\n"
|
5312
|
+
" - an element is equal to 222\n"
|
5313
|
+
" - an element is equal to 333"));
|
5314
|
+
}
|
5315
|
+
|
5316
|
+
TEST(IsSubsetOfTest, MatchAndExplain) {
|
5317
|
+
std::vector<int> v;
|
5318
|
+
v.push_back(2);
|
5319
|
+
v.push_back(3);
|
5320
|
+
std::vector<int> expected;
|
5321
|
+
expected.push_back(1);
|
5322
|
+
expected.push_back(2);
|
5323
|
+
StringMatchResultListener listener;
|
5324
|
+
ASSERT_FALSE(ExplainMatchResult(IsSubsetOf(expected), v, &listener))
|
5325
|
+
<< listener.str();
|
5326
|
+
EXPECT_THAT(listener.str(),
|
5327
|
+
Eq("where the following elements don't match any matchers:\n"
|
5328
|
+
"element #1: 3"));
|
5329
|
+
|
5330
|
+
expected.push_back(3);
|
5331
|
+
listener.Clear();
|
5332
|
+
ASSERT_TRUE(ExplainMatchResult(IsSubsetOf(expected), v, &listener))
|
5333
|
+
<< listener.str();
|
5334
|
+
EXPECT_THAT(listener.str(), Eq("where:\n"
|
5335
|
+
" - element #0 is matched by matcher #1,\n"
|
5336
|
+
" - element #1 is matched by matcher #2"));
|
5337
|
+
}
|
5338
|
+
|
5339
|
+
TEST(IsSubsetOfTest, WorksForRhsInitializerList) {
|
5340
|
+
const int numbers[] = {1, 2, 3};
|
5341
|
+
EXPECT_THAT(numbers, IsSubsetOf({1, 2, 3, 4}));
|
5342
|
+
EXPECT_THAT(numbers, Not(IsSubsetOf({1, 2})));
|
5343
|
+
}
|
5344
|
+
|
5345
|
+
TEST(IsSubsetOfTest, WorksWithMoveOnly) {
|
5346
|
+
ContainerHelper helper;
|
5347
|
+
EXPECT_CALL(helper, Call(IsSubsetOf({Pointee(1), Pointee(2)})));
|
5348
|
+
helper.Call(MakeUniquePtrs({1}));
|
5349
|
+
EXPECT_CALL(helper, Call(Not(IsSubsetOf({Pointee(1)}))));
|
5350
|
+
helper.Call(MakeUniquePtrs({2}));
|
5351
|
+
}
|
5352
|
+
|
4657
5353
|
// Tests using ElementsAre() and ElementsAreArray() with stream-like
|
4658
5354
|
// "containers".
|
4659
5355
|
|
@@ -4687,6 +5383,15 @@ TEST(ElementsAreTest, WorksWithUncopyable) {
|
|
4687
5383
|
EXPECT_THAT(objs, ElementsAre(UncopyableIs(-3), Truly(ValueIsPositive)));
|
4688
5384
|
}
|
4689
5385
|
|
5386
|
+
TEST(ElementsAreTest, WorksWithMoveOnly) {
|
5387
|
+
ContainerHelper helper;
|
5388
|
+
EXPECT_CALL(helper, Call(ElementsAre(Pointee(1), Pointee(2))));
|
5389
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
5390
|
+
|
5391
|
+
EXPECT_CALL(helper, Call(ElementsAreArray({Pointee(3), Pointee(4)})));
|
5392
|
+
helper.Call(MakeUniquePtrs({3, 4}));
|
5393
|
+
}
|
5394
|
+
|
4690
5395
|
TEST(ElementsAreTest, TakesStlContainer) {
|
4691
5396
|
const int actual[] = {3, 1, 2};
|
4692
5397
|
|
@@ -4754,7 +5459,6 @@ TEST(UnorderedElementsAreArrayTest, TakesStlContainer) {
|
|
4754
5459
|
EXPECT_THAT(actual, Not(UnorderedElementsAreArray(expected)));
|
4755
5460
|
}
|
4756
5461
|
|
4757
|
-
#if GTEST_HAS_STD_INITIALIZER_LIST_
|
4758
5462
|
|
4759
5463
|
TEST(UnorderedElementsAreArrayTest, TakesInitializerList) {
|
4760
5464
|
const int a[5] = {2, 1, 4, 5, 3};
|
@@ -4763,7 +5467,7 @@ TEST(UnorderedElementsAreArrayTest, TakesInitializerList) {
|
|
4763
5467
|
}
|
4764
5468
|
|
4765
5469
|
TEST(UnorderedElementsAreArrayTest, TakesInitializerListOfCStrings) {
|
4766
|
-
const string a[5] = {"a", "b", "c", "d", "e"};
|
5470
|
+
const std::string a[5] = {"a", "b", "c", "d", "e"};
|
4767
5471
|
EXPECT_THAT(a, UnorderedElementsAreArray({"a", "b", "c", "d", "e"}));
|
4768
5472
|
EXPECT_THAT(a, Not(UnorderedElementsAreArray({"a", "b", "c", "d", "ef"})));
|
4769
5473
|
}
|
@@ -4788,7 +5492,13 @@ TEST(UnorderedElementsAreArrayTest,
|
|
4788
5492
|
{Eq(1), Ne(-2), Ge(3), Le(4), Eq(6)})));
|
4789
5493
|
}
|
4790
5494
|
|
4791
|
-
|
5495
|
+
|
5496
|
+
TEST(UnorderedElementsAreArrayTest, WorksWithMoveOnly) {
|
5497
|
+
ContainerHelper helper;
|
5498
|
+
EXPECT_CALL(helper,
|
5499
|
+
Call(UnorderedElementsAreArray({Pointee(1), Pointee(2)})));
|
5500
|
+
helper.Call(MakeUniquePtrs({2, 1}));
|
5501
|
+
}
|
4792
5502
|
|
4793
5503
|
class UnorderedElementsAreTest : public testing::Test {
|
4794
5504
|
protected:
|
@@ -4837,6 +5547,12 @@ TEST_F(UnorderedElementsAreTest, WorksForStreamlike) {
|
|
4837
5547
|
EXPECT_THAT(s, Not(UnorderedElementsAre(2, 2, 3, 4, 5)));
|
4838
5548
|
}
|
4839
5549
|
|
5550
|
+
TEST_F(UnorderedElementsAreTest, WorksWithMoveOnly) {
|
5551
|
+
ContainerHelper helper;
|
5552
|
+
EXPECT_CALL(helper, Call(UnorderedElementsAre(Pointee(1), Pointee(2))));
|
5553
|
+
helper.Call(MakeUniquePtrs({2, 1}));
|
5554
|
+
}
|
5555
|
+
|
4840
5556
|
// One naive implementation of the matcher runs in O(N!) time, which is too
|
4841
5557
|
// slow for many real-world inputs. This test shows that our matcher can match
|
4842
5558
|
// 100 inputs very quickly (a few milliseconds). An O(100!) is 10^158
|
@@ -4937,7 +5653,7 @@ TEST_F(UnorderedElementsAreTest, FailMessageUnmatchedMatcherAndElement) {
|
|
4937
5653
|
}
|
4938
5654
|
|
4939
5655
|
// Test helper for formatting element, matcher index pairs in expectations.
|
4940
|
-
static string EMString(int element, int matcher) {
|
5656
|
+
static std::string EMString(int element, int matcher) {
|
4941
5657
|
stringstream ss;
|
4942
5658
|
ss << "(element #" << element << ", matcher #" << matcher << ")";
|
4943
5659
|
return ss.str();
|
@@ -4946,7 +5662,7 @@ static string EMString(int element, int matcher) {
|
|
4946
5662
|
TEST_F(UnorderedElementsAreTest, FailMessageImperfectMatchOnly) {
|
4947
5663
|
// A situation where all elements and matchers have a match
|
4948
5664
|
// associated with them, but the max matching is not perfect.
|
4949
|
-
std::vector<string> v;
|
5665
|
+
std::vector<std::string> v;
|
4950
5666
|
v.push_back("a");
|
4951
5667
|
v.push_back("b");
|
4952
5668
|
v.push_back("c");
|
@@ -4955,7 +5671,7 @@ TEST_F(UnorderedElementsAreTest, FailMessageImperfectMatchOnly) {
|
|
4955
5671
|
UnorderedElementsAre("a", "a", AnyOf("b", "c")), v, &listener))
|
4956
5672
|
<< listener.str();
|
4957
5673
|
|
4958
|
-
string prefix =
|
5674
|
+
std::string prefix =
|
4959
5675
|
"where no permutation of the elements can satisfy all matchers, "
|
4960
5676
|
"and the closest match is 2 of 3 matchers with the "
|
4961
5677
|
"pairings:\n";
|
@@ -5124,7 +5840,7 @@ TEST_P(BipartiteTest, Exhaustive) {
|
|
5124
5840
|
} while (graph.NextGraph());
|
5125
5841
|
}
|
5126
5842
|
|
5127
|
-
|
5843
|
+
INSTANTIATE_TEST_SUITE_P(AllGraphs, BipartiteTest,
|
5128
5844
|
::testing::Range(0, 5));
|
5129
5845
|
|
5130
5846
|
// Parameterized by a pair interpreted as (LhsSize, RhsSize).
|
@@ -5167,7 +5883,7 @@ TEST_P(BipartiteNonSquareTest, Exhaustive) {
|
|
5167
5883
|
} while (graph.NextGraph());
|
5168
5884
|
}
|
5169
5885
|
|
5170
|
-
|
5886
|
+
INSTANTIATE_TEST_SUITE_P(AllGraphs, BipartiteNonSquareTest,
|
5171
5887
|
testing::Values(
|
5172
5888
|
std::make_pair(1, 2),
|
5173
5889
|
std::make_pair(2, 1),
|
@@ -5190,7 +5906,7 @@ TEST_P(BipartiteRandomTest, LargerNets) {
|
|
5190
5906
|
|
5191
5907
|
testing::internal::Int32 seed = GTEST_FLAG(random_seed);
|
5192
5908
|
if (seed == 0) {
|
5193
|
-
seed = static_cast<testing::internal::Int32>(time(
|
5909
|
+
seed = static_cast<testing::internal::Int32>(time(nullptr));
|
5194
5910
|
}
|
5195
5911
|
|
5196
5912
|
for (; iters > 0; --iters, ++seed) {
|
@@ -5205,7 +5921,7 @@ TEST_P(BipartiteRandomTest, LargerNets) {
|
|
5205
5921
|
}
|
5206
5922
|
|
5207
5923
|
// Test argument is a std::pair<int, int> representing (nodes, iters).
|
5208
|
-
|
5924
|
+
INSTANTIATE_TEST_SUITE_P(Samples, BipartiteRandomTest,
|
5209
5925
|
testing::Values(
|
5210
5926
|
std::make_pair(5, 10000),
|
5211
5927
|
std::make_pair(6, 5000),
|
@@ -5238,28 +5954,6 @@ TEST(IsReadableTypeNameTest, ReturnsFalseForLongFunctionTypeNames) {
|
|
5238
5954
|
EXPECT_FALSE(IsReadableTypeName("void (&)(int, bool, char, float)"));
|
5239
5955
|
}
|
5240
5956
|
|
5241
|
-
// Tests JoinAsTuple().
|
5242
|
-
|
5243
|
-
TEST(JoinAsTupleTest, JoinsEmptyTuple) {
|
5244
|
-
EXPECT_EQ("", JoinAsTuple(Strings()));
|
5245
|
-
}
|
5246
|
-
|
5247
|
-
TEST(JoinAsTupleTest, JoinsOneTuple) {
|
5248
|
-
const char* fields[] = {"1"};
|
5249
|
-
EXPECT_EQ("1", JoinAsTuple(Strings(fields, fields + 1)));
|
5250
|
-
}
|
5251
|
-
|
5252
|
-
TEST(JoinAsTupleTest, JoinsTwoTuple) {
|
5253
|
-
const char* fields[] = {"1", "a"};
|
5254
|
-
EXPECT_EQ("(1, a)", JoinAsTuple(Strings(fields, fields + 2)));
|
5255
|
-
}
|
5256
|
-
|
5257
|
-
TEST(JoinAsTupleTest, JoinsTenTuple) {
|
5258
|
-
const char* fields[] = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10"};
|
5259
|
-
EXPECT_EQ("(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)",
|
5260
|
-
JoinAsTuple(Strings(fields, fields + 10)));
|
5261
|
-
}
|
5262
|
-
|
5263
5957
|
// Tests FormatMatcherDescription().
|
5264
5958
|
|
5265
5959
|
TEST(FormatMatcherDescriptionTest, WorksForEmptyDescription) {
|
@@ -5298,13 +5992,15 @@ TEST(PolymorphicMatcherTest, CanAccessImpl) {
|
|
5298
5992
|
|
5299
5993
|
TEST(MatcherTupleTest, ExplainsMatchFailure) {
|
5300
5994
|
stringstream ss1;
|
5301
|
-
ExplainMatchFailureTupleTo(
|
5302
|
-
|
5995
|
+
ExplainMatchFailureTupleTo(
|
5996
|
+
std::make_tuple(Matcher<char>(Eq('a')), GreaterThan(5)),
|
5997
|
+
std::make_tuple('a', 10), &ss1);
|
5303
5998
|
EXPECT_EQ("", ss1.str()); // Successful match.
|
5304
5999
|
|
5305
6000
|
stringstream ss2;
|
5306
|
-
ExplainMatchFailureTupleTo(
|
5307
|
-
|
6001
|
+
ExplainMatchFailureTupleTo(
|
6002
|
+
std::make_tuple(GreaterThan(5), Matcher<char>(Eq('a'))),
|
6003
|
+
std::make_tuple(2, 'b'), &ss2);
|
5308
6004
|
EXPECT_EQ(" Expected arg #0: is > 5\n"
|
5309
6005
|
" Actual: 2, which is 3 less than 5\n"
|
5310
6006
|
" Expected arg #1: is equal to 'a' (97, 0x61)\n"
|
@@ -5312,8 +6008,9 @@ TEST(MatcherTupleTest, ExplainsMatchFailure) {
|
|
5312
6008
|
ss2.str()); // Failed match where both arguments need explanation.
|
5313
6009
|
|
5314
6010
|
stringstream ss3;
|
5315
|
-
ExplainMatchFailureTupleTo(
|
5316
|
-
|
6011
|
+
ExplainMatchFailureTupleTo(
|
6012
|
+
std::make_tuple(GreaterThan(5), Matcher<char>(Eq('a'))),
|
6013
|
+
std::make_tuple(2, 'a'), &ss3);
|
5317
6014
|
EXPECT_EQ(" Expected arg #0: is > 5\n"
|
5318
6015
|
" Actual: 2, which is 3 less than 5\n",
|
5319
6016
|
ss3.str()); // Failed match where only one argument needs
|
@@ -5366,13 +6063,13 @@ TEST(EachTest, MatchesVectorWhenAllElementsMatch) {
|
|
5366
6063
|
EXPECT_THAT(some_vector, Not(Each(3)));
|
5367
6064
|
EXPECT_THAT(some_vector, Each(Lt(3.5)));
|
5368
6065
|
|
5369
|
-
vector<string> another_vector;
|
6066
|
+
vector<std::string> another_vector;
|
5370
6067
|
another_vector.push_back("fee");
|
5371
|
-
EXPECT_THAT(another_vector, Each(string("fee")));
|
6068
|
+
EXPECT_THAT(another_vector, Each(std::string("fee")));
|
5372
6069
|
another_vector.push_back("fie");
|
5373
6070
|
another_vector.push_back("foe");
|
5374
6071
|
another_vector.push_back("fum");
|
5375
|
-
EXPECT_THAT(another_vector, Not(Each(string("fee"))));
|
6072
|
+
EXPECT_THAT(another_vector, Not(Each(std::string("fee"))));
|
5376
6073
|
}
|
5377
6074
|
|
5378
6075
|
TEST(EachTest, MatchesMapWhenAllElementsMatch) {
|
@@ -5381,15 +6078,15 @@ TEST(EachTest, MatchesMapWhenAllElementsMatch) {
|
|
5381
6078
|
my_map[bar] = 2;
|
5382
6079
|
EXPECT_THAT(my_map, Each(make_pair(bar, 2)));
|
5383
6080
|
|
5384
|
-
map<string, int> another_map;
|
5385
|
-
EXPECT_THAT(another_map, Each(make_pair(string("fee"), 1)));
|
6081
|
+
map<std::string, int> another_map;
|
6082
|
+
EXPECT_THAT(another_map, Each(make_pair(std::string("fee"), 1)));
|
5386
6083
|
another_map["fee"] = 1;
|
5387
|
-
EXPECT_THAT(another_map, Each(make_pair(string("fee"), 1)));
|
6084
|
+
EXPECT_THAT(another_map, Each(make_pair(std::string("fee"), 1)));
|
5388
6085
|
another_map["fie"] = 2;
|
5389
6086
|
another_map["foe"] = 3;
|
5390
6087
|
another_map["fum"] = 4;
|
5391
|
-
EXPECT_THAT(another_map, Not(Each(make_pair(string("fee"), 1))));
|
5392
|
-
EXPECT_THAT(another_map, Not(Each(make_pair(string("fum"), 1))));
|
6088
|
+
EXPECT_THAT(another_map, Not(Each(make_pair(std::string("fee"), 1))));
|
6089
|
+
EXPECT_THAT(another_map, Not(Each(make_pair(std::string("fum"), 1))));
|
5393
6090
|
EXPECT_THAT(another_map, Each(Pair(_, Gt(0))));
|
5394
6091
|
}
|
5395
6092
|
|
@@ -5402,21 +6099,27 @@ TEST(EachTest, AcceptsMatcher) {
|
|
5402
6099
|
TEST(EachTest, WorksForNativeArrayAsTuple) {
|
5403
6100
|
const int a[] = {1, 2};
|
5404
6101
|
const int* const pointer = a;
|
5405
|
-
EXPECT_THAT(make_tuple(pointer, 2), Each(Gt(0)));
|
5406
|
-
EXPECT_THAT(make_tuple(pointer, 2), Not(Each(Gt(1))));
|
6102
|
+
EXPECT_THAT(std::make_tuple(pointer, 2), Each(Gt(0)));
|
6103
|
+
EXPECT_THAT(std::make_tuple(pointer, 2), Not(Each(Gt(1))));
|
6104
|
+
}
|
6105
|
+
|
6106
|
+
TEST(EachTest, WorksWithMoveOnly) {
|
6107
|
+
ContainerHelper helper;
|
6108
|
+
EXPECT_CALL(helper, Call(Each(Pointee(Gt(0)))));
|
6109
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
5407
6110
|
}
|
5408
6111
|
|
5409
6112
|
// For testing Pointwise().
|
5410
6113
|
class IsHalfOfMatcher {
|
5411
6114
|
public:
|
5412
6115
|
template <typename T1, typename T2>
|
5413
|
-
bool MatchAndExplain(const tuple<T1, T2>& a_pair,
|
6116
|
+
bool MatchAndExplain(const std::tuple<T1, T2>& a_pair,
|
5414
6117
|
MatchResultListener* listener) const {
|
5415
|
-
if (get<0>(a_pair) == get<1>(a_pair)/2) {
|
5416
|
-
*listener << "where the second is " << get<1>(a_pair);
|
6118
|
+
if (std::get<0>(a_pair) == std::get<1>(a_pair) / 2) {
|
6119
|
+
*listener << "where the second is " << std::get<1>(a_pair);
|
5417
6120
|
return true;
|
5418
6121
|
} else {
|
5419
|
-
*listener << "where the second/2 is " << get<1>(a_pair)/2;
|
6122
|
+
*listener << "where the second/2 is " << std::get<1>(a_pair) / 2;
|
5420
6123
|
return false;
|
5421
6124
|
}
|
5422
6125
|
}
|
@@ -5483,7 +6186,16 @@ TEST(PointwiseTest, WorksForRhsNativeArray) {
|
|
5483
6186
|
EXPECT_THAT(lhs, Not(Pointwise(Lt(), rhs)));
|
5484
6187
|
}
|
5485
6188
|
|
5486
|
-
|
6189
|
+
// Test is effective only with sanitizers.
|
6190
|
+
TEST(PointwiseTest, WorksForVectorOfBool) {
|
6191
|
+
vector<bool> rhs(3, false);
|
6192
|
+
rhs[1] = true;
|
6193
|
+
vector<bool> lhs = rhs;
|
6194
|
+
EXPECT_THAT(lhs, Pointwise(Eq(), rhs));
|
6195
|
+
rhs[0] = true;
|
6196
|
+
EXPECT_THAT(lhs, Not(Pointwise(Eq(), rhs)));
|
6197
|
+
}
|
6198
|
+
|
5487
6199
|
|
5488
6200
|
TEST(PointwiseTest, WorksForRhsInitializerList) {
|
5489
6201
|
const vector<int> lhs{2, 4, 6};
|
@@ -5491,7 +6203,6 @@ TEST(PointwiseTest, WorksForRhsInitializerList) {
|
|
5491
6203
|
EXPECT_THAT(lhs, Not(Pointwise(Lt(), {3, 3, 7})));
|
5492
6204
|
}
|
5493
6205
|
|
5494
|
-
#endif // GTEST_HAS_STD_INITIALIZER_LIST_
|
5495
6206
|
|
5496
6207
|
TEST(PointwiseTest, RejectsWrongSize) {
|
5497
6208
|
const double lhs[2] = {1, 2};
|
@@ -5523,17 +6234,28 @@ TEST(PointwiseTest, AcceptsCorrectContent) {
|
|
5523
6234
|
TEST(PointwiseTest, AllowsMonomorphicInnerMatcher) {
|
5524
6235
|
const double lhs[3] = {1, 2, 3};
|
5525
6236
|
const int rhs[3] = {2, 4, 6};
|
5526
|
-
const Matcher<tuple<const double&, const int
|
6237
|
+
const Matcher<std::tuple<const double&, const int&>> m1 = IsHalfOf();
|
5527
6238
|
EXPECT_THAT(lhs, Pointwise(m1, rhs));
|
5528
6239
|
EXPECT_EQ("", Explain(Pointwise(m1, rhs), lhs));
|
5529
6240
|
|
5530
|
-
// This type works as a tuple<const double&, const int&> can be
|
5531
|
-
// implicitly cast to tuple<double, int>.
|
5532
|
-
const Matcher<tuple<double, int
|
6241
|
+
// This type works as a std::tuple<const double&, const int&> can be
|
6242
|
+
// implicitly cast to std::tuple<double, int>.
|
6243
|
+
const Matcher<std::tuple<double, int>> m2 = IsHalfOf();
|
5533
6244
|
EXPECT_THAT(lhs, Pointwise(m2, rhs));
|
5534
6245
|
EXPECT_EQ("", Explain(Pointwise(m2, rhs), lhs));
|
5535
6246
|
}
|
5536
6247
|
|
6248
|
+
MATCHER(PointeeEquals, "Points to an equal value") {
|
6249
|
+
return ExplainMatchResult(::testing::Pointee(::testing::get<1>(arg)),
|
6250
|
+
::testing::get<0>(arg), result_listener);
|
6251
|
+
}
|
6252
|
+
|
6253
|
+
TEST(PointwiseTest, WorksWithMoveOnly) {
|
6254
|
+
ContainerHelper helper;
|
6255
|
+
EXPECT_CALL(helper, Call(Pointwise(PointeeEquals(), std::vector<int>{1, 2})));
|
6256
|
+
helper.Call(MakeUniquePtrs({1, 2}));
|
6257
|
+
}
|
6258
|
+
|
5537
6259
|
TEST(UnorderedPointwiseTest, DescribesSelf) {
|
5538
6260
|
vector<int> rhs;
|
5539
6261
|
rhs.push_back(1);
|
@@ -5594,7 +6316,6 @@ TEST(UnorderedPointwiseTest, WorksForRhsNativeArray) {
|
|
5594
6316
|
EXPECT_THAT(lhs, Not(UnorderedPointwise(Lt(), rhs)));
|
5595
6317
|
}
|
5596
6318
|
|
5597
|
-
#if GTEST_HAS_STD_INITIALIZER_LIST_
|
5598
6319
|
|
5599
6320
|
TEST(UnorderedPointwiseTest, WorksForRhsInitializerList) {
|
5600
6321
|
const vector<int> lhs{2, 4, 6};
|
@@ -5602,7 +6323,6 @@ TEST(UnorderedPointwiseTest, WorksForRhsInitializerList) {
|
|
5602
6323
|
EXPECT_THAT(lhs, Not(UnorderedPointwise(Lt(), {1, 1, 7})));
|
5603
6324
|
}
|
5604
6325
|
|
5605
|
-
#endif // GTEST_HAS_STD_INITIALIZER_LIST_
|
5606
6326
|
|
5607
6327
|
TEST(UnorderedPointwiseTest, RejectsWrongSize) {
|
5608
6328
|
const double lhs[2] = {1, 2};
|
@@ -5639,14 +6359,431 @@ TEST(UnorderedPointwiseTest, AcceptsCorrectContentInDifferentOrder) {
|
|
5639
6359
|
TEST(UnorderedPointwiseTest, AllowsMonomorphicInnerMatcher) {
|
5640
6360
|
const double lhs[3] = {1, 2, 3};
|
5641
6361
|
const int rhs[3] = {4, 6, 2};
|
5642
|
-
const Matcher<tuple<const double&, const int
|
6362
|
+
const Matcher<std::tuple<const double&, const int&>> m1 = IsHalfOf();
|
5643
6363
|
EXPECT_THAT(lhs, UnorderedPointwise(m1, rhs));
|
5644
6364
|
|
5645
|
-
// This type works as a tuple<const double&, const int&> can be
|
5646
|
-
// implicitly cast to tuple<double, int>.
|
5647
|
-
const Matcher<tuple<double, int
|
6365
|
+
// This type works as a std::tuple<const double&, const int&> can be
|
6366
|
+
// implicitly cast to std::tuple<double, int>.
|
6367
|
+
const Matcher<std::tuple<double, int>> m2 = IsHalfOf();
|
5648
6368
|
EXPECT_THAT(lhs, UnorderedPointwise(m2, rhs));
|
5649
6369
|
}
|
5650
6370
|
|
6371
|
+
TEST(UnorderedPointwiseTest, WorksWithMoveOnly) {
|
6372
|
+
ContainerHelper helper;
|
6373
|
+
EXPECT_CALL(helper, Call(UnorderedPointwise(PointeeEquals(),
|
6374
|
+
std::vector<int>{1, 2})));
|
6375
|
+
helper.Call(MakeUniquePtrs({2, 1}));
|
6376
|
+
}
|
6377
|
+
|
6378
|
+
// Sample optional type implementation with minimal requirements for use with
|
6379
|
+
// Optional matcher.
|
6380
|
+
template <typename T>
|
6381
|
+
class SampleOptional {
|
6382
|
+
public:
|
6383
|
+
using value_type = T;
|
6384
|
+
explicit SampleOptional(T value)
|
6385
|
+
: value_(std::move(value)), has_value_(true) {}
|
6386
|
+
SampleOptional() : value_(), has_value_(false) {}
|
6387
|
+
operator bool() const { return has_value_; }
|
6388
|
+
const T& operator*() const { return value_; }
|
6389
|
+
|
6390
|
+
private:
|
6391
|
+
T value_;
|
6392
|
+
bool has_value_;
|
6393
|
+
};
|
6394
|
+
|
6395
|
+
TEST(OptionalTest, DescribesSelf) {
|
6396
|
+
const Matcher<SampleOptional<int>> m = Optional(Eq(1));
|
6397
|
+
EXPECT_EQ("value is equal to 1", Describe(m));
|
6398
|
+
}
|
6399
|
+
|
6400
|
+
TEST(OptionalTest, ExplainsSelf) {
|
6401
|
+
const Matcher<SampleOptional<int>> m = Optional(Eq(1));
|
6402
|
+
EXPECT_EQ("whose value 1 matches", Explain(m, SampleOptional<int>(1)));
|
6403
|
+
EXPECT_EQ("whose value 2 doesn't match", Explain(m, SampleOptional<int>(2)));
|
6404
|
+
}
|
6405
|
+
|
6406
|
+
TEST(OptionalTest, MatchesNonEmptyOptional) {
|
6407
|
+
const Matcher<SampleOptional<int>> m1 = Optional(1);
|
6408
|
+
const Matcher<SampleOptional<int>> m2 = Optional(Eq(2));
|
6409
|
+
const Matcher<SampleOptional<int>> m3 = Optional(Lt(3));
|
6410
|
+
SampleOptional<int> opt(1);
|
6411
|
+
EXPECT_TRUE(m1.Matches(opt));
|
6412
|
+
EXPECT_FALSE(m2.Matches(opt));
|
6413
|
+
EXPECT_TRUE(m3.Matches(opt));
|
6414
|
+
}
|
6415
|
+
|
6416
|
+
TEST(OptionalTest, DoesNotMatchNullopt) {
|
6417
|
+
const Matcher<SampleOptional<int>> m = Optional(1);
|
6418
|
+
SampleOptional<int> empty;
|
6419
|
+
EXPECT_FALSE(m.Matches(empty));
|
6420
|
+
}
|
6421
|
+
|
6422
|
+
TEST(OptionalTest, WorksWithMoveOnly) {
|
6423
|
+
Matcher<SampleOptional<std::unique_ptr<int>>> m = Optional(Eq(nullptr));
|
6424
|
+
EXPECT_TRUE(m.Matches(SampleOptional<std::unique_ptr<int>>(nullptr)));
|
6425
|
+
}
|
6426
|
+
|
6427
|
+
class SampleVariantIntString {
|
6428
|
+
public:
|
6429
|
+
SampleVariantIntString(int i) : i_(i), has_int_(true) {}
|
6430
|
+
SampleVariantIntString(const std::string& s) : s_(s), has_int_(false) {}
|
6431
|
+
|
6432
|
+
template <typename T>
|
6433
|
+
friend bool holds_alternative(const SampleVariantIntString& value) {
|
6434
|
+
return value.has_int_ == internal::IsSame<T, int>::value;
|
6435
|
+
}
|
6436
|
+
|
6437
|
+
template <typename T>
|
6438
|
+
friend const T& get(const SampleVariantIntString& value) {
|
6439
|
+
return value.get_impl(static_cast<T*>(nullptr));
|
6440
|
+
}
|
6441
|
+
|
6442
|
+
private:
|
6443
|
+
const int& get_impl(int*) const { return i_; }
|
6444
|
+
const std::string& get_impl(std::string*) const { return s_; }
|
6445
|
+
|
6446
|
+
int i_;
|
6447
|
+
std::string s_;
|
6448
|
+
bool has_int_;
|
6449
|
+
};
|
6450
|
+
|
6451
|
+
TEST(VariantTest, DescribesSelf) {
|
6452
|
+
const Matcher<SampleVariantIntString> m = VariantWith<int>(Eq(1));
|
6453
|
+
EXPECT_THAT(Describe(m), ContainsRegex("is a variant<> with value of type "
|
6454
|
+
"'.*' and the value is equal to 1"));
|
6455
|
+
}
|
6456
|
+
|
6457
|
+
TEST(VariantTest, ExplainsSelf) {
|
6458
|
+
const Matcher<SampleVariantIntString> m = VariantWith<int>(Eq(1));
|
6459
|
+
EXPECT_THAT(Explain(m, SampleVariantIntString(1)),
|
6460
|
+
ContainsRegex("whose value 1"));
|
6461
|
+
EXPECT_THAT(Explain(m, SampleVariantIntString("A")),
|
6462
|
+
HasSubstr("whose value is not of type '"));
|
6463
|
+
EXPECT_THAT(Explain(m, SampleVariantIntString(2)),
|
6464
|
+
"whose value 2 doesn't match");
|
6465
|
+
}
|
6466
|
+
|
6467
|
+
TEST(VariantTest, FullMatch) {
|
6468
|
+
Matcher<SampleVariantIntString> m = VariantWith<int>(Eq(1));
|
6469
|
+
EXPECT_TRUE(m.Matches(SampleVariantIntString(1)));
|
6470
|
+
|
6471
|
+
m = VariantWith<std::string>(Eq("1"));
|
6472
|
+
EXPECT_TRUE(m.Matches(SampleVariantIntString("1")));
|
6473
|
+
}
|
6474
|
+
|
6475
|
+
TEST(VariantTest, TypeDoesNotMatch) {
|
6476
|
+
Matcher<SampleVariantIntString> m = VariantWith<int>(Eq(1));
|
6477
|
+
EXPECT_FALSE(m.Matches(SampleVariantIntString("1")));
|
6478
|
+
|
6479
|
+
m = VariantWith<std::string>(Eq("1"));
|
6480
|
+
EXPECT_FALSE(m.Matches(SampleVariantIntString(1)));
|
6481
|
+
}
|
6482
|
+
|
6483
|
+
TEST(VariantTest, InnerDoesNotMatch) {
|
6484
|
+
Matcher<SampleVariantIntString> m = VariantWith<int>(Eq(1));
|
6485
|
+
EXPECT_FALSE(m.Matches(SampleVariantIntString(2)));
|
6486
|
+
|
6487
|
+
m = VariantWith<std::string>(Eq("1"));
|
6488
|
+
EXPECT_FALSE(m.Matches(SampleVariantIntString("2")));
|
6489
|
+
}
|
6490
|
+
|
6491
|
+
class SampleAnyType {
|
6492
|
+
public:
|
6493
|
+
explicit SampleAnyType(int i) : index_(0), i_(i) {}
|
6494
|
+
explicit SampleAnyType(const std::string& s) : index_(1), s_(s) {}
|
6495
|
+
|
6496
|
+
template <typename T>
|
6497
|
+
friend const T* any_cast(const SampleAnyType* any) {
|
6498
|
+
return any->get_impl(static_cast<T*>(nullptr));
|
6499
|
+
}
|
6500
|
+
|
6501
|
+
private:
|
6502
|
+
int index_;
|
6503
|
+
int i_;
|
6504
|
+
std::string s_;
|
6505
|
+
|
6506
|
+
const int* get_impl(int*) const { return index_ == 0 ? &i_ : nullptr; }
|
6507
|
+
const std::string* get_impl(std::string*) const {
|
6508
|
+
return index_ == 1 ? &s_ : nullptr;
|
6509
|
+
}
|
6510
|
+
};
|
6511
|
+
|
6512
|
+
TEST(AnyWithTest, FullMatch) {
|
6513
|
+
Matcher<SampleAnyType> m = AnyWith<int>(Eq(1));
|
6514
|
+
EXPECT_TRUE(m.Matches(SampleAnyType(1)));
|
6515
|
+
}
|
6516
|
+
|
6517
|
+
TEST(AnyWithTest, TestBadCastType) {
|
6518
|
+
Matcher<SampleAnyType> m = AnyWith<std::string>(Eq("fail"));
|
6519
|
+
EXPECT_FALSE(m.Matches(SampleAnyType(1)));
|
6520
|
+
}
|
6521
|
+
|
6522
|
+
TEST(AnyWithTest, TestUseInContainers) {
|
6523
|
+
std::vector<SampleAnyType> a;
|
6524
|
+
a.emplace_back(1);
|
6525
|
+
a.emplace_back(2);
|
6526
|
+
a.emplace_back(3);
|
6527
|
+
EXPECT_THAT(
|
6528
|
+
a, ElementsAreArray({AnyWith<int>(1), AnyWith<int>(2), AnyWith<int>(3)}));
|
6529
|
+
|
6530
|
+
std::vector<SampleAnyType> b;
|
6531
|
+
b.emplace_back("hello");
|
6532
|
+
b.emplace_back("merhaba");
|
6533
|
+
b.emplace_back("salut");
|
6534
|
+
EXPECT_THAT(b, ElementsAreArray({AnyWith<std::string>("hello"),
|
6535
|
+
AnyWith<std::string>("merhaba"),
|
6536
|
+
AnyWith<std::string>("salut")}));
|
6537
|
+
}
|
6538
|
+
TEST(AnyWithTest, TestCompare) {
|
6539
|
+
EXPECT_THAT(SampleAnyType(1), AnyWith<int>(Gt(0)));
|
6540
|
+
}
|
6541
|
+
|
6542
|
+
TEST(AnyWithTest, DescribesSelf) {
|
6543
|
+
const Matcher<const SampleAnyType&> m = AnyWith<int>(Eq(1));
|
6544
|
+
EXPECT_THAT(Describe(m), ContainsRegex("is an 'any' type with value of type "
|
6545
|
+
"'.*' and the value is equal to 1"));
|
6546
|
+
}
|
6547
|
+
|
6548
|
+
TEST(AnyWithTest, ExplainsSelf) {
|
6549
|
+
const Matcher<const SampleAnyType&> m = AnyWith<int>(Eq(1));
|
6550
|
+
|
6551
|
+
EXPECT_THAT(Explain(m, SampleAnyType(1)), ContainsRegex("whose value 1"));
|
6552
|
+
EXPECT_THAT(Explain(m, SampleAnyType("A")),
|
6553
|
+
HasSubstr("whose value is not of type '"));
|
6554
|
+
EXPECT_THAT(Explain(m, SampleAnyType(2)), "whose value 2 doesn't match");
|
6555
|
+
}
|
6556
|
+
|
6557
|
+
TEST(PointeeTest, WorksOnMoveOnlyType) {
|
6558
|
+
std::unique_ptr<int> p(new int(3));
|
6559
|
+
EXPECT_THAT(p, Pointee(Eq(3)));
|
6560
|
+
EXPECT_THAT(p, Not(Pointee(Eq(2))));
|
6561
|
+
}
|
6562
|
+
|
6563
|
+
TEST(NotTest, WorksOnMoveOnlyType) {
|
6564
|
+
std::unique_ptr<int> p(new int(3));
|
6565
|
+
EXPECT_THAT(p, Pointee(Eq(3)));
|
6566
|
+
EXPECT_THAT(p, Not(Pointee(Eq(2))));
|
6567
|
+
}
|
6568
|
+
|
6569
|
+
// Tests Args<k0, ..., kn>(m).
|
6570
|
+
|
6571
|
+
TEST(ArgsTest, AcceptsZeroTemplateArg) {
|
6572
|
+
const std::tuple<int, bool> t(5, true);
|
6573
|
+
EXPECT_THAT(t, Args<>(Eq(std::tuple<>())));
|
6574
|
+
EXPECT_THAT(t, Not(Args<>(Ne(std::tuple<>()))));
|
6575
|
+
}
|
6576
|
+
|
6577
|
+
TEST(ArgsTest, AcceptsOneTemplateArg) {
|
6578
|
+
const std::tuple<int, bool> t(5, true);
|
6579
|
+
EXPECT_THAT(t, Args<0>(Eq(std::make_tuple(5))));
|
6580
|
+
EXPECT_THAT(t, Args<1>(Eq(std::make_tuple(true))));
|
6581
|
+
EXPECT_THAT(t, Not(Args<1>(Eq(std::make_tuple(false)))));
|
6582
|
+
}
|
6583
|
+
|
6584
|
+
TEST(ArgsTest, AcceptsTwoTemplateArgs) {
|
6585
|
+
const std::tuple<short, int, long> t(4, 5, 6L); // NOLINT
|
6586
|
+
|
6587
|
+
EXPECT_THAT(t, (Args<0, 1>(Lt())));
|
6588
|
+
EXPECT_THAT(t, (Args<1, 2>(Lt())));
|
6589
|
+
EXPECT_THAT(t, Not(Args<0, 2>(Gt())));
|
6590
|
+
}
|
6591
|
+
|
6592
|
+
TEST(ArgsTest, AcceptsRepeatedTemplateArgs) {
|
6593
|
+
const std::tuple<short, int, long> t(4, 5, 6L); // NOLINT
|
6594
|
+
EXPECT_THAT(t, (Args<0, 0>(Eq())));
|
6595
|
+
EXPECT_THAT(t, Not(Args<1, 1>(Ne())));
|
6596
|
+
}
|
6597
|
+
|
6598
|
+
TEST(ArgsTest, AcceptsDecreasingTemplateArgs) {
|
6599
|
+
const std::tuple<short, int, long> t(4, 5, 6L); // NOLINT
|
6600
|
+
EXPECT_THAT(t, (Args<2, 0>(Gt())));
|
6601
|
+
EXPECT_THAT(t, Not(Args<2, 1>(Lt())));
|
6602
|
+
}
|
6603
|
+
|
6604
|
+
MATCHER(SumIsZero, "") {
|
6605
|
+
return std::get<0>(arg) + std::get<1>(arg) + std::get<2>(arg) == 0;
|
6606
|
+
}
|
6607
|
+
|
6608
|
+
TEST(ArgsTest, AcceptsMoreTemplateArgsThanArityOfOriginalTuple) {
|
6609
|
+
EXPECT_THAT(std::make_tuple(-1, 2), (Args<0, 0, 1>(SumIsZero())));
|
6610
|
+
EXPECT_THAT(std::make_tuple(1, 2), Not(Args<0, 0, 1>(SumIsZero())));
|
6611
|
+
}
|
6612
|
+
|
6613
|
+
TEST(ArgsTest, CanBeNested) {
|
6614
|
+
const std::tuple<short, int, long, int> t(4, 5, 6L, 6); // NOLINT
|
6615
|
+
EXPECT_THAT(t, (Args<1, 2, 3>(Args<1, 2>(Eq()))));
|
6616
|
+
EXPECT_THAT(t, (Args<0, 1, 3>(Args<0, 2>(Lt()))));
|
6617
|
+
}
|
6618
|
+
|
6619
|
+
TEST(ArgsTest, CanMatchTupleByValue) {
|
6620
|
+
typedef std::tuple<char, int, int> Tuple3;
|
6621
|
+
const Matcher<Tuple3> m = Args<1, 2>(Lt());
|
6622
|
+
EXPECT_TRUE(m.Matches(Tuple3('a', 1, 2)));
|
6623
|
+
EXPECT_FALSE(m.Matches(Tuple3('b', 2, 2)));
|
6624
|
+
}
|
6625
|
+
|
6626
|
+
TEST(ArgsTest, CanMatchTupleByReference) {
|
6627
|
+
typedef std::tuple<char, char, int> Tuple3;
|
6628
|
+
const Matcher<const Tuple3&> m = Args<0, 1>(Lt());
|
6629
|
+
EXPECT_TRUE(m.Matches(Tuple3('a', 'b', 2)));
|
6630
|
+
EXPECT_FALSE(m.Matches(Tuple3('b', 'b', 2)));
|
6631
|
+
}
|
6632
|
+
|
6633
|
+
// Validates that arg is printed as str.
|
6634
|
+
MATCHER_P(PrintsAs, str, "") {
|
6635
|
+
return testing::PrintToString(arg) == str;
|
6636
|
+
}
|
6637
|
+
|
6638
|
+
TEST(ArgsTest, AcceptsTenTemplateArgs) {
|
6639
|
+
EXPECT_THAT(std::make_tuple(0, 1L, 2, 3L, 4, 5, 6, 7, 8, 9),
|
6640
|
+
(Args<9, 8, 7, 6, 5, 4, 3, 2, 1, 0>(
|
6641
|
+
PrintsAs("(9, 8, 7, 6, 5, 4, 3, 2, 1, 0)"))));
|
6642
|
+
EXPECT_THAT(std::make_tuple(0, 1L, 2, 3L, 4, 5, 6, 7, 8, 9),
|
6643
|
+
Not(Args<9, 8, 7, 6, 5, 4, 3, 2, 1, 0>(
|
6644
|
+
PrintsAs("(0, 8, 7, 6, 5, 4, 3, 2, 1, 0)"))));
|
6645
|
+
}
|
6646
|
+
|
6647
|
+
TEST(ArgsTest, DescirbesSelfCorrectly) {
|
6648
|
+
const Matcher<std::tuple<int, bool, char> > m = Args<2, 0>(Lt());
|
6649
|
+
EXPECT_EQ("are a tuple whose fields (#2, #0) are a pair where "
|
6650
|
+
"the first < the second",
|
6651
|
+
Describe(m));
|
6652
|
+
}
|
6653
|
+
|
6654
|
+
TEST(ArgsTest, DescirbesNestedArgsCorrectly) {
|
6655
|
+
const Matcher<const std::tuple<int, bool, char, int>&> m =
|
6656
|
+
Args<0, 2, 3>(Args<2, 0>(Lt()));
|
6657
|
+
EXPECT_EQ("are a tuple whose fields (#0, #2, #3) are a tuple "
|
6658
|
+
"whose fields (#2, #0) are a pair where the first < the second",
|
6659
|
+
Describe(m));
|
6660
|
+
}
|
6661
|
+
|
6662
|
+
TEST(ArgsTest, DescribesNegationCorrectly) {
|
6663
|
+
const Matcher<std::tuple<int, char> > m = Args<1, 0>(Gt());
|
6664
|
+
EXPECT_EQ("are a tuple whose fields (#1, #0) aren't a pair "
|
6665
|
+
"where the first > the second",
|
6666
|
+
DescribeNegation(m));
|
6667
|
+
}
|
6668
|
+
|
6669
|
+
TEST(ArgsTest, ExplainsMatchResultWithoutInnerExplanation) {
|
6670
|
+
const Matcher<std::tuple<bool, int, int> > m = Args<1, 2>(Eq());
|
6671
|
+
EXPECT_EQ("whose fields (#1, #2) are (42, 42)",
|
6672
|
+
Explain(m, std::make_tuple(false, 42, 42)));
|
6673
|
+
EXPECT_EQ("whose fields (#1, #2) are (42, 43)",
|
6674
|
+
Explain(m, std::make_tuple(false, 42, 43)));
|
6675
|
+
}
|
6676
|
+
|
6677
|
+
// For testing Args<>'s explanation.
|
6678
|
+
class LessThanMatcher : public MatcherInterface<std::tuple<char, int> > {
|
6679
|
+
public:
|
6680
|
+
void DescribeTo(::std::ostream* /*os*/) const override {}
|
6681
|
+
|
6682
|
+
bool MatchAndExplain(std::tuple<char, int> value,
|
6683
|
+
MatchResultListener* listener) const override {
|
6684
|
+
const int diff = std::get<0>(value) - std::get<1>(value);
|
6685
|
+
if (diff > 0) {
|
6686
|
+
*listener << "where the first value is " << diff
|
6687
|
+
<< " more than the second";
|
6688
|
+
}
|
6689
|
+
return diff < 0;
|
6690
|
+
}
|
6691
|
+
};
|
6692
|
+
|
6693
|
+
Matcher<std::tuple<char, int> > LessThan() {
|
6694
|
+
return MakeMatcher(new LessThanMatcher);
|
6695
|
+
}
|
6696
|
+
|
6697
|
+
TEST(ArgsTest, ExplainsMatchResultWithInnerExplanation) {
|
6698
|
+
const Matcher<std::tuple<char, int, int> > m = Args<0, 2>(LessThan());
|
6699
|
+
EXPECT_EQ(
|
6700
|
+
"whose fields (#0, #2) are ('a' (97, 0x61), 42), "
|
6701
|
+
"where the first value is 55 more than the second",
|
6702
|
+
Explain(m, std::make_tuple('a', 42, 42)));
|
6703
|
+
EXPECT_EQ("whose fields (#0, #2) are ('\\0', 43)",
|
6704
|
+
Explain(m, std::make_tuple('\0', 42, 43)));
|
6705
|
+
}
|
6706
|
+
|
6707
|
+
class PredicateFormatterFromMatcherTest : public ::testing::Test {
|
6708
|
+
protected:
|
6709
|
+
enum Behavior { kInitialSuccess, kAlwaysFail, kFlaky };
|
6710
|
+
|
6711
|
+
// A matcher that can return different results when used multiple times on the
|
6712
|
+
// same input. No real matcher should do this; but this lets us test that we
|
6713
|
+
// detect such behavior and fail appropriately.
|
6714
|
+
class MockMatcher : public MatcherInterface<Behavior> {
|
6715
|
+
public:
|
6716
|
+
bool MatchAndExplain(Behavior behavior,
|
6717
|
+
MatchResultListener* listener) const override {
|
6718
|
+
*listener << "[MatchAndExplain]";
|
6719
|
+
switch (behavior) {
|
6720
|
+
case kInitialSuccess:
|
6721
|
+
// The first call to MatchAndExplain should use a "not interested"
|
6722
|
+
// listener; so this is expected to return |true|. There should be no
|
6723
|
+
// subsequent calls.
|
6724
|
+
return !listener->IsInterested();
|
6725
|
+
|
6726
|
+
case kAlwaysFail:
|
6727
|
+
return false;
|
6728
|
+
|
6729
|
+
case kFlaky:
|
6730
|
+
// The first call to MatchAndExplain should use a "not interested"
|
6731
|
+
// listener; so this will return |false|. Subsequent calls should have
|
6732
|
+
// an "interested" listener; so this will return |true|, thus
|
6733
|
+
// simulating a flaky matcher.
|
6734
|
+
return listener->IsInterested();
|
6735
|
+
}
|
6736
|
+
|
6737
|
+
GTEST_LOG_(FATAL) << "This should never be reached";
|
6738
|
+
return false;
|
6739
|
+
}
|
6740
|
+
|
6741
|
+
void DescribeTo(ostream* os) const override { *os << "[DescribeTo]"; }
|
6742
|
+
|
6743
|
+
void DescribeNegationTo(ostream* os) const override {
|
6744
|
+
*os << "[DescribeNegationTo]";
|
6745
|
+
}
|
6746
|
+
};
|
6747
|
+
|
6748
|
+
AssertionResult RunPredicateFormatter(Behavior behavior) {
|
6749
|
+
auto matcher = MakeMatcher(new MockMatcher);
|
6750
|
+
PredicateFormatterFromMatcher<Matcher<Behavior>> predicate_formatter(
|
6751
|
+
matcher);
|
6752
|
+
return predicate_formatter("dummy-name", behavior);
|
6753
|
+
}
|
6754
|
+
};
|
6755
|
+
|
6756
|
+
TEST_F(PredicateFormatterFromMatcherTest, ShortCircuitOnSuccess) {
|
6757
|
+
AssertionResult result = RunPredicateFormatter(kInitialSuccess);
|
6758
|
+
EXPECT_TRUE(result); // Implicit cast to bool.
|
6759
|
+
std::string expect;
|
6760
|
+
EXPECT_EQ(expect, result.message());
|
6761
|
+
}
|
6762
|
+
|
6763
|
+
TEST_F(PredicateFormatterFromMatcherTest, NoShortCircuitOnFailure) {
|
6764
|
+
AssertionResult result = RunPredicateFormatter(kAlwaysFail);
|
6765
|
+
EXPECT_FALSE(result); // Implicit cast to bool.
|
6766
|
+
std::string expect =
|
6767
|
+
"Value of: dummy-name\nExpected: [DescribeTo]\n"
|
6768
|
+
" Actual: 1, [MatchAndExplain]";
|
6769
|
+
EXPECT_EQ(expect, result.message());
|
6770
|
+
}
|
6771
|
+
|
6772
|
+
TEST_F(PredicateFormatterFromMatcherTest, DetectsFlakyShortCircuit) {
|
6773
|
+
AssertionResult result = RunPredicateFormatter(kFlaky);
|
6774
|
+
EXPECT_FALSE(result); // Implicit cast to bool.
|
6775
|
+
std::string expect =
|
6776
|
+
"Value of: dummy-name\nExpected: [DescribeTo]\n"
|
6777
|
+
" The matcher failed on the initial attempt; but passed when rerun to "
|
6778
|
+
"generate the explanation.\n"
|
6779
|
+
" Actual: 2, [MatchAndExplain]";
|
6780
|
+
EXPECT_EQ(expect, result.message());
|
6781
|
+
}
|
6782
|
+
|
6783
|
+
} // namespace
|
5651
6784
|
} // namespace gmock_matchers_test
|
5652
6785
|
} // namespace testing
|
6786
|
+
|
6787
|
+
#ifdef _MSC_VER
|
6788
|
+
# pragma warning(pop)
|
6789
|
+
#endif
|