I agree that if it is only going to be used by the one test file you might as well leave it in that file. If there's a way to abstract it so it's useful to more than one test, then it certainly belongs in util.js. Maybe we could do some sort of click/drag simulation util that can work on either the viewer or the navigator?

I don't feel strongly about percentage versus pixels, or forcing it to stay inside the bounds. Feel free to refactor my code. I suppose if we find both modes are used a lot, we could make them options on the function.