[gnote] Refactor notemanager test to use a fixture



commit 74a47eb692f0e9b37e9a9ebdebd3a5c5628a3ded
Author: Aurimas Černius <aurisc4 gmail com>
Date:   Mon Apr 13 14:32:24 2020 +0300

    Refactor notemanager test to use a fixture

 src/test/unit/notemanagerutests.cpp | 29 +++++++++++++++++++++--------
 1 file changed, 21 insertions(+), 8 deletions(-)
---
diff --git a/src/test/unit/notemanagerutests.cpp b/src/test/unit/notemanagerutests.cpp
index 63aca856..c092358a 100644
--- a/src/test/unit/notemanagerutests.cpp
+++ b/src/test/unit/notemanagerutests.cpp
@@ -1,7 +1,7 @@
 /*
  * gnote
  *
- * Copyright (C) 2017,2019 Aurimas Cernius
+ * Copyright (C) 2017,2019-2020 Aurimas Cernius
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -26,15 +26,28 @@
 
 SUITE(NoteManager)
 {
-  TEST(create_and_find)
+  struct Fixture
   {
-    char notes_dir_tmpl[] = "/tmp/gnotetestnotesXXXXXX";
-    char *notes_dir = g_mkdtemp(notes_dir_tmpl);
-    CHECK(notes_dir != NULL);
-
     test::Gnote g;
-    test::NoteManager manager(notes_dir, g);
-    g.notebook_manager(&manager.notebook_manager());
+    test::NoteManager manager;
+
+    Fixture()
+      : manager(make_notes_dir(), g)
+    {
+      g.notebook_manager(&manager.notebook_manager());
+    }
+
+    Glib::ustring make_notes_dir()
+    {
+      char notes_dir_tmpl[] = "/tmp/gnotetestnotesXXXXXX";
+      char *notes_dir = g_mkdtemp(notes_dir_tmpl);
+      return notes_dir;
+    }
+  };
+
+
+  TEST_FIXTURE(Fixture, create_and_find)
+  {
     manager.create();
     manager.create();
     gnote::NoteBase::Ptr test_note = manager.create("test note");


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]