Commit graph

18 commits

Author SHA1 Message Date
Dan Kubb
e13d5beb32 Change /dev/null to be opened with File::WRONLY constant 2015-07-29 15:52:57 -07:00
Dan Kubb
ea5d605298 Fix the writer pipe to execute in binary mode
* For some reason IO.pipe(binmode: true) inexplicably sets the *reader*
  pipe to binary mode only. The writer pipe needs to be set explicitly.
2015-07-29 15:51:39 -07:00
Dan Kubb
63c586f6bb Change Mutant::Isolation.call to use block form of IO.pipe
* The block form automatically closes the reader and writer if they have
  not already been closed. This prevents resource leakage if the method
  exits due to an exception.
* Refactor specs to have common setup performed in a before block.
2015-07-23 13:45:43 -07:00
Markus Schirp
4bd15abeb6 Fix positioning of @api YARD tag 2015-07-02 03:35:54 +00:00
Markus Schirp
2ce02af8aa Fix style 2014-12-22 01:32:51 +00:00
Markus Schirp
f700f67977 Put isolation pipes into binmode 2014-12-08 22:57:53 +00:00
Markus Schirp
e08d3b6b80 Use actor based parallelization 2014-11-30 23:11:01 +00:00
Markus Schirp
511702af4c Add line coverage for forked block via intercepting fork 2014-11-17 16:23:12 +00:00
Markus Schirp
220ce47187 Ensure Process.widpid call happens in presence of killfork exceptions 2014-10-28 10:57:09 +00:00
Markus Schirp
5d9e6fea71 Remove parallel use for isolation
* Parallel is not thread save, causing all sorts of issues when nesting.
2014-10-24 21:34:34 +00:00
Markus Schirp
8c4e7cc665 Prefer block pass over explicit block 2014-08-11 15:11:22 +00:00
Tim Chambers
fe72c94b94 Fix miscellaneous typos
Mostly in comments and documentation, but one method name was corrected to match documentation.
2014-08-07 09:00:31 -07:00
Markus Schirp
dec1a39eb5 Move isolation into config object
Also add Isolation::None for testing.
2014-07-06 02:17:28 +00:00
Markus Schirp
41d9700473 Refactor runer infrastructure
* Nuke around 800 lock
* Honor LSP with not anymore squeezing something non LSP compatible in
  the same inheritance tree.
* Separate running from result tree.
* Clean up kill logic and early exits on already dead mutations.
* Fix #runnin? smell for reporters.
* Decouple config object from VM state. Makes it serializable to enable
  config loading.
* Fix sequence of global VM events to match PRIOR rspec infects VM with
  gazillions of classes / modules. Thix fixes a startup speed
  degeneration.
* Various fixes to enhance determinism.
* Replace some unneded manual double dispatch with single manual dispatch for
  reporter / runners.
2014-07-05 23:04:38 +00:00
Markus Schirp
c6a509edd5 Remove unneded block args 2014-06-25 17:40:28 +00:00
Markus Schirp
8fd9743742 Use parallel gem for isolation and signalling
The code looks solid and it does not make too much sense to duplicate
the efford into a better version when I would mostly change the code
style, not the effective sequence / composition of syscalls.
2014-06-25 00:14:16 +00:00
Markus Schirp
822ddd799f Make non mri specific specs pass under RBX 2014-06-08 19:51:04 +00:00
Markus Schirp
f0af3bd301 Move isolation to namespaced module 2014-06-08 17:55:54 +00:00