> If I'm creating an HTTP API and someone else is writing the front-end, I'll create unit tests that spin up my API and make requests to it to ensure I get the correct responses.
That's not unit test though, rather integration or system test.
I don't think TDD actually makes that distinction. As long as you have a test and you write test before you write production code, you are doing TDD.
It's actually very comubersome to do pure unit test when you have multiple layers involved, as opposed to a plain textbook algorithm design where unit test is trivial.
That's not unit test though, rather integration or system test.