/* test-case.c generated by valac 0.21.1.1-0d6f, the Vala compiler
 * generated from test-case.vala, do not modify */

/* testcase.vala
 *
 * Copyright (C) 2009 Julien Peeters
 * Copyright (C) 2013 Intel Corporation
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.

 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.

 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
 *
 * Author:
 * 	Julien Peeters <contact@julienpeeters.fr>
 * 	Simon McVittie <simon.mcvittie@collabora.co.uk>
 *
 * Adapted from libgee/tests/testcase.vala.
 */

#include <glib.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <gio/gio.h>
#include <locale.h>
#include <config.h>
#include <glib/gstdio.h>
#include <errno.h>
#include <stdio.h>
#include <gobject/gvaluecollector.h>


#define FOLKS_TYPE_TEST_CASE (folks_test_case_get_type ())
#define FOLKS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_TEST_CASE, FolksTestCase))
#define FOLKS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_TEST_CASE, FolksTestCaseClass))
#define FOLKS_IS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_TEST_CASE))
#define FOLKS_IS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_TEST_CASE))
#define FOLKS_TEST_CASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_TEST_CASE, FolksTestCaseClass))

typedef struct _FolksTestCase FolksTestCase;
typedef struct _FolksTestCaseClass FolksTestCaseClass;
typedef struct _FolksTestCasePrivate FolksTestCasePrivate;
#define _g_free0(var) (var = (g_free (var), NULL))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR (folks_test_case_log_adaptor_get_type ())
#define FOLKS_TEST_CASE_LOG_ADAPTOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR, FolksTestCaseLogAdaptor))
#define FOLKS_TEST_CASE_LOG_ADAPTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR, FolksTestCaseLogAdaptorClass))
#define FOLKS_TEST_CASE_IS_LOG_ADAPTOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR))
#define FOLKS_TEST_CASE_IS_LOG_ADAPTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR))
#define FOLKS_TEST_CASE_LOG_ADAPTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR, FolksTestCaseLogAdaptorClass))

typedef struct _FolksTestCaseLogAdaptor FolksTestCaseLogAdaptor;
typedef struct _FolksTestCaseLogAdaptorClass FolksTestCaseLogAdaptorClass;
typedef struct _FolksTestCaseLogAdaptorPrivate FolksTestCaseLogAdaptorPrivate;
typedef struct _FolksTestCaseParamSpecLogAdaptor FolksTestCaseParamSpecLogAdaptor;
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _FolksTestCase {
	GObject parent_instance;
	FolksTestCasePrivate * priv;
	GTestDBus* test_dbus;
};

struct _FolksTestCaseClass {
	GObjectClass parent_class;
	gchar* (*create_transient_dir) (FolksTestCase* self);
	void (*private_bus_up) (FolksTestCase* self);
	void (*set_up) (FolksTestCase* self);
	void (*tear_down) (FolksTestCase* self);
	void (*final_tear_down) (FolksTestCase* self);
	gboolean (*get_uses_dbus_1) (FolksTestCase* self);
};

struct _FolksTestCasePrivate {
	GTestSuite* _suite;
	gchar* _transient_dir;
};

typedef void (*FolksTestCaseTestMethod) (void* user_data);
struct _FolksTestCaseLogAdaptor {
	GTypeInstance parent_instance;
	volatile int ref_count;
	FolksTestCaseLogAdaptorPrivate * priv;
};

struct _FolksTestCaseLogAdaptorClass {
	GTypeClass parent_class;
	void (*finalize) (FolksTestCaseLogAdaptor *self);
};

struct _FolksTestCaseParamSpecLogAdaptor {
	GParamSpec parent_instance;
};


static gpointer folks_test_case_parent_class = NULL;
static gpointer folks_test_case_log_adaptor_parent_class = NULL;

GType folks_test_case_get_type (void) G_GNUC_CONST;
#define FOLKS_TEST_CASE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), FOLKS_TYPE_TEST_CASE, FolksTestCasePrivate))
enum  {
	FOLKS_TEST_CASE_DUMMY_PROPERTY,
	FOLKS_TEST_CASE_TRANSIENT_DIR,
	FOLKS_TEST_CASE_USES_DBUS_1
};
void folks_test_case_final_tear_down (FolksTestCase* self);
FolksTestCase* folks_test_case_construct (GType object_type, const gchar* name);
static void folks_test_case_log_adaptor_set_up (void);
gchar* folks_test_case_create_transient_dir (FolksTestCase* self);
void folks_test_case_private_bus_up (FolksTestCase* self);
static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value);
static void _vala_array_add2 (gchar*** array, int* length, int* size, gchar* value);
static void _vala_array_add3 (gchar*** array, int* length, int* size, gchar* value);
static void _vala_array_add4 (gchar*** array, int* length, int* size, gchar* value);
static void _vala_array_add5 (gchar*** array, int* length, int* size, gchar* value);
static gchar* folks_test_case_real_create_transient_dir (FolksTestCase* self);
static void folks_test_case_real_private_bus_up (FolksTestCase* self);
void folks_test_case_register (FolksTestCase* self);
void folks_test_case_add_test (FolksTestCase* self, const gchar* name, FolksTestCaseTestMethod test, void* test_target);
GTestCase* folks_test_case_add_test_helper (FolksTestCase* self, const gchar* name, FolksTestCaseTestMethod test, void* test_target);
void folks_test_case_set_up (FolksTestCase* self);
static void folks_test_case_real_set_up (FolksTestCase* self);
void folks_test_case_tear_down (FolksTestCase* self);
static void folks_test_case_real_tear_down (FolksTestCase* self);
void _folks_test_case_dbus_1_set_no_exit_on_disconnect (void);
static void folks_test_case_real_final_tear_down (FolksTestCase* self);
gboolean folks_test_case_get_uses_dbus_1 (FolksTestCase* self);
gboolean haze_remove_directory (const gchar* path);
const gchar* folks_test_case_get_transient_dir (FolksTestCase* self);
static gpointer folks_test_case_log_adaptor_ref (gpointer instance);
static void folks_test_case_log_adaptor_unref (gpointer instance);
static GParamSpec* folks_test_case_param_spec_log_adaptor (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) G_GNUC_UNUSED;
static void folks_test_case_value_set_log_adaptor (GValue* value, gpointer v_object) G_GNUC_UNUSED;
static void folks_test_case_value_take_log_adaptor (GValue* value, gpointer v_object) G_GNUC_UNUSED;
static gpointer folks_test_case_value_get_log_adaptor (const GValue* value) G_GNUC_UNUSED;
static GType folks_test_case_log_adaptor_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
enum  {
	FOLKS_TEST_CASE_LOG_ADAPTOR_DUMMY_PROPERTY
};
static FolksTestCaseLogAdaptor* folks_test_case_log_adaptor_new (void);
static FolksTestCaseLogAdaptor* folks_test_case_log_adaptor_construct (GType object_type);
static void _folks_test_case_log_adaptor_printerr_func_stack_trace (const gchar* text);
static void __folks_test_case_log_adaptor_printerr_func_stack_trace_gprint_func (const gchar* text);
static void _folks_test_case_log_adaptor_log_func_stack_trace (const gchar* log_domain, GLogLevelFlags log_levels, const gchar* message);
static void __folks_test_case_log_adaptor_log_func_stack_trace_glog_func (const gchar* log_domain, GLogLevelFlags log_levels, const gchar* message, gpointer self);
static void folks_test_case_log_adaptor_finalize (FolksTestCaseLogAdaptor* obj);
static void folks_test_case_finalize (GObject* obj);
static void _vala_folks_test_case_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);


static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value) {
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((*length) == (*size)) {
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*array = g_renew (gchar*, *array, (*size) + 1);
#line 172 "test-case.c"
	}
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[(*length)++] = value;
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[*length] = NULL;
#line 178 "test-case.c"
}


static void _vala_array_add2 (gchar*** array, int* length, int* size, gchar* value) {
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((*length) == (*size)) {
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*array = g_renew (gchar*, *array, (*size) + 1);
#line 189 "test-case.c"
	}
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[(*length)++] = value;
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[*length] = NULL;
#line 195 "test-case.c"
}


static void _vala_array_add3 (gchar*** array, int* length, int* size, gchar* value) {
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((*length) == (*size)) {
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*array = g_renew (gchar*, *array, (*size) + 1);
#line 206 "test-case.c"
	}
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[(*length)++] = value;
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[*length] = NULL;
#line 212 "test-case.c"
}


static void _vala_array_add4 (gchar*** array, int* length, int* size, gchar* value) {
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((*length) == (*size)) {
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*array = g_renew (gchar*, *array, (*size) + 1);
#line 223 "test-case.c"
	}
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[(*length)++] = value;
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[*length] = NULL;
#line 229 "test-case.c"
}


static void _vala_array_add5 (gchar*** array, int* length, int* size, gchar* value) {
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((*length) == (*size)) {
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*size = (*size) ? (2 * (*size)) : 4;
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*array = g_renew (gchar*, *array, (*size) + 1);
#line 240 "test-case.c"
	}
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[(*length)++] = value;
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	(*array)[*length] = NULL;
#line 246 "test-case.c"
}


FolksTestCase* folks_test_case_construct (GType object_type, const gchar* name) {
	FolksTestCase * self = NULL;
	const gchar* _tmp0_ = NULL;
	GTestSuite* _tmp1_ = NULL;
	gchar* _tmp2_ = NULL;
	const gchar* _tmp3_ = NULL;
#line 40 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (name != NULL, NULL);
#line 40 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self = (FolksTestCase*) g_object_new (object_type, NULL);
#line 42 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	setlocale (LC_ALL, "");
#line 46 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("GIO_USE_VFS", "local", TRUE);
#line 51 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("DBUS_STARTER_ADDRESS");
#line 52 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("DBUS_STARTER_BUS_TYPE");
#line 54 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	folks_test_case_log_adaptor_set_up ();
#line 55 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = name;
#line 55 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = g_test_create_suite (_tmp0_);
#line 55 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->priv->_suite = _tmp1_;
#line 57 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = folks_test_case_create_transient_dir (self);
#line 57 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (self->priv->_transient_dir);
#line 57 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->priv->_transient_dir = _tmp2_;
#line 58 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	folks_test_case_private_bus_up (self);
#line 60 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp3_ = g_getenv ("FOLKS_TESTS_INSTALLED");
#line 60 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp3_ == NULL) {
#line 288 "test-case.c"
		gchar** locations = NULL;
		gchar* _tmp4_ = NULL;
		gchar** _tmp5_ = NULL;
		gint locations_length1 = 0;
		gint _locations_size_ = 0;
		gboolean _tmp6_ = FALSE;
		gboolean _tmp9_ = FALSE;
		gboolean _tmp12_ = FALSE;
		gboolean _tmp15_ = FALSE;
		gboolean _tmp18_ = FALSE;
		gchar** _tmp21_ = NULL;
		gint _tmp21__length1 = 0;
		gchar* _tmp22_ = NULL;
		gchar* _tmp23_ = NULL;
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp4_ = g_strdup (ABS_TOP_BUILDDIR "/backends/key-file/.libs/key-file.so");
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp5_ = g_new0 (gchar*, 1 + 1);
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp5_[0] = _tmp4_;
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		locations = _tmp5_;
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		locations_length1 = 1;
#line 62 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_locations_size_ = locations_length1;
#line 66 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp6_ = HAVE_EDS;
#line 66 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (_tmp6_) {
#line 319 "test-case.c"
			gchar** _tmp7_ = NULL;
			gint _tmp7__length1 = 0;
			gchar* _tmp8_ = NULL;
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp7_ = locations;
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp7__length1 = locations_length1;
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp8_ = g_strdup (ABS_TOP_BUILDDIR "/backends/eds/.libs/eds.so");
#line 67 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_vala_array_add1 (&locations, &locations_length1, &_locations_size_, _tmp8_);
#line 331 "test-case.c"
		}
#line 69 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp9_ = HAVE_LIBSOCIALWEB;
#line 69 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (_tmp9_) {
#line 337 "test-case.c"
			gchar** _tmp10_ = NULL;
			gint _tmp10__length1 = 0;
			gchar* _tmp11_ = NULL;
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp10_ = locations;
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp10__length1 = locations_length1;
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp11_ = g_strdup (ABS_TOP_BUILDDIR "/backends/libsocialweb/.libs/libsocialweb.so");
#line 70 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_vala_array_add2 (&locations, &locations_length1, &_locations_size_, _tmp11_);
#line 349 "test-case.c"
		}
#line 72 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp12_ = HAVE_OFONO;
#line 72 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (_tmp12_) {
#line 355 "test-case.c"
			gchar** _tmp13_ = NULL;
			gint _tmp13__length1 = 0;
			gchar* _tmp14_ = NULL;
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp13_ = locations;
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp13__length1 = locations_length1;
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp14_ = g_strdup (ABS_TOP_BUILDDIR "/backends/ofono/.libs/ofono.so");
#line 73 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_vala_array_add3 (&locations, &locations_length1, &_locations_size_, _tmp14_);
#line 367 "test-case.c"
		}
#line 75 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp15_ = HAVE_TELEPATHY;
#line 75 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (_tmp15_) {
#line 373 "test-case.c"
			gchar** _tmp16_ = NULL;
			gint _tmp16__length1 = 0;
			gchar* _tmp17_ = NULL;
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp16_ = locations;
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp16__length1 = locations_length1;
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp17_ = g_strdup (ABS_TOP_BUILDDIR "/backends/telepathy/.libs/telepathy.so");
#line 76 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_vala_array_add4 (&locations, &locations_length1, &_locations_size_, _tmp17_);
#line 385 "test-case.c"
		}
#line 78 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp18_ = HAVE_TRACKER;
#line 78 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (_tmp18_) {
#line 391 "test-case.c"
			gchar** _tmp19_ = NULL;
			gint _tmp19__length1 = 0;
			gchar* _tmp20_ = NULL;
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp19_ = locations;
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp19__length1 = locations_length1;
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_tmp20_ = g_strdup (ABS_TOP_BUILDDIR "/backends/tracker/.libs/tracker.so");
#line 79 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			_vala_array_add5 (&locations, &locations_length1, &_locations_size_, _tmp20_);
#line 403 "test-case.c"
		}
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp21_ = locations;
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp21__length1 = locations_length1;
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp22_ = g_strjoinv (":", _tmp21_);
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp23_ = _tmp22_;
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_setenv ("FOLKS_BACKEND_PATH", _tmp23_, TRUE);
#line 81 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_g_free0 (_tmp23_);
#line 60 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		locations = (_vala_array_free (locations, locations_length1, (GDestroyNotify) g_free), NULL);
#line 419 "test-case.c"
	}
#line 86 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("FOLKS_BACKENDS_ALLOWED", "", TRUE);
#line 40 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return self;
#line 425 "test-case.c"
}


/**
   * Create and return a transient directory suitable for use as
   * //transient_dir//. Set environment variables to point into it.
   *
   * This is only called once per process, so that it can be used in
   * environment variables that are cached or otherwise considered to
   * be process-global. As such, all tests in a TestCase share it.
   *
   * Subclasses may override this method to do additional setup
   * (create more subdirectories or set more environment variables).
   *
   * FIXME: Subclasses relying on being called by with-session-bus-*.sh
   * may override this method to return null, although we should really
   * stop doing that.
   */
static gchar* folks_test_case_real_create_transient_dir (FolksTestCase* self) {
	gchar* result = NULL;
	const gchar* tmp = NULL;
	const gchar* _tmp0_ = NULL;
	gchar* transient = NULL;
	gchar* _tmp1_ = NULL;
	const gchar* _tmp2_ = NULL;
	gchar* cache = NULL;
	gchar* _tmp5_ = NULL;
	gint _tmp6_ = 0;
	gchar* config = NULL;
	gchar* _tmp9_ = NULL;
	gint _tmp10_ = 0;
	gchar* local = NULL;
	gchar* _tmp13_ = NULL;
	gint _tmp14_ = 0;
	gchar* runtime = NULL;
	gchar* _tmp17_ = NULL;
	gint _tmp18_ = 0;
#line 122 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = g_get_tmp_dir ();
#line 122 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	tmp = _tmp0_;
#line 123 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = g_strdup_printf ("%s/folks-test.XXXXXX", tmp);
#line 123 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	transient = _tmp1_;
#line 125 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = mkdtemp (transient);
#line 125 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp2_ == NULL) {
#line 475 "test-case.c"
		gint _tmp3_ = 0;
		const gchar* _tmp4_ = NULL;
#line 126 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp3_ = errno;
#line 126 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp4_ = g_strerror (_tmp3_);
#line 126 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_error ("test-case.vala:126: unable to create temporary directory in '%s': %s", tmp, _tmp4_);
#line 484 "test-case.c"
	}
#line 129 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_debug ("test-case.vala:129: setting up in transient directory %s", transient);
#line 132 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("HOME", transient, TRUE);
#line 136 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("G_HOME", transient, TRUE);
#line 138 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp5_ = g_strdup_printf ("%s/.cache", transient);
#line 138 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	cache = _tmp5_;
#line 139 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("XDG_CACHE_HOME", cache, TRUE);
#line 141 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp6_ = g_mkdir_with_parents (cache, 0700);
#line 141 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp6_ != 0) {
#line 502 "test-case.c"
		gint _tmp7_ = 0;
		const gchar* _tmp8_ = NULL;
#line 142 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp7_ = errno;
#line 142 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp8_ = g_strerror (_tmp7_);
#line 142 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_error ("test-case.vala:142: unable to create '%s': %s", cache, _tmp8_);
#line 511 "test-case.c"
	}
#line 145 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp9_ = g_strdup_printf ("%s/.config", transient);
#line 145 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	config = _tmp9_;
#line 146 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("XDG_CONFIG_HOME", config, TRUE);
#line 148 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp10_ = g_mkdir_with_parents (config, 0700);
#line 148 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp10_ != 0) {
#line 523 "test-case.c"
		gint _tmp11_ = 0;
		const gchar* _tmp12_ = NULL;
#line 149 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp11_ = errno;
#line 149 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp12_ = g_strerror (_tmp11_);
#line 149 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_error ("test-case.vala:149: unable to create '%s': %s", config, _tmp12_);
#line 532 "test-case.c"
	}
#line 152 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp13_ = g_strdup_printf ("%s/.local/share", transient);
#line 152 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	local = _tmp13_;
#line 153 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("XDG_DATA_HOME", local, TRUE);
#line 155 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp14_ = g_mkdir_with_parents (local, 0700);
#line 155 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp14_ != 0) {
#line 544 "test-case.c"
		gint _tmp15_ = 0;
		const gchar* _tmp16_ = NULL;
#line 156 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp15_ = errno;
#line 156 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp16_ = g_strerror (_tmp15_);
#line 156 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_error ("test-case.vala:156: unable to create '%s': %s", local, _tmp16_);
#line 553 "test-case.c"
	}
#line 162 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp17_ = g_strdup_printf ("%s/XDG_RUNTIME_DIR", transient);
#line 162 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	runtime = _tmp17_;
#line 163 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("XDG_RUNTIME_DIR", runtime, TRUE);
#line 165 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp18_ = g_mkdir_with_parents (runtime, 0700);
#line 165 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp18_ != 0) {
#line 565 "test-case.c"
		gint _tmp19_ = 0;
		const gchar* _tmp20_ = NULL;
#line 166 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp19_ = errno;
#line 166 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp20_ = g_strerror (_tmp19_);
#line 166 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_error ("test-case.vala:166: unable to create '%s': %s", runtime, _tmp20_);
#line 574 "test-case.c"
	}
#line 171 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_DESKTOP_DIR");
#line 172 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_DOCUMENTS_DIR");
#line 173 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_DOWNLOAD_DIR");
#line 174 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_MUSIC_DIR");
#line 175 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_PICTURES_DIR");
#line 176 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_PUBLICSHARE_DIR");
#line 177 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_TEMPLATES_DIR");
#line 178 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("XDG_VIDEOS_DIR");
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	result = transient;
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (runtime);
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (local);
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (config);
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (cache);
#line 180 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return result;
#line 604 "test-case.c"
}


gchar* folks_test_case_create_transient_dir (FolksTestCase* self) {
#line 120 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 120 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return FOLKS_TEST_CASE_GET_CLASS (self)->create_transient_dir (self);
#line 613 "test-case.c"
}


/**
   * Start the temporary D-Bus session.
   *
   * This is per-process, not per-test, for the reasons mentioned for
   * //test_dbus//.
   */
static gpointer _g_object_ref0 (gpointer self) {
#line 220 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return self ? g_object_ref (self) : NULL;
#line 626 "test-case.c"
}


static void folks_test_case_real_private_bus_up (FolksTestCase* self) {
	GTestDBus* _tmp0_ = NULL;
	GTestDBus* test_dbus = NULL;
	GTestDBus* _tmp1_ = NULL;
	GTestDBus* _tmp2_ = NULL;
	const gchar* _tmp3_ = NULL;
#line 216 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("DBUS_SESSION_BUS_ADDRESS");
#line 217 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_unsetenv ("DBUS_SESSION_BUS_PID");
#line 219 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = g_test_dbus_new (G_TEST_DBUS_NONE);
#line 219 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_object_unref0 (self->test_dbus);
#line 219 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->test_dbus = _tmp0_;
#line 220 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = self->test_dbus;
#line 220 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, g_test_dbus_get_type (), GTestDBus));
#line 220 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	test_dbus = _tmp2_;
#line 222 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_test_dbus_up (test_dbus);
#line 224 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp3_ = g_getenv ("DBUS_SESSION_BUS_ADDRESS");
#line 224 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_vala_assert (_tmp3_ != NULL, "Environment.get_variable (\"DBUS_SESSION_BUS_ADDRESS\") != null");
#line 229 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_setenv ("FOLKS_TESTS_SANDBOXED_DBUS", "no-services", TRUE);
#line 214 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_object_unref0 (test_dbus);
#line 662 "test-case.c"
}


void folks_test_case_private_bus_up (FolksTestCase* self) {
#line 214 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 214 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_GET_CLASS (self)->private_bus_up (self);
#line 671 "test-case.c"
}


void folks_test_case_register (FolksTestCase* self) {
	GTestSuite* _tmp0_ = NULL;
	GTestSuite* _tmp1_ = NULL;
#line 233 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 235 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = g_test_get_root ();
#line 235 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = self->priv->_suite;
#line 235 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_test_suite_add_suite (_tmp0_, _tmp1_);
#line 686 "test-case.c"
}


void folks_test_case_add_test (FolksTestCase* self, const gchar* name, FolksTestCaseTestMethod test, void* test_target) {
	GTestSuite* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	FolksTestCaseTestMethod _tmp2_ = NULL;
	void* _tmp2__target = NULL;
	GTestCase* _tmp3_ = NULL;
#line 238 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 238 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (name != NULL);
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = self->priv->_suite;
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = name;
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = test;
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2__target = test_target;
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp3_ = folks_test_case_add_test_helper (self, _tmp1_, _tmp2_, _tmp2__target);
#line 240 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_test_suite_add (_tmp0_, _tmp3_);
#line 712 "test-case.c"
}


/**
   * Set up for one test. If you have more than one test, this will
   * be called once per test.
   *
   * Subclasses may override this method. They are expected to chain up
   * as the first thing in their implementation.
   */
static void folks_test_case_real_set_up (FolksTestCase* self) {
}


void folks_test_case_set_up (FolksTestCase* self) {
#line 253 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 253 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_GET_CLASS (self)->set_up (self);
#line 732 "test-case.c"
}


/**
   * Clean up after one test, undoing set_up(). If you have more than
   * one test, this will be called once per test.
   *
   * Subclasses may override this method. They are expected to chain up
   * as the last thing in their implementation.
   */
static void folks_test_case_real_tear_down (FolksTestCase* self) {
}


void folks_test_case_tear_down (FolksTestCase* self) {
#line 264 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 264 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_GET_CLASS (self)->tear_down (self);
#line 752 "test-case.c"
}


/**
   * Clean up after all tests. If you have more than one test case, this
   * will be called once, the last time only. It should undo the
   * constructor, and must be idempotent (i.e. OK to call more than once).
   *
   * Subclasses may override this method. They are expected to chain up
   * as the last thing in their implementation.
   *
   * If there are no reference leaks, this method will be called
   * automatically when the TestCase is destroyed.
   */
static void folks_test_case_real_final_tear_down (FolksTestCase* self) {
	gboolean _tmp0_ = FALSE;
	gboolean _tmp1_ = FALSE;
	GTestDBus* _tmp2_ = NULL;
	const gchar* _tmp4_ = NULL;
#line 283 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = folks_test_case_get_uses_dbus_1 (self);
#line 283 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = _tmp0_;
#line 283 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp1_) {
#line 284 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_folks_test_case_dbus_1_set_no_exit_on_disconnect ();
#line 780 "test-case.c"
	}
#line 286 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = self->test_dbus;
#line 286 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp2_ != NULL) {
#line 786 "test-case.c"
		GTestDBus* _tmp3_ = NULL;
#line 288 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp3_ = self->test_dbus;
#line 288 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_test_dbus_down (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, g_test_dbus_get_type (), GTestDBus));
#line 289 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_g_object_unref0 (self->test_dbus);
#line 289 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		self->test_dbus = NULL;
#line 796 "test-case.c"
	}
#line 292 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp4_ = self->priv->_transient_dir;
#line 292 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp4_ != NULL) {
#line 802 "test-case.c"
		const gchar* dir = NULL;
		const gchar* _tmp5_ = NULL;
		const gchar* _tmp6_ = NULL;
#line 294 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp5_ = self->priv->_transient_dir;
#line 294 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		dir = (const gchar*) _tmp5_;
#line 295 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp6_ = dir;
#line 295 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		haze_remove_directory (_tmp6_);
#line 814 "test-case.c"
	}
}


void folks_test_case_final_tear_down (FolksTestCase* self) {
#line 281 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (self != NULL);
#line 281 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_GET_CLASS (self)->final_tear_down (self);
#line 824 "test-case.c"
}


const gchar* folks_test_case_get_transient_dir (FolksTestCase* self) {
	const gchar* result;
	const gchar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
#line 98 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 100 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = self->priv->_transient_dir;
#line 100 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_vala_assert (_tmp0_ != NULL, "this._transient_dir != null");
#line 101 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = self->priv->_transient_dir;
#line 101 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	result = (const gchar*) _tmp1_;
#line 101 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return result;
#line 844 "test-case.c"
}


gboolean folks_test_case_get_uses_dbus_1 (FolksTestCase* self) {
#line 202 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (self != NULL, FALSE);
#line 202 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return FOLKS_TEST_CASE_GET_CLASS (self)->get_uses_dbus_1 (self);
#line 853 "test-case.c"
}


static gboolean folks_test_case_real_get_uses_dbus_1 (FolksTestCase* base) {
	gboolean result;
	FolksTestCase* self;
#line 202 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self = base;
#line 204 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	result = FALSE;
#line 204 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return result;
#line 866 "test-case.c"
}


static FolksTestCaseLogAdaptor* folks_test_case_log_adaptor_construct (GType object_type) {
	FolksTestCaseLogAdaptor* self = NULL;
#line 306 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self = (FolksTestCaseLogAdaptor*) g_type_create_instance (object_type);
#line 306 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return self;
#line 876 "test-case.c"
}


static FolksTestCaseLogAdaptor* folks_test_case_log_adaptor_new (void) {
#line 306 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return folks_test_case_log_adaptor_construct (FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR);
#line 883 "test-case.c"
}


static void __folks_test_case_log_adaptor_printerr_func_stack_trace_gprint_func (const gchar* text) {
#line 312 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_folks_test_case_log_adaptor_printerr_func_stack_trace (text);
#line 890 "test-case.c"
}


static void __folks_test_case_log_adaptor_log_func_stack_trace_glog_func (const gchar* log_domain, GLogLevelFlags log_levels, const gchar* message, gpointer self) {
#line 313 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_folks_test_case_log_adaptor_log_func_stack_trace (log_domain, log_levels, message);
#line 897 "test-case.c"
}


static void folks_test_case_log_adaptor_set_up (void) {
#line 312 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_set_printerr_handler (__folks_test_case_log_adaptor_printerr_func_stack_trace_gprint_func);
#line 313 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_log_set_default_handler (__folks_test_case_log_adaptor_log_func_stack_trace_glog_func, NULL);
#line 906 "test-case.c"
}


static void _folks_test_case_log_adaptor_printerr_func_stack_trace (const gchar* text) {
	gboolean _tmp0_ = FALSE;
	const gchar* _tmp1_ = NULL;
	gboolean _tmp5_ = FALSE;
	FILE* _tmp6_ = NULL;
	const gchar* _tmp7_ = NULL;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = text;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp1_ == NULL) {
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp0_ = TRUE;
#line 922 "test-case.c"
	} else {
		GEqualFunc _tmp2_ = NULL;
		const gchar* _tmp3_ = NULL;
		gboolean _tmp4_ = FALSE;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp2_ = g_str_equal;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp3_ = text;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp4_ = _tmp2_ (_tmp3_, "");
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		_tmp0_ = _tmp4_;
#line 935 "test-case.c"
	}
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp5_ = _tmp0_;
#line 318 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (_tmp5_) {
#line 319 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		return;
#line 943 "test-case.c"
	}
#line 321 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp6_ = stderr;
#line 321 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp7_ = text;
#line 321 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	fprintf (_tmp6_, "%s", _tmp7_);
#line 324 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_on_error_stack_trace ("libtool --mode=execute gdb");
#line 953 "test-case.c"
}


static void _folks_test_case_log_adaptor_log_func_stack_trace (const gchar* log_domain, GLogLevelFlags log_levels, const gchar* message) {
	GLogFunc _tmp0_ = NULL;
	void* _tmp0__target = NULL;
	const gchar* _tmp1_ = NULL;
	GLogLevelFlags _tmp2_ = 0;
	const gchar* _tmp3_ = NULL;
	GLogLevelFlags _tmp4_ = 0;
#line 327 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (message != NULL);
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ = g_log_default_handler;
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0__target = NULL;
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp1_ = log_domain;
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp2_ = log_levels;
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp3_ = message;
#line 331 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp0_ (_tmp1_, _tmp2_, _tmp3_, _tmp0__target);
#line 335 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_tmp4_ = log_levels;
#line 335 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if ((_tmp4_ & ((G_LOG_LEVEL_WARNING | G_LOG_LEVEL_ERROR) | G_LOG_LEVEL_CRITICAL)) != 0) {
#line 340 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_on_error_stack_trace ("libtool --mode=execute gdb");
#line 984 "test-case.c"
	}
}


static void folks_test_case_value_log_adaptor_init (GValue* value) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	value->data[0].v_pointer = NULL;
#line 992 "test-case.c"
}


static void folks_test_case_value_log_adaptor_free_value (GValue* value) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (value->data[0].v_pointer) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		folks_test_case_log_adaptor_unref (value->data[0].v_pointer);
#line 1001 "test-case.c"
	}
}


static void folks_test_case_value_log_adaptor_copy_value (const GValue* src_value, GValue* dest_value) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (src_value->data[0].v_pointer) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		dest_value->data[0].v_pointer = folks_test_case_log_adaptor_ref (src_value->data[0].v_pointer);
#line 1011 "test-case.c"
	} else {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		dest_value->data[0].v_pointer = NULL;
#line 1015 "test-case.c"
	}
}


static gpointer folks_test_case_value_log_adaptor_peek_pointer (const GValue* value) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return value->data[0].v_pointer;
#line 1023 "test-case.c"
}


static gchar* folks_test_case_value_log_adaptor_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (collect_values[0].v_pointer) {
#line 1030 "test-case.c"
		FolksTestCaseLogAdaptor* object;
		object = collect_values[0].v_pointer;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		if (object->parent_instance.g_class == NULL) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 1037 "test-case.c"
		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
#line 1041 "test-case.c"
		}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = folks_test_case_log_adaptor_ref (object);
#line 1045 "test-case.c"
	} else {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = NULL;
#line 1049 "test-case.c"
	}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return NULL;
#line 1053 "test-case.c"
}


static gchar* folks_test_case_value_log_adaptor_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) {
	FolksTestCaseLogAdaptor** object_p;
	object_p = collect_values[0].v_pointer;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (!object_p) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
#line 1064 "test-case.c"
	}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (!value->data[0].v_pointer) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*object_p = NULL;
#line 1070 "test-case.c"
	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*object_p = value->data[0].v_pointer;
#line 1074 "test-case.c"
	} else {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		*object_p = folks_test_case_log_adaptor_ref (value->data[0].v_pointer);
#line 1078 "test-case.c"
	}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return NULL;
#line 1082 "test-case.c"
}


static GParamSpec* folks_test_case_param_spec_log_adaptor (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) {
	FolksTestCaseParamSpecLogAdaptor* spec;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (g_type_is_a (object_type, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR), NULL);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	G_PARAM_SPEC (spec)->value_type = object_type;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return G_PARAM_SPEC (spec);
#line 1096 "test-case.c"
}


static gpointer folks_test_case_value_get_log_adaptor (const GValue* value) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR), NULL);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return value->data[0].v_pointer;
#line 1105 "test-case.c"
}


static void folks_test_case_value_set_log_adaptor (GValue* value, gpointer v_object) {
	FolksTestCaseLogAdaptor* old;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	old = value->data[0].v_pointer;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (v_object) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = v_object;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		folks_test_case_log_adaptor_ref (value->data[0].v_pointer);
#line 1125 "test-case.c"
	} else {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = NULL;
#line 1129 "test-case.c"
	}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (old) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		folks_test_case_log_adaptor_unref (old);
#line 1135 "test-case.c"
	}
}


static void folks_test_case_value_take_log_adaptor (GValue* value, gpointer v_object) {
	FolksTestCaseLogAdaptor* old;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	old = value->data[0].v_pointer;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (v_object) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = v_object;
#line 1154 "test-case.c"
	} else {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		value->data[0].v_pointer = NULL;
#line 1158 "test-case.c"
	}
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (old) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		folks_test_case_log_adaptor_unref (old);
#line 1164 "test-case.c"
	}
}


static void folks_test_case_log_adaptor_class_init (FolksTestCaseLogAdaptorClass * klass) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	folks_test_case_log_adaptor_parent_class = g_type_class_peek_parent (klass);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_LOG_ADAPTOR_CLASS (klass)->finalize = folks_test_case_log_adaptor_finalize;
#line 1174 "test-case.c"
}


static void folks_test_case_log_adaptor_instance_init (FolksTestCaseLogAdaptor * self) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->ref_count = 1;
#line 1181 "test-case.c"
}


static void folks_test_case_log_adaptor_finalize (FolksTestCaseLogAdaptor* obj) {
	FolksTestCaseLogAdaptor * self;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, FOLKS_TEST_CASE_TYPE_LOG_ADAPTOR, FolksTestCaseLogAdaptor);
#line 1189 "test-case.c"
}


static GType folks_test_case_log_adaptor_get_type (void) {
	static volatile gsize folks_test_case_log_adaptor_type_id__volatile = 0;
	if (g_once_init_enter (&folks_test_case_log_adaptor_type_id__volatile)) {
		static const GTypeValueTable g_define_type_value_table = { folks_test_case_value_log_adaptor_init, folks_test_case_value_log_adaptor_free_value, folks_test_case_value_log_adaptor_copy_value, folks_test_case_value_log_adaptor_peek_pointer, "p", folks_test_case_value_log_adaptor_collect_value, "p", folks_test_case_value_log_adaptor_lcopy_value };
		static const GTypeInfo g_define_type_info = { sizeof (FolksTestCaseLogAdaptorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) folks_test_case_log_adaptor_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (FolksTestCaseLogAdaptor), 0, (GInstanceInitFunc) folks_test_case_log_adaptor_instance_init, &g_define_type_value_table };
		static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
		GType folks_test_case_log_adaptor_type_id;
		folks_test_case_log_adaptor_type_id = g_type_register_fundamental (g_type_fundamental_next (), "FolksTestCaseLogAdaptor", &g_define_type_info, &g_define_type_fundamental_info, 0);
		g_once_init_leave (&folks_test_case_log_adaptor_type_id__volatile, folks_test_case_log_adaptor_type_id);
	}
	return folks_test_case_log_adaptor_type_id__volatile;
}


static gpointer folks_test_case_log_adaptor_ref (gpointer instance) {
	FolksTestCaseLogAdaptor* self;
	self = instance;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_atomic_int_inc (&self->ref_count);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	return instance;
#line 1214 "test-case.c"
}


static void folks_test_case_log_adaptor_unref (gpointer instance) {
	FolksTestCaseLogAdaptor* self;
	self = instance;
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	if (g_atomic_int_dec_and_test (&self->ref_count)) {
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		FOLKS_TEST_CASE_LOG_ADAPTOR_GET_CLASS (self)->finalize (self);
#line 304 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_type_free_instance ((GTypeInstance *) self);
#line 1227 "test-case.c"
	}
}


static void folks_test_case_class_init (FolksTestCaseClass * klass) {
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	folks_test_case_parent_class = g_type_class_peek_parent (klass);
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_type_class_add_private (klass, sizeof (FolksTestCasePrivate));
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->create_transient_dir = folks_test_case_real_create_transient_dir;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->private_bus_up = folks_test_case_real_private_bus_up;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->set_up = folks_test_case_real_set_up;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->tear_down = folks_test_case_real_tear_down;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->final_tear_down = folks_test_case_real_final_tear_down;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	FOLKS_TEST_CASE_CLASS (klass)->get_uses_dbus_1 = folks_test_case_real_get_uses_dbus_1;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	G_OBJECT_CLASS (klass)->get_property = _vala_folks_test_case_get_property;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	G_OBJECT_CLASS (klass)->finalize = folks_test_case_finalize;
#line 1253 "test-case.c"
	/**
	   * A transient directory normally created in the constructor and deleted
	   * in final_tear_down(). This can be used for temporary storage.
	   * The environment variables ``XDG_CONFIG_HOME``, ``XDG_DATA_HOME``,
	   * ``XDG_CACHE_HOME``, etc. point into it.
	   */
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), FOLKS_TEST_CASE_TRANSIENT_DIR, g_param_spec_string ("transient-dir", "transient-dir", "transient-dir", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 1262 "test-case.c"
	/**
	   * If true, libraries involved in this test use dbus-1 (or dbus-glib-1)
	   * so we need to turn off its exit-on-disconnect feature.
	   *
	   * FIXME: when our dependencies stop needing this, this whole feature
	   * can be removed (GNOME#696177).
	   */
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	g_object_class_install_property (G_OBJECT_CLASS (klass), FOLKS_TEST_CASE_USES_DBUS_1, g_param_spec_boolean ("uses-dbus-1", "uses-dbus-1", "uses-dbus-1", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE));
#line 1272 "test-case.c"
}


static void folks_test_case_instance_init (FolksTestCase * self) {
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->priv = FOLKS_TEST_CASE_GET_PRIVATE (self);
#line 89 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->priv->_transient_dir = NULL;
#line 191 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self->test_dbus = NULL;
#line 1283 "test-case.c"
}


static void folks_test_case_finalize (GObject* obj) {
	FolksTestCase * self;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, FOLKS_TYPE_TEST_CASE, FolksTestCase);
#line 301 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	folks_test_case_final_tear_down (self);
#line 89 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_free0 (self->priv->_transient_dir);
#line 191 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	_g_object_unref0 (self->test_dbus);
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	G_OBJECT_CLASS (folks_test_case_parent_class)->finalize (obj);
#line 1299 "test-case.c"
}


/**
 * A test case for Folks, containing one or more individual tests.
 *
 * The constructor configures Folks to disallow all backends, via
 * ``FOLKS_BACKENDS_ALLOWED``. Subclasses are expected to reset
 * this variable to a suitable value in their constructors or
 * set_up() methods.
 */
GType folks_test_case_get_type (void) {
	static volatile gsize folks_test_case_type_id__volatile = 0;
	if (g_once_init_enter (&folks_test_case_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (FolksTestCaseClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) folks_test_case_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (FolksTestCase), 0, (GInstanceInitFunc) folks_test_case_instance_init, NULL };
		GType folks_test_case_type_id;
		folks_test_case_type_id = g_type_register_static (G_TYPE_OBJECT, "FolksTestCase", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
		g_once_init_leave (&folks_test_case_type_id__volatile, folks_test_case_type_id);
	}
	return folks_test_case_type_id__volatile;
}


static void _vala_folks_test_case_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
	FolksTestCase * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (object, FOLKS_TYPE_TEST_CASE, FolksTestCase);
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
	switch (property_id) {
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		case FOLKS_TEST_CASE_TRANSIENT_DIR:
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_value_set_string (value, folks_test_case_get_transient_dir (self));
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		break;
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		case FOLKS_TEST_CASE_USES_DBUS_1:
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		g_value_set_boolean (value, folks_test_case_get_uses_dbus_1 (self));
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		break;
#line 1340 "test-case.c"
		default:
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
#line 35 "/home/treitter/collabora/folks/tests/lib/test-case.vala"
		break;
#line 1346 "test-case.c"
	}
}


static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) {
	if ((array != NULL) && (destroy_func != NULL)) {
		int i;
		for (i = 0; i < array_length; i = i + 1) {
			if (((gpointer*) array)[i] != NULL) {
				destroy_func (((gpointer*) array)[i]);
			}
		}
	}
}


static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) {
	_vala_array_destroy (array, array_length, destroy_func);
	g_free (array);
}



