Finally, I added new TAP test library PsqlSession.
At Tue, 18 Jul 2017 18:12:13 +0900 (Tokyo Standard Time), Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp> wrote in
<20170718.181213.206979369.horiguchi.kyotaro@lab.ntt.co.jp>
> > * How about some regression test cases? You couldn't really exercise
> > cross-session invalidation easily, but I don't think you need to.
>
> Ha Ha. You got me. I will add some test cases for this in the
> next version. Thanks.
Here it is. First I tried this using ordinary regression
framework but the effect of this patch is shown only in log and
it contains variable parts so I gave up it before trying more
complex way.
Next I tried existing TAP test but this test needs continuous
session to achieve alternating operation on two sessions but
PostgresNode::psql doesn't offer such a functionality.
Finally, I added a new TAP test library PsqlSession. It offers
interactive psql sessions. Then added a simple test to
postgres_fdw using it.
The first patch is the PsqlSession.pm and the second is the new
test for postgres_fdw.
- The current PsqlSession is quite fragile but seems working enough for this usage at the present.
- I'm afraid this might not work on Windows according to the manpage of IPC::Run, but I haven't confirmed yet.
http://search.cpan.org/~toddr/IPC-Run-0.96/lib/IPC/Run.pm#Win32_LIMITATIONS
Any comment or suggestions are welcome.
regards,
--
Kyotaro Horiguchi
NTT Open Source Software Center