Bug 157604 [Jobs] The following rule does not apply: Don't swallow InterruptedException. Call Thread.currentThread().interrupt()
examples/org.eclipse.ui.examples.job/src/org/eclipse/ui/examples/jobs/UITestJob.java
if (lock)
			setRule(ResourcesPlugin.getWorkspace().getRoot());
	}
	public IStatus runInUIThread(IProgressMonitor monitor) {
		if (failure)
			throw new RuntimeException();
		final long sleep = 10;
		int ticks = (int) (duration / sleep);
		if(unknown)
			monitor.beginTask(toString(), IProgressMonitor.UNKNOWN);
		else
			monitor.beginTask(toString(), ticks);
		try {
			for (int i = 0; i < ticks; i++) {
				if (monitor.isCanceled())
					return Status.CANCEL_STATUS;
				monitor.subTask("Processing tick #" + i); 
				try {
					Thread.sleep(sleep);
				} catch (InterruptedException e) {
					Thread.interrupted();
				}
				monitor.worked(1);
			}
		} finally {
			monitor.done();
		}
		return Status.OK_STATUS;
	}
}