quicktest:
$(TAHOE) debug trial $(TRIALARGS) $(TEST)
+# "make tmpfstest" may be a faster way of running tests on Linux. It works best when you have
+# at least 330 MiB of free physical memory (to run the whole test suite). Since it uses sudo
+# to mount/unmount the tmpfs filesystem, it might prompt for your password.
+tmpfstest:
+ time make _tmpfstest 'TMPDIR=$(shell mktemp -d --tmpdir=.)'
+
+_tmpfstest:
+ sudo mount -t tmpfs -o size=330m tmpfs '$(TMPDIR)'
+ -$(TAHOE) debug trial --rterrors '--temp-directory=$(TMPDIR)/_trial_temp' $(TRIALARGS) $(TEST)
+ sudo umount '$(TMPDIR)'
+ rmdir '$(TMPDIR)'
+
# code-coverage: install the "coverage" package from PyPI, do "make
# quicktest-coverage" to do a unit test run with coverage-gathering enabled,
# then use "make coverate-output-text" for a brief report, or "make
if os.path.basename(root_from_cwd) == 'src':
root_from_cwd = os.path.dirname(root_from_cwd)
+ # This is needed if we are running in a temporary directory created by 'make tmpfstest'.
+ if os.path.basename(root_from_cwd).startswith('tmp'):
+ root_from_cwd = os.path.dirname(root_from_cwd)
+
same = (root_from_cwd == root_to_check)
if not same:
try:
if os.path.basename(root_from_cwdu) == u'src':
root_from_cwdu = os.path.dirname(root_from_cwdu)
+ # This is needed if we are running in a temporary directory created by 'make tmpfstest'.
+ if os.path.basename(root_from_cwdu).startswith(u'tmp'):
+ root_from_cwdu = os.path.dirname(root_from_cwdu)
+
if not isinstance(root_from_cwd, unicode) and root_from_cwd.decode(get_filesystem_encoding(), 'replace') != root_from_cwdu:
msg += ("However, this may be a false alarm because the current directory path\n"
"is not representable in the filesystem encoding. Please run the tests\n"