diff options
Diffstat (limited to 'tests/depdb')
-rw-r--r-- | tests/depdb/buildfile | 8 | ||||
-rw-r--r-- | tests/depdb/driver.cxx | 166 |
2 files changed, 0 insertions, 174 deletions
diff --git a/tests/depdb/buildfile b/tests/depdb/buildfile deleted file mode 100644 index 53e9cd3..0000000 --- a/tests/depdb/buildfile +++ /dev/null @@ -1,8 +0,0 @@ -# file : tests/depdb/buildfile -# copyright : Copyright (c) 2014-2016 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file - -import libs = libbutl%lib{butl} - -exe{driver}: cxx{driver ../../build2/{depdb}} $libs -exe{driver}: test.arguments = $out_base/test.d diff --git a/tests/depdb/driver.cxx b/tests/depdb/driver.cxx deleted file mode 100644 index f156991..0000000 --- a/tests/depdb/driver.cxx +++ /dev/null @@ -1,166 +0,0 @@ -// file : tests/depdb/driver.cxx -*- C++ -*- -// copyright : Copyright (c) 2014-2016 Code Synthesis Ltd -// license : MIT; see accompanying LICENSE file - -#include <iostream> - -#include <butl/filesystem> - -#include <build2/types> -#include <build2/utility> - -#include <build2/depdb> - -using namespace std; -using namespace build2; - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " <db-file>" << endl; - return 1; - } - - path p (argv[1]); - auto rm = [&p] () {try_rmfile (p);}; - - // Create empty database. - // - { - rm (); - - { - depdb d (p); - assert (d.writing ()); - d.close (); - } - - { - depdb d (p); - assert (d.reading ()); - assert (!d.more ()); - assert (d.read () == nullptr); - d.close (); - } - } - - // No close/end marker. - // - { - rm (); - - { - depdb d (p); - assert (d.writing ()); - // No close. - } - - { - depdb d (p); - assert (d.writing ()); - d.close (); - } - - { - depdb d (p); - assert (d.reading ()); - } - } - - // Overwrite/append/truncate. - // - { - rm (); - - { - depdb d (p); - d.write ("foo"); - d.close (); - } - - { - depdb d (p); - assert (*d.read () == "foo"); - assert (!d.more ()); - d.close (); - } - - { - depdb d (p); - assert (*d.read () == "foo"); - assert (!d.more ()); - d.write ("FOO"); - d.close (); - } - - { - depdb d (p); - assert (*d.read () == "FOO"); - assert (!d.more ()); - assert (d.read () == nullptr); - assert (d.read () == nullptr); - d.write ("BAR"); - d.close (); - } - - { - depdb d (p); - assert (*d.read () == "FOO"); - assert (d.more ()); - d.write ("foo"); - d.close (); // Truncate. - } - - { - depdb d (p); - assert (*d.read () == "foo"); - assert (!d.more ()); - } - - // Stray end marker. - // - { - depdb d (p); - assert (*d.read () == "foo"); - d.write ("fox"); - // No close. - } - - { - depdb d (p); - assert (d.more ()); - assert (*d.read () == "fox"); - assert (!d.more ()); - } - } - - // Read/truncate. - // - { - rm (); - - { - depdb d (p); - d.write ("foo"); - d.write ("bar"); - d.close (); - } - - { - depdb d (p); - assert (*d.read () == "foo"); - assert (d.more ()); - d.close (); // Truncate bar. - } - - { - depdb d (p); - assert (*d.read () == "foo"); - assert (!d.more ()); - } - } - - rm (); -} |