[Xfce4-commits] <midori:master> Add set_instance_is_running app test hook

Christian Dywan noreply at xfce.org
Sat Dec 15 23:16:01 CET 2012


Updating branch refs/heads/master
         to 6c0ecfa6347b94e921f488ac9e4ce0044959f380 (commit)
       from 0cf758db1619e17bddf1400769031bfea398c9b3 (commit)

commit 6c0ecfa6347b94e921f488ac9e4ce0044959f380
Author: Christian Dywan <christian at twotoasts.de>
Date:   Sat Dec 15 23:14:38 2012 +0100

    Add set_instance_is_running app test hook

 midori/midori-app.c |   15 +++++++++++++++
 midori/midori-app.h |    3 +++
 midori/midori.vapi  |    1 +
 tests/app.vala      |    6 ++++++
 4 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/midori/midori-app.c b/midori/midori-app.c
index 91e9f62..a4ef899 100644
--- a/midori/midori-app.c
+++ b/midori/midori-app.c
@@ -935,6 +935,16 @@ midori_app_new (const gchar* name)
     return g_object_new (MIDORI_TYPE_APP, "name", name, NULL);
 }
 
+static gboolean instance_is_not_running = FALSE;
+static gboolean instance_is_running = FALSE;
+
+void
+midori_app_set_instance_is_running (gboolean is_running)
+{
+    instance_is_not_running = !is_running;
+    instance_is_running = is_running;
+}
+
 /**
  * midori_app_instance_is_running:
  * @app: a #MidoriApp
@@ -952,6 +962,11 @@ midori_app_instance_is_running (MidoriApp* app)
 {
     g_return_val_if_fail (MIDORI_IS_APP (app), FALSE);
 
+    if (instance_is_not_running)
+        return FALSE;
+    else if (instance_is_running)
+        return TRUE;
+
     if (app->instance == MidoriAppInstanceNull)
         app->instance = midori_app_create_instance (app);
 
diff --git a/midori/midori-app.h b/midori/midori-app.h
index 7e5bdd5..3fc101e 100644
--- a/midori/midori-app.h
+++ b/midori/midori-app.h
@@ -47,6 +47,9 @@ midori_app_get_name               (MidoriApp*         app);
 gboolean
 midori_app_get_crashed            (MidoriApp*         app);
 
+void
+midori_app_set_instance_is_running(gboolean           is_running);
+
 gboolean
 midori_app_instance_is_running    (MidoriApp*         app);
 
diff --git a/midori/midori.vapi b/midori/midori.vapi
index 61faeee..fa920c1 100644
--- a/midori/midori.vapi
+++ b/midori/midori.vapi
@@ -21,6 +21,7 @@ namespace Midori {
     public class App : GLib.Object {
         public App (string? name=null);
         public static void setup ([CCode (array_length_pos = 0.9)] ref unowned string[] args, [CCode (array_length = false)] GLib.OptionEntry[]? entries);
+        public static void set_instance_is_running (bool is_running);
         public Browser create_browser ();
         public GLib.List<weak Browser> get_browsers ();
 
diff --git a/tests/app.vala b/tests/app.vala
index c2d2770..ed90b5e 100644
--- a/tests/app.vala
+++ b/tests/app.vala
@@ -22,6 +22,7 @@ void app_normal () {
     Midori.Test.idle_timeouts ();
     Midori.Test.log_set_fatal_handler_for_icons ();
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var app = Midori.normal_app_new (null, "test-normal", false, null, null, null, -1, null);
     var loop = MainContext.default ();
     do { loop.iteration (true); } while (loop.pending ());
@@ -44,6 +45,7 @@ void app_normal () {
 void app_normal_custom_config () {
     Midori.Test.log_set_fatal_handler_for_icons ();
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var app = Midori.normal_app_new (Midori.Paths.make_tmp_dir ("custom-configXXXXXX"),
         "test-custom-config-normal", false, null, null, null, -1, null);
     var loop = MainContext.default ();
@@ -55,6 +57,7 @@ void app_normal_custom_config () {
 void app_private () {
     Midori.Test.log_set_fatal_handler_for_icons ();
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var browser = Midori.private_app_new (null, null, null, null, -1, null);
     var loop = MainContext.default ();
     do { loop.iteration (true); } while (loop.pending ());
@@ -63,6 +66,7 @@ void app_private () {
 
 void app_web () {
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var browser = Midori.web_app_new (null, null, null, null, -1, null);
     var loop = MainContext.default ();
     do { loop.iteration (true); } while (loop.pending ());
@@ -71,6 +75,7 @@ void app_web () {
 
 void app_web_custom_config () {
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var browser = Midori.web_app_new (Midori.Paths.make_tmp_dir ("custom-configXXXXXX"), null, null, null, -1, null);
     var loop = MainContext.default ();
     do { loop.iteration (true); } while (loop.pending ());
@@ -84,6 +89,7 @@ void app_extensions () {
     Midori.Test.idle_timeouts ();
     Midori.Test.log_set_fatal_handler_for_icons ();
     Midori.Paths.Test.reset_runtime_mode ();
+    Midori.App.set_instance_is_running (false);
     var app = Midori.normal_app_new (null, "test-extensions-normal", false, null, null, null, -1, null);
     var loop = MainContext.default ();
     do { loop.iteration (true); } while (loop.pending ());


More information about the Xfce4-commits mailing list