go:
	# These two lines check for program errors and stylistic issues.
	# If they aren't working on your system, you can safely
	# comment them out.
	./this-pylint --to-pylint cp-stat
	pep8 --max-line-length=132 cp-stat
	@echo
	# Copy forward
	touch from-file1
	touch -m -d '2004-01-01 00:00:00' to-file1
	! ./test-mtimes-equal from-file1 to-file1 2> /dev/null
	./cp-stat --verbose --source from-file1 --dest to-file1
	./test-mtimes-equal from-file1 to-file1
	[ "$$(cat from-file1)" != "$$(cat from-file2)" ]
	@echo
	# Copy backward
	touch -m -d '2004-02-29 00:00:00' from-file2
	touch to-file2
	! ./test-mtimes-equal from-file2 to-file2 2> /dev/null
	./cp-stat --source from-file2 --dest to-file2
	./test-mtimes-equal from-file2 to-file2
	@echo
	# Copy to nonexistent
	touch -m -d '2004-02-29 00:00:00' from-file3
	rm -f to-file3
	./cp-stat -v --source from-file3 --dest to-file3
	! [ -f to-file3 ]
	@echo
	@echo All tests passed