summaryrefslogtreecommitdiffstats
path: root/report/chapters/4-testing.tex
diff options
context:
space:
mode:
Diffstat (limited to 'report/chapters/4-testing.tex')
-rw-r--r--report/chapters/4-testing.tex66
1 files changed, 33 insertions, 33 deletions
diff --git a/report/chapters/4-testing.tex b/report/chapters/4-testing.tex
index 43febd7..fb6577b 100644
--- a/report/chapters/4-testing.tex
+++ b/report/chapters/4-testing.tex
@@ -37,11 +37,11 @@ the unit tests were run for the first time on OS X. Another instance
where unit tests helped was just before the \verb+v0.2.0+ release.
Major changes, including the introduction of file locks in the
\verb+ComboxDirMonitor+, were made to the \verb+combox.events+. When
-the unit tests were run OS X, two tests failed, revealing a difference
-in behavior of watchdog \cite{pylib:watchdog} on GNU/Linux and OS X on
-file creation
-\footnote{https://git.ricketyspace.net/combox/commit/?id=8c86e7c28738c66c0e04ae7886b44dbcdfc6369exo};
-without unit tests, there is a high probability that this bug would
+the unit tests were run on OS X, two tests failed, revealing a
+difference in behavior of watchdog \cite{pylib:watchdog} on GNU/Linux
+and OS X on file creation
+\footnote{https://git.ricketyspace.net/combox/commit/?id=8c86e7c28738c66c0e04ae7886b44dbcdfc6369exo}.
+Without unit tests, there is a high probability that this bug would
never have been found by now.
\subsection{Caveats}
@@ -53,7 +53,7 @@ feature did not consider or did not think about while writing the
respective feature.
Unit tests failed to reveal bugs \#5, \#6, \#7, \#10 and \#11
-\footnote{https://git.ricketyspace.net/combox/plain/TODO.org}; these
+\footnote{https://git.ricketyspace.net/combox/plain/TODO.org}. These
bugs were found when manually testing combox.
\section{Manual testing}\label{sec:4-manual-testing}
@@ -82,11 +82,11 @@ nodes.
\item On the GNU/Linux machines, the official Dropbox client was used
to sync the Dropbox node directory to Dropbox' data
store. \verb+rclone+ \cite{program:rclone} was used to sync the
- Google Drive node directory to Google Drive' data store; at the time
- of testing, Google Drive does not have a client program for
+ Google Drive node directory to Google Drive' data store. At the time
+ of testing, Google Drive did not have a client program for
GNU/Linux which can sync to Google Drive's data store.
\item On OS X, the official Dropbox client was used to sync the
- Dropbox node directory to Dropbox's data store; the official Google
+ Dropbox node directory to Dropbox's data store. The official Google
Drive client was used to sync the Google Drive node directory to
Google Driver' data store.
\item Since combox is extremely event-driven, combox must be started
@@ -106,7 +106,7 @@ machine (\verb+grus+) was a physical machine running Debian GNU/Linux
testing. The node directories to scatter the files' shards were the
Dropbox directory and Google Drive directory. The official Dropbox
client was used to automatically sync files from the Dropbox directory
-to the Dropbox' data store; \verb+rclone+ \cite{program:rclone} was
+to the Dropbox' data store. \verb+rclone+ \cite{program:rclone} was
used to sync files from Google Drive directory to Google Drive' data
store.
@@ -134,11 +134,11 @@ store.
file (shard) to its respective location with the appropriate name.
\item When a file (shard) was modified on another computer, the
Dropbox client pulls the modified file (shard) to this computer
- into the \verb+.dropbox.cache+ as a temporary file; moves the old
+ into the \verb+.dropbox.cache+ as a temporary file, moves the old
version of the file (shard) under the Dropbox directory into the
- \verb+.dropbox.cache+; finally moves the updated copy of the file,
- stored as a temporary file, into the Dropbox directory to its
- respective location with the appropriate name.
+ \verb+.dropbox.cache+, and finally moves the updated copy of the
+ file, stored as a temporary file, into the Dropbox directory to
+ its respective location with the appropriate name.
\item When a file (shard) was deleted on another computer, the
Dropbox client moves the deleted file into the
\verb+.dropbox.cache+ directory on this computer.
@@ -185,7 +185,7 @@ beautiful there''.
- (lyra) sync Google Drive using \verb+rclone+.
- (lyra) verify that the latest copy of \verb+walden.pond+ is there in
-the combox directory; it should contain 'Peaceful too.' in the last
+the combox directory -- it should contain 'Peaceful too.' in the last
line.
- (lyra) append ``I've a dream'' to \verb+walden.pond+.
@@ -195,7 +195,7 @@ line.
- (grus) sync Google Drive using \verb+rclone+.
- (grus) verify that the latest copy of \verb+walden.pond+ is there in
-the combox directory; it should contain ``I've a dream'' in the last
+the combox directory -- it should contain ``I've a dream'' in the last
line.
- (grus) remove \verb+walden.pond+ from combox directory.
@@ -229,12 +229,12 @@ was alternatively created/modified/renamed/deleted on one of the
machine and it was verified if the respective file was also
created/modified/renamed/deleted on the other machine. The GNU/Linux
machine was a virtual machine (\verb+lyra+) running Debian GNU/Linux
-stable; the OS X machine was on Mavericks (10.9) during the initial
+stable, the OS X machine was on Mavericks (10.9) during the initial
stage of testing, later it was upgraded to Yosemite (10.10). The node
directories to scatter files' shards were the Dropbox directory and
the Google Drive directory. The official Dropbox client was used to
automatically sync files from the Dropbox directory to the Dropbox'
-data store on both the GNU/Linux machine and the OS X machine; the
+data store on both the GNU/Linux machine and the OS X machine, the
official Google Drive client was used to automatically sync files from
the Google Drive directory to Google Drive' data store on OS X and
\verb+rclone+ \cite{program:rclone} was used to sync files from the
@@ -250,7 +250,7 @@ Google Drive directory to Google Drive's data store on GNU/Linux.
unpredictable on this computer and if the first shard (shard0) was
stored in the Dropbox directory, it will momentarily disappear
before the most updated shard becomes available in the Dropbox
- directory; this broke combox. This issue was fixed on 2015-08-25
+ directory, this broke combox. This issue was fixed on 2015-08-25
\footnote{https://git.ricketyspace.net/combox/commit/?id=d5b52030348d40600b4c9256f76e5183a85fbb17}. This
issue is not got to do with the nature of the setup but it is
related to the Dropbox's behavior elaborated in section
@@ -259,20 +259,20 @@ Google Drive directory to Google Drive's data store on GNU/Linux.
of the file from Google Drive' data store, instead directly updating
the respective file on the computer, it deletes the older version of
the file and creates the latest version of the file at the
- respective location in the Google Drive directory; this behavior of
+ respective location in the Google Drive directory, this behavior of
the Google Drive client confused and broke combox. This issue was
fixed 2015-09-06 by making combox aware of the official Google
Client's behavior
\footnote{https://git.ricketyspace.net/combox/commit/?id=37385a90f90cb9d4dfd13d9d2e3cbcace8011e9e}.
\item When a non-empty directory was move/renamed on another computer,
- the old directory was not getting properly deleted on this computer;
- this was happening because, sometimes, the files under the directory
+ the old directory was not getting properly deleted on this computer.
+ This was happening because, sometimes, the files under the directory
being renamed were not deleted when it was time for
\verb+NodeDirMonitor+ to \verb+rmdir+ the old directory. This issue
was fixed on 2015-09-12
\footnote{https://git.ricketyspace.net/combox/commit/?id=9d14db03da5d10d5ab0d7cc76b20e7b1ed5523bf}.
\item It was found that \verb+combox.file.rm_path+ function failed
- when it was given a non-existent path to remove; this issue was
+ when it was given a non-existent path to remove, this issue was
fixed on 2015-09-12
\footnote{https://git.ricketyspace.net/combox/commit/?id=422238eb4904de14842221fa09a2b4028801afb1}.
\end{itemize}
@@ -303,7 +303,7 @@ created with content ``peace train''.
- (\verb+lyra+) sync Google Drive using \verb+rclone+.
- (\verb+lyra+) verify that the file \verb+cat.stevens+ was updated
-(modified); last line must have the string ``moonshadow''.
+(modified) -- last line must have the string ``moonshadow''.
- (\verb+lyra+) append string ``father and son'' to the file
\verb+cat.stevens+.
@@ -311,7 +311,7 @@ created with content ``peace train''.
- (\verb+lyra+) sync Google Drive using \verb+rclone+.
- (\verb+dhcp-129-1-66-1+) verify that the file \verb+cat.stevens+ was
-updated (modified); last line must have the string ``father and son''.
+updated (modified) -- last line must have the string ``father and son''.
- (\verb+dhcp-129-1-66-1+) rename file \verb+cat.stevens+ to
\verb+yusuf.islam+
@@ -327,17 +327,17 @@ combox was run on a GNU/Linux machine and an OS X machine and a file
was alternatively created/modified/deleted on one of the machine and
it was verified if the respective file was also
create/modified/deleted on the other machine. The GNU/Linux machine
-was a physical machine (\verb+grus+) running Debian GNU/Linux testing;
+was a physical machine (\verb+grus+) running Debian GNU/Linux testing,
The OS X machine was on Mavericks (10.9). The node directories to
scatter files' shards were the Dropbox directory, Google Drive
directory and the USB stick (\verb+ZAPHOD+, FAT filesystem). The
official Dropbox client was used to automatically sync files from
Dropbox directory to Dropbox' data store on both the GNU/Linux machine
-and the OS X machine; the official Google Drive client was used to
+and the OS X machine, the official Google Drive client was used to
automatically sync files from the Google Drive directory to Google
Drive' data store on OS X and \verb+rclone+ \cite{program:rclone} was
used to sync files from the Google Drive directory to Google Drive's
-data store on GNU/Linux; the same USB stick (\verb+ZAPHOD+) was used
+data store on GNU/Linux, the same USB stick (\verb+ZAPHOD+) was used
on both GNU/Linux and Dropbox to store the third shard (shard2) of the
files stored in combox directory.
@@ -345,7 +345,7 @@ files stored in combox directory.
\begin{itemize}
\item When a removable USB disk is used as a node, combox must be
- turned off before ejecting/unmounting the USB disk; combox does not
+ turned off before ejecting/unmounting the USB disk, combox does not
expect a node directory to disappear when it is running, if the USB
disk is removed when combox is running, then combox goes to an
undefined state.
@@ -419,7 +419,7 @@ content ``the boxer''.
stick (\verb+ZAPHOD+).
- (\verb+grus+) verify that the file \verb+simon.and.garfunkel+ is
-updated; the last line must contain the string ``mrs. robinson''.
+updated -- the last line must contain the string ``mrs. robinson''.
- (\verb+grus+) remove the file \verb+simon.and.garfunkel+.
@@ -588,8 +588,8 @@ intervals. A night of Emacs Lisp indulgence made it possible to
quickly slurp the required data from the combox output and calculate
the average time to split and encrypt a file and the total amount of
time taken to process the files for a given dump
-\footnote{https://git.ricketyspace.net/combox-paper/plain/scripts/dumps.el};
-lastly \verb+org-mode+ was used to document all data gathered during
+\footnote{https://git.ricketyspace.net/combox-paper/plain/scripts/dumps.el}.
+Lastly \verb+org-mode+ was used to document all data gathered during
stress testing
\footnote{https://git.ricketyspace.net/combox-paper/plain/notes/benchmarks.org}.
@@ -623,7 +623,7 @@ stress testing
to split and encrypt a file for a given file dump. There is a steep
increase in the average time from the \verb+424.79MiB+ dump and the
\verb+1620.00MiB+ dump, after which the average time to split and
- encrypt a file seems to almost linearly increase; The main reason
+ encrypt a file seems to almost linearly increase. The main reason
for this is that the average file size for dumps from
\verb+1620.00MiB+ to \verb+10800.00MiB+ are the same.
\end{itemize}