On Saturday 20 October 2001 11:54, you wrote: > So why is this tested using a mock-up by Net::Config? Sounds like > a job the Socket should be testing (and it is).
Oh, no! It's not. Mock::Socket is just a dummy object with the same interface as Socket. It lets the test control the data sent back to Net::Config. The test doesn't care whether or not Socket works. That's *way* out of the scope of Net::Config. The real Socket.pm should never be loaded. (The test also doesn't care whether or not t/op/var.t fails, for example. So it's not as bad as it sounds. If most everything is properly tested in isolation, it's *much* easier to find the one broken thing.) > That the tests tells us "tests 3, 17, 18, and 22 were skipped because > you do not seem to have an environment the test expects" is a nice > tidbit for the installer to know, but will that help the users if the > matter is not permanently documented? If the detailed test results > were *recorded* somewhere in the installation, they would be much more > useful: "Note that feature blartz does not work in GoofOS, because ..." Perhaps Test::Harness should capture skip messages and append them to a POD somewhere? I'm happy to work on this if it's a good idea. "You appear to be running $^O. The following tests were skipped. This does not guarantee the modules will not run on your system, but it is a pretty good indication that you are on your own." > > The best we can do is establish a baseline of behavior that ought to work > > on all platforms. If it throws up red flags and makes someone *think* > > about > > I hope you have noticed that the baseline is rather low. As long as it's marked... :) -- c