at training time, the test data might not be available; still, we might want to train then save a model.
The test data not being there also enforces that it is not "leaking" in any way to the training data
at production usage time, only the test data might be available (we are reloading a trained model,
the training data is no more around)
I am dreaming, right?