[ruby-list:50618] Re: Kernel.open の stub 方法
From:
UEDA Hiroyuki <bsdmad@...>
Date:
2017-12-11 11:04:41 UTC
List:
ruby-list #50618
44GG44GI44Gg44Go55Sz44GX44G+44GZ44CCDQoNCndlYm1vY2sg44Go44GE44GGIGdlbSDjgafn p4Hjga7jgoTjgorjgZ/jgYTjgZPjgajjgYzlrp/nj77jgafjgY3jgb7jgZfjgZ/jga7jgafjgIEN CuS7iuWbnuOBr+OCs+ODrOOBp+OBhOOBk+OBhuOBqOaAneOBhOOBvuOBmeOAguWQjOOBmOOCiOOB huOBquODqeOCpOODluODqeODquOCkuikh+aVsOOAgQ0K5L2/44GG44Gu44Gv44Gh44KH44Gj44Go 5aaZ44Gq5rCX44KC44GX44G+44GZ44GM4oCmDQoNCg0K5Lul5LiK44Gn44GZ44CCDQoNCg0KDQoy MDE3LTEyLTA5IDIxOjQwIEdNVCswOTowMCBVRURBIEhpcm95dWtpIDxic2RtYWRAZ21haWwuY29t PjoNCj4g44GG44GI44GgIOOBqOeUs+OBl+OBvuOBmeOAgg0KPg0KPiBSYWlscyDjgacgUmVkbWlu ZSDjgYvjgonjg4HjgrHjg4Pjg4jjgpLkuIDmi6zlj5blvpfjgZfjgablh6bnkIbjgZnjgovjgrPj g7zjg4njgpLmm7jjgYTjgabjgYTjgb7jgZnjgIINCj4g5YuV5L2c6Ieq5L2T44Gv5oOz5a6a6YCa 44KK44Gq44Gu44Gn44GZ44GM44CB44GT44KM44KS44OG44K544OI44GZ44G544GPIG1vY2hhIOOC kuS9v+OBo+OBpiBLZXJuZWwg44GuDQo+IG9wZW4g44Oh44K944OD44OJ44KSIHN0dWIg5YyW44GX 44Gm44G/44Gf44KC44Gu44Gu44CB6Ieq5YiG44GM5oCd44Gj44Gf44KI44GG44Gr44Gq44KK44G+ 44Gb44KT44CCDQo+DQo+IOOCs+ODvOODieOBr+S7peS4i+OBruOCiOOBhuOBq+OBquOBo+OBpuOB hOOBvuOBme+8iOaKnOeyi+OBp+OBme+8ieOAgg0KPg0KPg0KPiAtLS0tLS0tLS0tIGxpYi9pbnRl cmZhY2VzL3JlZG1pbmUvYmFzZS5yYiAtLS0tLS0tLS0tDQo+ICMgY29kaW5nOiB1dGYtOA0KPiAj DQo+IHJlcXVpcmUgJ29wZW4tdXJpJw0KPiByZXF1aXJlICduZXQvaHR0cCcNCj4gcmVxdWlyZSAn anNvbicNCj4gcmVxdWlyZSAnZGF0ZScNCj4NCj4gbW9kdWxlIEludGVyZmFjZXMNCj4gICBtb2R1 bGUgUmVkbWluZQ0KPiAgICAgY2xhc3MgQmFzZQ0KPg0KPiAgICAgICBkZWYgc2VsZi5zZWFyY2go dXJpLCB0YXJnZXQsIG9mZnNldCA9IC0xMDAsIGxpbWl0ID0gMTAwKQ0KPiAgICAgICAgIGxpc3Qg ICAgICAgID0gW10NCj4gICAgICAgICB0b3RhbCAgICAgICA9IG5pbA0KPiAgICAgICAgIG1heF90 aHJlYWRzID0gOA0KPiAgICAgICAgIHRocmVhZHMgICAgID0gW10NCj4gICAgICAgICBtICAgICAg ICAgICA9IE11dGV4Lm5ldw0KPg0KPiAgICAgICAgIG1heF90aHJlYWRzLnRpbWVzIGRvIHxudW1f dGhyZWFkfA0KPiAgICAgICAgICAgdGhyZWFkcyA8PCBUaHJlYWQuc3RhcnQobnVtX3RocmVhZCkg ZG8gfGl8DQo+ICAgICAgICAgICAgIHdoaWxlIHRydWUNCj4gICAgICAgICAgICAgICBtLnN5bmNo cm9uaXplIHsgb2Zmc2V0ICs9IGxpbWl0IH0NCj4gICAgICAgICAgICAgICBicmVhayBpZiB0b3Rh bCAmJiBvZmZzZXQgPiB0b3RhbA0KPg0KPiAgICAgICAgICAgICAgIG9wZW4oIiN7VVJMfS8je3Vy aX0mYW1wO2tleT0je0FQSV9LRVl9JmFtcDtpbmNsdWRlPXJlbGF0aW9ucyZhbXA7b2Zmc2V0PSN7 b2Zmc2V0fSZhbXA7bGltaXQ9I3tsaW1pdH0iKQ0KPiB7IHxpb3wNCj4gICAgICAgICAgICAgICAg IGRhdGEgPSBKU09OLnBhcnNlKGlvLnJlYWQpDQo+ICAgICAgICAgICAgICAgICBsaXN0IDw8IGRh dGFbdGFyZ2V0XQ0KPiAgICAgICAgICAgICAgICAgdG90YWwgPSBkYXRhWyJ0b3RhbF9jb3VudCJd DQo+ICAgICAgICAgICAgICAgfQ0KPiAgICAgICAgICAgICAgIHJhaXNlICJUb28gbWFueSB0aHJl YWRzIiBpZiBvZmZzZXQgPiA5OTk5OTkNCj4gICAgICAgICAgICAgZW5kDQo+ICAgICAgICAgICBl bmQNCj4gICAgICAgICBlbmQNCj4gICAgICAgICB0aHJlYWRzLmVhY2gge3x0aHwgdGguam9pbn0N Cj4NCj4gICAgICAgICBsaXN0LmZsYXR0ZW4NCj4gICAgICAgZW5kDQo+ICAgICBlbmQNCj4gICBl bmQNCj4gZW5kDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4NCj4gLS0tLS0tLS0tLSB0ZXN0L2xpYi9p bnRlcmZhY2VzL3JlZG1pbmUvYmFzZV90ZXN0LnJiIC0tLS0tLS0tLS0NCj4gIyBjb2Rpbmc6IHV0 Zi04DQo+IHJlcXVpcmUgJ3Rlc3RfaGVscGVyJw0KPg0KPiBjbGFzcyBSZWRtaW5lQmFzZVRlc3Qg PCBBY3RpdmVTdXBwb3J0OjpUZXN0Q2FzZQ0KPiAgIHRlc3QgJ3Nob3VsZCBzZWFyY2ggY29ycmVj bHR5JyBkbw0KPiAgICAgZGF0YSA9IHt0b3RhbF9jb3VudDogMTAsIGlzc3VlczogJXcoYSBiIGMg ZCBlIGYgZyBoIGkgail9LnRvX2pzb24NCj4gICAgIE9wZW5VUkkuc3R1YnMoOm9wZW5fdXJpKS5y ZXR1cm5zKFN0cmluZ0lPLm5ldyhkYXRhKSkNCj4NCj4gICAgIHB1dHMgZGF0YQ0KPg0KPiAgICAg YXNzZXJ0X2VxdWFsIGRhdGFbJ2lzc3VlcyddLA0KPiBJbnRlcmZhY2VzOjpSZWRtaW5lOjpCYXNl LnNlYXJjaCgnL3Byb2plY3RzL3Rlc3QnLCAnaXNzdWVzJykNCj4gICBlbmQNCj4gZW5kDQo+IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCj4NCj4g44GT44KM44KS5a6f6KGM44GZ44KL44Go44CBc3R1YiDjgavj gojjgaPjgablrp/pmpvjga4gUmVkbWluZSDjgrXjg7zjg5Djgbjjga7jgqLjgq/jgrvjgrnjga8N Cj4g6KGM44KP44KM44Gq44GE44KC44Gu44Gu44CBb3BlbiDjgZfjgZ/ntZDmnpzjgYzkvZXjgoLo v5TjgaPjgabjgZPjgarjgYTjgZ/jgoHjgasgZXhjZXB0aW9uIOOBjA0KPiByYWlzZSDjgZXjgozj gabjgZfjgb7jgYTjgb7jgZnjgIINCj4NCj4gJCBiaW4vcmFrZSB0ZXN0IFRFU1Q9InRlc3QvbGli L2ludGVyZmFjZXMvcmVkbWluZS9iYXNlX3Rlc3QucmIiDQo+IFJ1bm5pbmcgdmlhIFNwcmluZyBw cmVsb2FkZXIgaW4gcHJvY2VzcyA1MTY1Nw0KPiBMb2FkZWQgc3VpdGUgdGVzdA0KPiBTdGFydGVk DQo+IC4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4ueyJ0b3RhbF9jb3Vu dCI6MTAsImlzc3VlcyI6WyJhIiwiYiIsImMiLCJkIiwiZSIsImYiLCJnIiwiaCIsImkiLCJqIl19 DQo+IEUNCj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiBF cnJvcjogdGVzdDogc2hvdWxkIHNlYXJjaCBjb3JyZWNsdHkoUmVkbWluZUJhc2VUZXN0KTogUnVu dGltZUVycm9yOg0KPiBUb28gbWFueSB0aHJlYWRzDQo+IC9wYXRoL3RvL3Byb2plY3QvbGliL2lu dGVyZmFjZXMvcmVkbWluZS9iYXNlLnJiOjM3OmluIGBibG9jayAoMg0KPiBsZXZlbHMpIGluIHNl YXJjaCcNCj4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiAu Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4u Li4uLi4uLi4uLi4uLi4NCj4NCj4NCj4g44GK5YiG44GL44KK44Gr44Gq44KL44GM44GE44KJ44Gj 44GX44KD44GE44G+44GX44Gf44KJ44CB56eB44GM5oOz5a6a44GX44Gm44GE44KL44OG44K544OI 44Kx44O844K544KSDQo+IOODkeOCueOBleOBm+OCi+OCiOOBhuOBqiBzdHViIOOBruabuOOBjeaW ue+8iOOBruWVj+mhjOOBp+OBl+OCh+OBhuOBi+KApu+8n++8ieOCkuOBlOaVmeekuuOBhOOBn+OB oA0KPiDjgZHjgozjgbDlubjjgYTjgafjgZnjgIINCj4NCj4NCj4g44Gp44GG44Ge44KI44KN44GX 44GP44GK6aGY44GE44GE44Gf44GX44G+44GZ44CCDQo+DQo+IC0tDQo+IFVFREEgIkJTRCBtYWQi IEhpcm95dWtpIDxic2RtYWRAZ21haWwuY29tPg0KDQoNCg0KLS0gDQpVRURBICJCU0QgbWFkIiBI aXJveXVraSA8YnNkbWFkQGdtYWlsLmNvbT4NCg==