TL;DR^WABSTRACT:
- Is it safe to bundle Test::TempDir::Tiny or similar in EUMs t/tlib?
- I would really like it and it would make such testing cleanly much
better, wow.

---

I'm just going to scratch this together here since the varied
discussions on IRC probably haven't seen the right people and this is
contributing to the stall.

First and foremost: ExtUtils::Manifest has an ungainly unmaintainable
test suite.

It does a lot of IO, and every test ( of which there are a few hundred
) relies on the exit condition of the one before it.

This makes doing any useful changes problematic in a plethora of ways.

In an ideal situation, tests should be grouped in atomic batches,
state created, the test performed, and the state destroyed.

Naturally, File::Temp and friends are desired.

But here, this creates a potential defect when a test fails, because
the state becomes lost in closure.

Which is why I seek to perform something similar to
Test::TempDir::Tiny, where failure state is preserved on failure in
the temporary directory.

I also seek to split the test suite into multiple test files, each
with batches of atomic logic.

This, naturally, also requires a TempDir of some description, because
simply splitting the current tests across several files creates
guaranteed race conditions.


However, the problem(s) at present with that approach is the dependencies.

TTDT is all core-deps, but some of them might require XS ( Not sure
what Cwd requires ).

I'm glad to see it no longer uses Time::HiRes though, which greatly pleases me.


-- 
Kent

KENTNL - https://metacpan.org/author/KENTNL

Reply via email to