diff --git a/assdraw/src/settings.cpp b/assdraw/src/settings.cpp
index ea42321b4d314ad6028aab5dcdcc4930541f6582..be5c3ef0d7dd634991b4bc7a5b4e10f47ba9bf70 100644
--- a/assdraw/src/settings.cpp
+++ b/assdraw/src/settings.cpp
@@ -67,14 +67,14 @@ void ASSDrawSettingsDialog::Init()
 
     #define APPENDCOLOURPROP(pgid, label, color) pgid = propgrid->Append( wxColourProperty(label, wxPG_LABEL, color) );
     #define APPENDUINTPROP(pgid, label, uint) \
-		pgid = propgrid->Append( wxUIntProperty(label, wxPG_LABEL, uint) ); \
+		pgid = propgrid->Append(wxUIntProperty(label, wxPG_LABEL, uint) ); \
 		propgrid->SetPropertyValidator( pgid, validator );
     #define APPENDBOOLPROP(pgid, label, boolvar) \
-	    pgid = propgrid->Append( wxBoolProperty (label, wxPG_LABEL, boolvar ) ); \
+	    pgid = propgrid->Append(wxBoolProperty (label, wxPG_LABEL, boolvar ) ); \
     	propgrid->SetPropertyAttribute( pgid, wxPG_BOOL_USE_CHECKBOX, (long)1 );
 	wxLongPropertyValidator validator(0x0,0xFF);
     
-    propgrid->Append( wxPropertyCategory(_T("Appearance"),wxPG_LABEL) );
+    propgrid->Append(wxPropertyCategory(_T("Appearance"),wxPG_LABEL) );
 	APPENDCOLOURPROP(colors_canvas_bg_pgid, _T("Canvas"), m_frame->colors.canvas_bg)
 	APPENDCOLOURPROP(colors_canvas_shape_normal_pgid, _T("Drawing"), m_frame->colors.canvas_shape_normal)
 	APPENDUINTPROP(alphas_canvas_shape_normal_pgid, _T("Drawing @"), m_frame->alphas.canvas_shape_normal)
@@ -97,7 +97,7 @@ void ASSDrawSettingsDialog::Init()
 	APPENDCOLOURPROP(colors_ruler_h_pgid, _T("H ruler"), m_frame->colors.ruler_h)
 	APPENDCOLOURPROP(colors_ruler_v_pgid, _T("V ruler"), m_frame->colors.ruler_v)
 
-    propgrid->Append( wxPropertyCategory(_T("Behaviors"),wxPG_LABEL) );
+    propgrid->Append(wxPropertyCategory(_T("Behaviors"),wxPG_LABEL) );
 	APPENDBOOLPROP(behaviors_capitalizecmds_pgid, _T("Capitalize commands"), m_frame->behaviors.capitalizecmds);
 	APPENDBOOLPROP(behaviors_autoaskimgopac_pgid, _T("Ask for image opacity"), m_frame->behaviors.autoaskimgopac);
 	APPENDBOOLPROP(behaviors_parse_spc_pgid, _T("Parse S/P/C"), m_frame->behaviors.parse_spc);
diff --git a/unit_test/src/athenasub/test_time.cpp b/unit_test/src/athenasub/test_time.cpp
index a9670650dcf9dc2b1eae41db58cf4262d063ea8b..e6c1b2f1eefe383135bc252db4d6188bb5a87507 100644
--- a/unit_test/src/athenasub/test_time.cpp
+++ b/unit_test/src/athenasub/test_time.cpp
@@ -33,10 +33,12 @@
 // Contact: mailto:zeratul@cellosoft.com
 //
 
+#include "../suites.h"
+#if ATHENASUB_TEST == 1
+
 #include <cppunit/TestFixture.h>
 #include <cppunit/extensions/HelperMacros.h>
-#include "../../../aegilib/include/athenasub/athenasub.h"
-#include "../suites.h"
+#include "../../../athenasub/include/athenasub/athenasub.h"
 using namespace Athenasub;
 
 
@@ -44,51 +46,66 @@ class AthenasubTimeTest : public CppUnit::TestFixture {
 	CPPUNIT_TEST_SUITE(AthenasubTimeTest);
 	CPPUNIT_TEST(testBounds);
 	CPPUNIT_TEST(testComparison);
+	CPPUNIT_TEST(testOperators);
+	CPPUNIT_TEST(testSetGet);
 	CPPUNIT_TEST_SUITE_END();
 
 private:
-	Time a;
-	Time *b;
-	Time *c;
-	Time *d;
-	Time e;
 
 public:
 	void setUp()
 	{
-		a;
-		b = new Time(0);
-		c = new Time(5000);
-		d = new Time(-500);
-		e.SetMS(-1000);
 	}
 
 	void tearDown()
 	{
-		delete b;
-		delete c;
 	}
 	
 	void testComparison()
 	{
+		Time a;
+		Time b(0);
+		Time c(5000);
+		Time d(-500);
+
 		CPPUNIT_ASSERT(a == a);
 		CPPUNIT_ASSERT(a <= a);
 		CPPUNIT_ASSERT(a >= a);
-		CPPUNIT_ASSERT(a == *b);
-		CPPUNIT_ASSERT(a == *d);
-		CPPUNIT_ASSERT(a != *c);
-		CPPUNIT_ASSERT(*b != *c);
-		CPPUNIT_ASSERT(a < *c);
-		CPPUNIT_ASSERT(a <= *c);
-		CPPUNIT_ASSERT(*c > *b);
-		CPPUNIT_ASSERT(*c >= *b);
+		CPPUNIT_ASSERT(a == b);
+		CPPUNIT_ASSERT(a == d);
+		CPPUNIT_ASSERT(a != c);
+		CPPUNIT_ASSERT(b != c);
+		CPPUNIT_ASSERT(a < c);
+		CPPUNIT_ASSERT(a <= c);
+		CPPUNIT_ASSERT(c > b);
+		CPPUNIT_ASSERT(c >= b);
 	}
 
 	void testBounds()
 	{
-		CPPUNIT_ASSERT(d->GetMS() >= 0);
-		CPPUNIT_ASSERT(e.GetMS() >= 0);
+		Time a(-500);
+		CPPUNIT_ASSERT(a.GetMS() >= 0);
+	}
+
+	void testSetGet()
+	{
+		Time a;
+		CPPUNIT_ASSERT(a.GetMS() == 0);
+		a.SetMS(5000);
+		CPPUNIT_ASSERT(a.GetMS() == 5000);
+		a.SetMS(-5000);
+		CPPUNIT_ASSERT(a.GetMS() == 0);
+	}
+
+	void testOperators()
+	{
+		Time a(500);
+		CPPUNIT_ASSERT(a + 300 == Time(800));
+		CPPUNIT_ASSERT(a - 300 == Time(200));
+		CPPUNIT_ASSERT(a - 600 == Time(0));
 	}
 };
 
 CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(AthenasubTimeTest,AegisubSuites::athenasub());
+
+#endif
diff --git a/unit_test/src/main.cpp b/unit_test/src/main.cpp
index 17cc8b030bdbb81e9f7f8fa157da209a7e8323ea..9150e388176429a84b0cdd823e72586a43284fbe 100644
--- a/unit_test/src/main.cpp
+++ b/unit_test/src/main.cpp
@@ -48,7 +48,9 @@ int main()
 {
 	CppUnit::TextUi::TestRunner runner;
 
+#if ATHENASUB_TEST == 1
 	runner.addTest(CppUnit::TestFactoryRegistry::getRegistry(AegisubSuites::athenasub()).makeTest());
+#endif
 	runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest());
 
 	bool result = runner.run("",false);
diff --git a/unit_test/src/suites.h b/unit_test/src/suites.h
index 26cdac39b519b7247a150e9c37a2975269657b97..1f7ec79e4a926ecb291d546e3eda3e4d51161c43 100644
--- a/unit_test/src/suites.h
+++ b/unit_test/src/suites.h
@@ -33,6 +33,19 @@
 // Contact: mailto:zeratul@cellosoft.com
 //
 
+#include <string>
+
+
+//////////////////////////////
+// Enable/disable test suites
+#define ATHENASUB_TEST 1
+
+
+
+///////////////////////
+// Name of test suites
 namespace AegisubSuites {
-	static std::string athenasub() { return "athenasub"; }
+#if ATHENASUB_TEST == 1
+	inline std::string athenasub() { return "athenasub"; }
+#endif
 };