> The fact that tests test arbitrary things should be enough for you to reconsider what you're saying. You can't possibly know if I'm "totally incorrect".
You'll have to explain, then, the significant difference between:
test_one:
lots of setup code for scenario one
assertions
test_two:
lots of setup code for scenario two
assertions
where test_two only runs after test_one;
and:
test_one:
lots of setup code for scenario one
assertions
test_two:
lots of setup code for scenario one
lots of setup code for scenario two
assertions
Of course, if the same "setup code for scenario one" running twice breaks things, then so would "running the suite twice", sure.
> I'm talking about the code being tested having global state that is deeply entrenched in how it works
"code being tested having global state that is deeply entrenched in how it works" does fall under "sharing state between tests".