/* email-details.c generated by valac 0.26.2.1-1f25, the Vala compiler
 * generated from email-details.vala, do not modify */

/*
 * Copyright (C) 2011, 2015 Collabora Ltd.
 *
 * 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, see <http://www.gnu.org/licenses/>.
 *
 * Authors: Raul Gutierrez Segales <raul.gutierrez.segales@collabora.co.uk>
 *          Philip Withnall <philip.withnall@collabora.co.uk>
 *
 */

#include <glib.h>
#include <glib-object.h>
#include <eds-test.h>
#include <folks-test.h>
#include <gee.h>
#include <stdlib.h>
#include <string.h>
#include <folks/folks-eds.h>
#include <folks/folks.h>


#define TYPE_EMAIL_DETAILS_TESTS (email_details_tests_get_type ())
#define EMAIL_DETAILS_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EMAIL_DETAILS_TESTS, EmailDetailsTests))
#define EMAIL_DETAILS_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EMAIL_DETAILS_TESTS, EmailDetailsTestsClass))
#define IS_EMAIL_DETAILS_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EMAIL_DETAILS_TESTS))
#define IS_EMAIL_DETAILS_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EMAIL_DETAILS_TESTS))
#define EMAIL_DETAILS_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EMAIL_DETAILS_TESTS, EmailDetailsTestsClass))

typedef struct _EmailDetailsTests EmailDetailsTests;
typedef struct _EmailDetailsTestsClass EmailDetailsTestsClass;
typedef struct _EmailDetailsTestsPrivate EmailDetailsTestsPrivate;
#define __vala_GValue_free0(var) ((var == NULL) ? NULL : (var = (_vala_GValue_free (var), NULL)))
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _EmailDetailsTests {
	EdsTestTestCase parent_instance;
	EmailDetailsTestsPrivate * priv;
};

struct _EmailDetailsTestsClass {
	EdsTestTestCaseClass parent_class;
};


static gpointer email_details_tests_parent_class = NULL;

GType email_details_tests_get_type (void) G_GNUC_CONST;
enum  {
	EMAIL_DETAILS_TESTS_DUMMY_PROPERTY
};
EmailDetailsTests* email_details_tests_new (void);
EmailDetailsTests* email_details_tests_construct (GType object_type);
void email_details_tests_test_email_details (EmailDetailsTests* self);
static void _email_details_tests_test_email_details_folks_test_case_test_method (gpointer self);
static GValue* _g_value_dup (GValue* self);
static void _vala_GValue_free (GValue* self);
static void _email_details_tests_check_email_details (EmailDetailsTests* self, FolksIndividual* i, guint n_expected);
gint _vala_main (gchar** args, int args_length1);
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 _email_details_tests_test_email_details_folks_test_case_test_method (gpointer self) {
#line 32 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	email_details_tests_test_email_details ((EmailDetailsTests*) self);
#line 83 "email-details.c"
}


EmailDetailsTests* email_details_tests_construct (GType object_type) {
	EmailDetailsTests * self = NULL;
#line 30 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	self = (EmailDetailsTests*) eds_test_test_case_construct (object_type, "EmailDetails");
#line 32 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	folks_test_case_add_test ((FolksTestCase*) self, "email details interface", _email_details_tests_test_email_details_folks_test_case_test_method, g_object_ref (self), g_object_unref);
#line 28 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return self;
#line 95 "email-details.c"
}


EmailDetailsTests* email_details_tests_new (void) {
#line 28 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return email_details_tests_construct (TYPE_EMAIL_DETAILS_TESTS);
#line 102 "email-details.c"
}


static GValue* _g_value_dup (GValue* self) {
#line 38 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return g_boxed_copy (G_TYPE_VALUE, self);
#line 109 "email-details.c"
}


static void _vala_GValue_free (GValue* self) {
#line 38 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_unset (self);
#line 38 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_free (self);
#line 118 "email-details.c"
}


static gpointer __g_value_dup0 (gpointer self) {
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return self ? _g_value_dup (self) : NULL;
#line 125 "email-details.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 53 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return self ? g_object_ref (self) : NULL;
#line 132 "email-details.c"
}


void email_details_tests_test_email_details (EmailDetailsTests* self) {
	GeeHashMap* c1 = NULL;
	GeeHashMap* _tmp0_ = NULL;
	GeeHashMap* c2 = NULL;
	GeeHashMap* _tmp1_ = NULL;
	GeeHashMap* c3 = NULL;
	GeeHashMap* _tmp2_ = NULL;
	GValue* v = NULL;
	GValue _tmp3_ = {0};
	GValue _tmp4_ = {0};
	GValue* _tmp5_ = NULL;
	GValue* _tmp6_ = NULL;
	GValue* _tmp7_ = NULL;
	GValue* _tmp8_ = NULL;
	GValue _tmp9_ = {0};
	GValue _tmp10_ = {0};
	GValue* _tmp11_ = NULL;
	GValue* _tmp12_ = NULL;
	const gchar* _tmp13_ = NULL;
	GValue* _tmp14_ = NULL;
	GValue* _tmp15_ = NULL;
	GValue _tmp16_ = {0};
	GValue _tmp17_ = {0};
	GValue* _tmp18_ = NULL;
	GValue* _tmp19_ = NULL;
	const gchar* _tmp20_ = NULL;
	GValue* _tmp21_ = NULL;
	GValue* _tmp22_ = NULL;
	EdsTestBackend* _tmp23_ = NULL;
	GeeHashMap* _tmp24_ = NULL;
	GValue _tmp25_ = {0};
	GValue _tmp26_ = {0};
	GValue* _tmp27_ = NULL;
	GValue* _tmp28_ = NULL;
	GValue* _tmp29_ = NULL;
	GValue* _tmp30_ = NULL;
	GValue _tmp31_ = {0};
	GValue _tmp32_ = {0};
	GValue* _tmp33_ = NULL;
	GValue* _tmp34_ = NULL;
	const gchar* _tmp35_ = NULL;
	GValue* _tmp36_ = NULL;
	GValue* _tmp37_ = NULL;
	GValue _tmp38_ = {0};
	GValue _tmp39_ = {0};
	GValue* _tmp40_ = NULL;
	GValue* _tmp41_ = NULL;
	const gchar* _tmp42_ = NULL;
	GValue* _tmp43_ = NULL;
	GValue* _tmp44_ = NULL;
	EdsTestBackend* _tmp45_ = NULL;
	GeeHashMap* _tmp46_ = NULL;
	GValue _tmp47_ = {0};
	GValue _tmp48_ = {0};
	GValue* _tmp49_ = NULL;
	GValue* _tmp50_ = NULL;
	GValue* _tmp51_ = NULL;
	GValue* _tmp52_ = NULL;
	GValue _tmp53_ = {0};
	GValue _tmp54_ = {0};
	GValue* _tmp55_ = NULL;
	GValue* _tmp56_ = NULL;
	const gchar* _tmp57_ = NULL;
	GValue* _tmp58_ = NULL;
	GValue* _tmp59_ = NULL;
	GValue _tmp60_ = {0};
	GValue _tmp61_ = {0};
	GValue* _tmp62_ = NULL;
	GValue* _tmp63_ = NULL;
	const gchar* _tmp64_ = NULL;
	GValue* _tmp65_ = NULL;
	GValue* _tmp66_ = NULL;
	EdsTestBackend* _tmp67_ = NULL;
	GeeHashMap* _tmp68_ = NULL;
	EdsTestBackend* _tmp69_ = NULL;
	FolksIndividualAggregator* aggregator = NULL;
	FolksIndividualAggregator* _tmp70_ = NULL;
	gchar* _tmp71_ = NULL;
	gchar* _tmp72_ = NULL;
	gchar* _tmp73_ = NULL;
	gchar** _tmp74_ = NULL;
	gchar** _tmp75_ = NULL;
	gint _tmp75__length1 = 0;
	FolksIndividual* i1 = NULL;
	FolksIndividual* _tmp76_ = NULL;
	FolksIndividual* i2 = NULL;
	FolksIndividual* _tmp77_ = NULL;
	FolksIndividual* i3 = NULL;
	FolksIndividual* _tmp78_ = NULL;
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_return_if_fail (self != NULL);
#line 38 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp0_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, G_TYPE_VALUE, (GBoxedCopyFunc) _g_value_dup, _vala_GValue_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 38 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	c1 = _tmp0_;
#line 39 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp1_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, G_TYPE_VALUE, (GBoxedCopyFunc) _g_value_dup, _vala_GValue_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 39 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	c2 = _tmp1_;
#line 40 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp2_ = gee_hash_map_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, G_TYPE_VALUE, (GBoxedCopyFunc) _g_value_dup, _vala_GValue_free, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
#line 40 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	c3 = _tmp2_;
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp3_, G_TYPE_STRING);
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp4_ = _tmp3_;
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp5_ = __g_value_dup0 (&_tmp4_);
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp5_;
#line 43 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp4_) ? (g_value_unset (&_tmp4_), NULL) : NULL;
#line 44 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp6_ = v;
#line 44 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp6_, "bernie h. innocenti");
#line 45 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp7_ = v;
#line 45 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 45 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp8_ = _tmp7_;
#line 45 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c1, "full_name", _tmp8_);
#line 45 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp8_);
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp9_, G_TYPE_STRING);
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp10_ = _tmp9_;
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp11_ = __g_value_dup0 (&_tmp10_);
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp11_;
#line 46 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp10_) ? (g_value_unset (&_tmp10_), NULL) : NULL;
#line 47 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp12_ = v;
#line 47 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp12_, "bernie@example.org");
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp13_ = EDSF_PERSONA_email_fields[0];
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp14_ = v;
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp15_ = _tmp14_;
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c1, _tmp13_, _tmp15_);
#line 48 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp15_);
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp16_, G_TYPE_STRING);
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp17_ = _tmp16_;
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp18_ = __g_value_dup0 (&_tmp17_);
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp18_;
#line 49 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp17_) ? (g_value_unset (&_tmp17_), NULL) : NULL;
#line 50 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp19_ = v;
#line 50 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp19_, "bernie.innocenti@example.org");
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp20_ = EDSF_PERSONA_email_fields[1];
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp21_ = v;
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp22_ = _tmp21_;
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c1, _tmp20_, _tmp22_);
#line 51 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp22_);
#line 53 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp23_ = ((EdsTestTestCase*) self)->eds_backend;
#line 53 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp24_ = _g_object_ref0 (c1);
#line 53 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	eds_test_backend_add_contact (_tmp23_, _tmp24_);
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp25_, G_TYPE_STRING);
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp26_ = _tmp25_;
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp27_ = __g_value_dup0 (&_tmp26_);
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp27_;
#line 55 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp26_) ? (g_value_unset (&_tmp26_), NULL) : NULL;
#line 56 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp28_ = v;
#line 56 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp28_, "richard m. stallman");
#line 57 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp29_ = v;
#line 57 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 57 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp30_ = _tmp29_;
#line 57 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c2, "full_name", _tmp30_);
#line 57 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp30_);
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp31_, G_TYPE_STRING);
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp32_ = _tmp31_;
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp33_ = __g_value_dup0 (&_tmp32_);
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp33_;
#line 58 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp32_) ? (g_value_unset (&_tmp32_), NULL) : NULL;
#line 59 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp34_ = v;
#line 59 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp34_, "rms@example.org");
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp35_ = EDSF_PERSONA_email_fields[0];
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp36_ = v;
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp37_ = _tmp36_;
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c2, _tmp35_, _tmp37_);
#line 60 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp37_);
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp38_, G_TYPE_STRING);
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp39_ = _tmp38_;
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp40_ = __g_value_dup0 (&_tmp39_);
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp40_;
#line 61 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp39_) ? (g_value_unset (&_tmp39_), NULL) : NULL;
#line 62 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp41_ = v;
#line 62 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp41_, "rms.1@example.org");
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp42_ = EDSF_PERSONA_email_fields[1];
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp43_ = v;
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp44_ = _tmp43_;
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c2, _tmp42_, _tmp44_);
#line 63 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp44_);
#line 65 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp45_ = ((EdsTestTestCase*) self)->eds_backend;
#line 65 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp46_ = _g_object_ref0 (c2);
#line 65 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	eds_test_backend_add_contact (_tmp45_, _tmp46_);
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp47_, G_TYPE_STRING);
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp48_ = _tmp47_;
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp49_ = __g_value_dup0 (&_tmp48_);
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp49_;
#line 67 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp48_) ? (g_value_unset (&_tmp48_), NULL) : NULL;
#line 68 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp50_ = v;
#line 68 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp50_, "foo bar");
#line 69 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp51_ = v;
#line 69 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 69 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp52_ = _tmp51_;
#line 69 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c3, "full_name", _tmp52_);
#line 69 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp52_);
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp53_, G_TYPE_STRING);
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp54_ = _tmp53_;
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp55_ = __g_value_dup0 (&_tmp54_);
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp55_;
#line 70 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp54_) ? (g_value_unset (&_tmp54_), NULL) : NULL;
#line 71 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp56_ = v;
#line 71 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp56_, "foo@example.org");
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp57_ = EDSF_PERSONA_email_fields[0];
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp58_ = v;
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp59_ = _tmp58_;
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c3, _tmp57_, _tmp59_);
#line 72 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp59_);
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_init (&_tmp60_, G_TYPE_STRING);
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp61_ = _tmp60_;
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp62_ = __g_value_dup0 (&_tmp61_);
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = _tmp62_;
#line 73 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	G_IS_VALUE (&_tmp61_) ? (g_value_unset (&_tmp61_), NULL) : NULL;
#line 74 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp63_ = v;
#line 74 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_value_set_string (_tmp63_, "foo.bar@example.org");
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp64_ = EDSF_PERSONA_email_fields[1];
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp65_ = v;
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	v = NULL;
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp66_ = _tmp65_;
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	gee_abstract_map_set ((GeeAbstractMap*) c3, _tmp64_, _tmp66_);
#line 75 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (_tmp66_);
#line 77 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp67_ = ((EdsTestTestCase*) self)->eds_backend;
#line 77 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp68_ = _g_object_ref0 (c3);
#line 77 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	eds_test_backend_add_contact (_tmp67_, _tmp68_);
#line 79 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp69_ = ((EdsTestTestCase*) self)->eds_backend;
#line 79 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	eds_test_backend_commit_contacts_to_addressbook_sync (_tmp69_);
#line 83 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp70_ = folks_individual_aggregator_dup ();
#line 83 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	aggregator = _tmp70_;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp71_ = g_strdup ("bernie h. innocenti");
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp72_ = g_strdup ("richard m. stallman");
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp73_ = g_strdup ("foo bar");
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp74_ = g_new0 (gchar*, 3 + 1);
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp74_[0] = _tmp71_;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp74_[1] = _tmp72_;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp74_[2] = _tmp73_;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp75_ = _tmp74_;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp75__length1 = 3;
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	folks_test_utils_aggregator_prepare_and_wait_for_individuals_sync_with_timeout (aggregator, _tmp75_, 3, 5);
#line 84 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp75_ = (_vala_array_free (_tmp75_, _tmp75__length1, (GDestroyNotify) g_free), NULL);
#line 89 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp76_ = folks_test_utils_get_individual_by_name (aggregator, "bernie h. innocenti");
#line 89 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	i1 = _tmp76_;
#line 91 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_email_details_tests_check_email_details (self, i1, (guint) 2);
#line 93 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp77_ = folks_test_utils_get_individual_by_name (aggregator, "richard m. stallman");
#line 93 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	i2 = _tmp77_;
#line 95 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_email_details_tests_check_email_details (self, i2, (guint) 2);
#line 97 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp78_ = folks_test_utils_get_individual_by_name (aggregator, "foo bar");
#line 97 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	i3 = _tmp78_;
#line 99 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_email_details_tests_check_email_details (self, i3, (guint) 2);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (i3);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (i2);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (i1);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (aggregator);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	__vala_GValue_free0 (v);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (c3);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (c2);
#line 35 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (c1);
#line 567 "email-details.c"
}


static void _email_details_tests_check_email_details (EmailDetailsTests* self, FolksIndividual* i, guint n_expected) {
	FolksEmailDetails* email_owner = NULL;
	FolksIndividual* _tmp0_ = NULL;
	FolksEmailDetails* _tmp1_ = NULL;
	FolksEmailDetails* _tmp20_ = NULL;
	GeeSet* _tmp21_ = NULL;
	GeeSet* _tmp22_ = NULL;
	gint _tmp23_ = 0;
	gint _tmp24_ = 0;
	guint _tmp25_ = 0U;
#line 102 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_return_if_fail (self != NULL);
#line 102 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_return_if_fail (i != NULL);
#line 104 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp0_ = i;
#line 104 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, FOLKS_TYPE_EMAIL_DETAILS, FolksEmailDetails));
#line 104 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	email_owner = _tmp1_;
#line 591 "email-details.c"
	{
		GeeIterator* _e_it = NULL;
		FolksEmailDetails* _tmp2_ = NULL;
		GeeSet* _tmp3_ = NULL;
		GeeSet* _tmp4_ = NULL;
		GeeIterator* _tmp5_ = NULL;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_tmp2_ = email_owner;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_tmp3_ = folks_email_details_get_email_addresses (_tmp2_);
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_tmp4_ = _tmp3_;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_tmp5_ = gee_iterable_iterator ((GeeIterable*) _tmp4_);
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_e_it = _tmp5_;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		while (TRUE) {
#line 610 "email-details.c"
			GeeIterator* _tmp6_ = NULL;
			gboolean _tmp7_ = FALSE;
			FolksEmailFieldDetails* e = NULL;
			GeeIterator* _tmp8_ = NULL;
			gpointer _tmp9_ = NULL;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			_tmp6_ = _e_it;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			_tmp7_ = gee_iterator_next (_tmp6_);
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			if (!_tmp7_) {
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				break;
#line 624 "email-details.c"
			}
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			_tmp8_ = _e_it;
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			_tmp9_ = gee_iterator_get (_tmp8_);
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			e = (FolksEmailFieldDetails*) _tmp9_;
#line 632 "email-details.c"
			{
				GeeIterator* _v_it = NULL;
				FolksEmailFieldDetails* _tmp10_ = NULL;
				GeeCollection* _tmp11_ = NULL;
				GeeCollection* _tmp12_ = NULL;
				GeeIterator* _tmp13_ = NULL;
				GeeIterator* _tmp14_ = NULL;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_tmp10_ = e;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_tmp11_ = folks_abstract_field_details_get_parameter_values ((FolksAbstractFieldDetails*) _tmp10_, FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE);
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_tmp12_ = _tmp11_;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_tmp13_ = gee_iterable_iterator ((GeeIterable*) _tmp12_);
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_tmp14_ = _tmp13_;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_g_object_unref0 (_tmp12_);
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_v_it = _tmp14_;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				while (TRUE) {
#line 656 "email-details.c"
					GeeIterator* _tmp15_ = NULL;
					gboolean _tmp16_ = FALSE;
					gchar* v = NULL;
					GeeIterator* _tmp17_ = NULL;
					gpointer _tmp18_ = NULL;
					const gchar* _tmp19_ = NULL;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_tmp15_ = _v_it;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_tmp16_ = gee_iterator_next (_tmp15_);
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					if (!_tmp16_) {
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
						break;
#line 671 "email-details.c"
					}
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_tmp17_ = _v_it;
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_tmp18_ = gee_iterator_get (_tmp17_);
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					v = (gchar*) _tmp18_;
#line 109 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_tmp19_ = v;
#line 109 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_vala_assert (g_strcmp0 (_tmp19_, FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE_OTHER) == 0, "v == AbstractFieldDetails.PARAM_TYPE_OTHER");
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
					_g_free0 (v);
#line 685 "email-details.c"
				}
#line 108 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
				_g_object_unref0 (_v_it);
#line 689 "email-details.c"
			}
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
			_g_object_unref0 (e);
#line 693 "email-details.c"
		}
#line 106 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
		_g_object_unref0 (_e_it);
#line 697 "email-details.c"
	}
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp20_ = email_owner;
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp21_ = folks_email_details_get_email_addresses (_tmp20_);
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp22_ = _tmp21_;
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp23_ = gee_collection_get_size ((GeeCollection*) _tmp22_);
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp24_ = _tmp23_;
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp25_ = n_expected;
#line 112 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_vala_assert (((guint) _tmp24_) == _tmp25_, "email_owner.email_addresses.size == n_expected");
#line 102 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (email_owner);
#line 715 "email-details.c"
}


static void email_details_tests_class_init (EmailDetailsTestsClass * klass) {
#line 26 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	email_details_tests_parent_class = g_type_class_peek_parent (klass);
#line 722 "email-details.c"
}


static void email_details_tests_instance_init (EmailDetailsTests * self) {
}


GType email_details_tests_get_type (void) {
	static volatile gsize email_details_tests_type_id__volatile = 0;
	if (g_once_init_enter (&email_details_tests_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (EmailDetailsTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) email_details_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (EmailDetailsTests), 0, (GInstanceInitFunc) email_details_tests_instance_init, NULL };
		GType email_details_tests_type_id;
		email_details_tests_type_id = g_type_register_static (EDS_TEST_TYPE_TEST_CASE, "EmailDetailsTests", &g_define_type_info, 0);
		g_once_init_leave (&email_details_tests_type_id__volatile, email_details_tests_type_id);
	}
	return email_details_tests_type_id__volatile;
}


gint _vala_main (gchar** args, int args_length1) {
	gint result = 0;
	EmailDetailsTests* tests = NULL;
	EmailDetailsTests* _tmp0_ = NULL;
#line 118 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_test_init (&args_length1, &args, NULL);
#line 120 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_tmp0_ = email_details_tests_new ();
#line 120 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	tests = _tmp0_;
#line 121 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	folks_test_case_register ((FolksTestCase*) tests);
#line 122 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	g_test_run ();
#line 123 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	folks_test_case_final_tear_down ((FolksTestCase*) tests);
#line 125 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	result = 0;
#line 125 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	_g_object_unref0 (tests);
#line 125 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return result;
#line 764 "email-details.c"
}


int main (int argc, char ** argv) {
#if !GLIB_CHECK_VERSION (2,35,0)
	g_type_init ();
#endif
#line 116 "/opt/gnome3/source/folks/tests/eds/email-details.vala"
	return _vala_main (argv, argc);
#line 774 "email-details.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);
}



