/* rygel-album-art-spec-test.c generated by valac 0.20.1.2-ca5c2, the Vala compiler
 * generated from rygel-album-art-spec-test.vala, do not modify */

/*
 * Copyright (C) 2010 Jens Georg.
 *
 * Author: Jens Georg <mail@jensge.org>
 *
 * This file is part of Rygel.
 *
 * Rygel 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 of the License, or
 * (at your option) any later version.
 *
 * Rygel 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 program; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

#include <glib.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <libgupnp-av/gupnp-av.h>
#include <gio/gio.h>


#define RYGEL_TYPE_MEDIA_ITEM (rygel_media_item_get_type ())
#define RYGEL_MEDIA_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItem))
#define RYGEL_MEDIA_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItemClass))
#define RYGEL_IS_MEDIA_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MEDIA_ITEM))
#define RYGEL_IS_MEDIA_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MEDIA_ITEM))
#define RYGEL_MEDIA_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItemClass))

typedef struct _RygelMediaItem RygelMediaItem;
typedef struct _RygelMediaItemClass RygelMediaItemClass;
typedef struct _RygelMediaItemPrivate RygelMediaItemPrivate;
#define _g_free0(var) (var = (g_free (var), NULL))

#define RYGEL_TYPE_AUDIO_ITEM (rygel_audio_item_get_type ())
#define RYGEL_AUDIO_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_AUDIO_ITEM, RygelAudioItem))
#define RYGEL_AUDIO_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_AUDIO_ITEM, RygelAudioItemClass))
#define RYGEL_IS_AUDIO_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_AUDIO_ITEM))
#define RYGEL_IS_AUDIO_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_AUDIO_ITEM))
#define RYGEL_AUDIO_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_AUDIO_ITEM, RygelAudioItemClass))

typedef struct _RygelAudioItem RygelAudioItem;
typedef struct _RygelAudioItemClass RygelAudioItemClass;
typedef struct _RygelAudioItemPrivate RygelAudioItemPrivate;

#define RYGEL_TYPE_MUSIC_ITEM (rygel_music_item_get_type ())
#define RYGEL_MUSIC_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MUSIC_ITEM, RygelMusicItem))
#define RYGEL_MUSIC_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MUSIC_ITEM, RygelMusicItemClass))
#define RYGEL_IS_MUSIC_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MUSIC_ITEM))
#define RYGEL_IS_MUSIC_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MUSIC_ITEM))
#define RYGEL_MUSIC_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MUSIC_ITEM, RygelMusicItemClass))

typedef struct _RygelMusicItem RygelMusicItem;
typedef struct _RygelMusicItemClass RygelMusicItemClass;
typedef struct _RygelMusicItemPrivate RygelMusicItemPrivate;

#define RYGEL_TYPE_ALBUM_ART_SPEC_TEST (rygel_album_art_spec_test_get_type ())
#define RYGEL_ALBUM_ART_SPEC_TEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_ALBUM_ART_SPEC_TEST, RygelAlbumArtSpecTest))
#define RYGEL_ALBUM_ART_SPEC_TEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_ALBUM_ART_SPEC_TEST, RygelAlbumArtSpecTestClass))
#define RYGEL_IS_ALBUM_ART_SPEC_TEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_ALBUM_ART_SPEC_TEST))
#define RYGEL_IS_ALBUM_ART_SPEC_TEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_ALBUM_ART_SPEC_TEST))
#define RYGEL_ALBUM_ART_SPEC_TEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_ALBUM_ART_SPEC_TEST, RygelAlbumArtSpecTestClass))

typedef struct _RygelAlbumArtSpecTest RygelAlbumArtSpecTest;
typedef struct _RygelAlbumArtSpecTestClass RygelAlbumArtSpecTestClass;
typedef struct _RygelAlbumArtSpecTestPrivate RygelAlbumArtSpecTestPrivate;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))

#define RYGEL_TYPE_ICON_INFO (rygel_icon_info_get_type ())
#define RYGEL_ICON_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_ICON_INFO, RygelIconInfo))
#define RYGEL_ICON_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_ICON_INFO, RygelIconInfoClass))
#define RYGEL_IS_ICON_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_ICON_INFO))
#define RYGEL_IS_ICON_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_ICON_INFO))
#define RYGEL_ICON_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_ICON_INFO, RygelIconInfoClass))

typedef struct _RygelIconInfo RygelIconInfo;
typedef struct _RygelIconInfoClass RygelIconInfoClass;

#define RYGEL_TYPE_THUMBNAIL (rygel_thumbnail_get_type ())
#define RYGEL_THUMBNAIL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_THUMBNAIL, RygelThumbnail))
#define RYGEL_THUMBNAIL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_THUMBNAIL, RygelThumbnailClass))
#define RYGEL_IS_THUMBNAIL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_THUMBNAIL))
#define RYGEL_IS_THUMBNAIL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_THUMBNAIL))
#define RYGEL_THUMBNAIL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_THUMBNAIL, RygelThumbnailClass))

typedef struct _RygelThumbnail RygelThumbnail;
typedef struct _RygelThumbnailClass RygelThumbnailClass;
#define _rygel_icon_info_unref0(var) ((var == NULL) ? NULL : (var = (rygel_icon_info_unref (var), NULL)))

#define RYGEL_TYPE_MEDIA_ART_STORE (rygel_media_art_store_get_type ())
#define RYGEL_MEDIA_ART_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MEDIA_ART_STORE, RygelMediaArtStore))
#define RYGEL_MEDIA_ART_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MEDIA_ART_STORE, RygelMediaArtStoreClass))
#define RYGEL_IS_MEDIA_ART_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MEDIA_ART_STORE))
#define RYGEL_IS_MEDIA_ART_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MEDIA_ART_STORE))
#define RYGEL_MEDIA_ART_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MEDIA_ART_STORE, RygelMediaArtStoreClass))

typedef struct _RygelMediaArtStore RygelMediaArtStore;
typedef struct _RygelMediaArtStoreClass RygelMediaArtStoreClass;
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);

struct _RygelMediaItem {
	GObject parent_instance;
	RygelMediaItemPrivate * priv;
	gchar* title;
};

struct _RygelMediaItemClass {
	GObjectClass parent_class;
};

struct _RygelAudioItem {
	RygelMediaItem parent_instance;
	RygelAudioItemPrivate * priv;
};

struct _RygelAudioItemClass {
	RygelMediaItemClass parent_class;
};

struct _RygelMusicItem {
	RygelAudioItem parent_instance;
	RygelMusicItemPrivate * priv;
	gchar* artist;
	gchar* album;
};

struct _RygelMusicItemClass {
	RygelAudioItemClass parent_class;
};

struct _RygelAlbumArtSpecTest {
	GObject parent_instance;
	RygelAlbumArtSpecTestPrivate * priv;
};

struct _RygelAlbumArtSpecTestClass {
	GObjectClass parent_class;
};


static gpointer rygel_media_item_parent_class = NULL;
static gpointer rygel_audio_item_parent_class = NULL;
static gpointer rygel_music_item_parent_class = NULL;
static gpointer rygel_album_art_spec_test_parent_class = NULL;

GType rygel_media_item_get_type (void) G_GNUC_CONST;
enum  {
	RYGEL_MEDIA_ITEM_DUMMY_PROPERTY
};
RygelMediaItem* rygel_media_item_construct (GType object_type);
static void rygel_media_item_finalize (GObject* obj);
GType rygel_audio_item_get_type (void) G_GNUC_CONST;
enum  {
	RYGEL_AUDIO_ITEM_DUMMY_PROPERTY
};
RygelAudioItem* rygel_audio_item_new (void);
RygelAudioItem* rygel_audio_item_construct (GType object_type);
GType rygel_music_item_get_type (void) G_GNUC_CONST;
enum  {
	RYGEL_MUSIC_ITEM_DUMMY_PROPERTY
};
RygelMusicItem* rygel_music_item_new (void);
RygelMusicItem* rygel_music_item_construct (GType object_type);
static void rygel_music_item_finalize (GObject* obj);
GType rygel_album_art_spec_test_get_type (void) G_GNUC_CONST;
enum  {
	RYGEL_ALBUM_ART_SPEC_TEST_DUMMY_PROPERTY
};
gint rygel_album_art_spec_test_main (gchar** args, int args_length1);
RygelAlbumArtSpecTest* rygel_album_art_spec_test_new (void);
RygelAlbumArtSpecTest* rygel_album_art_spec_test_construct (GType object_type);
void rygel_album_art_spec_test_run (RygelAlbumArtSpecTest* self);
void rygel_album_art_spec_test_test_full_spec (RygelAlbumArtSpecTest* self);
RygelThumbnail* rygel_thumbnail_new (const gchar* mime_type, const gchar* dlna_profile, const gchar* file_extension);
RygelThumbnail* rygel_thumbnail_construct (GType object_type, const gchar* mime_type, const gchar* dlna_profile, const gchar* file_extension);
gpointer rygel_icon_info_ref (gpointer instance);
void rygel_icon_info_unref (gpointer instance);
GParamSpec* rygel_param_spec_icon_info (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void rygel_value_set_icon_info (GValue* value, gpointer v_object);
void rygel_value_take_icon_info (GValue* value, gpointer v_object);
gpointer rygel_value_get_icon_info (const GValue* value);
GType rygel_icon_info_get_type (void) G_GNUC_CONST;
GType rygel_thumbnail_get_type (void) G_GNUC_CONST;
GUPnPDIDLLiteResource* rygel_thumbnail_add_resource (RygelThumbnail* self, GUPnPDIDLLiteItem* didl_item, const gchar* protocol);
GType rygel_media_art_store_get_type (void) G_GNUC_CONST;
RygelMediaArtStore* rygel_media_art_store_get_default (void);
GFile* rygel_media_art_store_get_media_art_file (RygelMediaArtStore* self, const gchar* type, RygelMusicItem* item, gboolean simple);


RygelMediaItem* rygel_media_item_construct (GType object_type) {
	RygelMediaItem * self = NULL;
	self = (RygelMediaItem*) g_object_new (object_type, NULL);
	return self;
}


static void rygel_media_item_class_init (RygelMediaItemClass * klass) {
	rygel_media_item_parent_class = g_type_class_peek_parent (klass);
	G_OBJECT_CLASS (klass)->finalize = rygel_media_item_finalize;
}


static void rygel_media_item_instance_init (RygelMediaItem * self) {
}


static void rygel_media_item_finalize (GObject* obj) {
	RygelMediaItem * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, RYGEL_TYPE_MEDIA_ITEM, RygelMediaItem);
	_g_free0 (self->title);
	G_OBJECT_CLASS (rygel_media_item_parent_class)->finalize (obj);
}


GType rygel_media_item_get_type (void) {
	static volatile gsize rygel_media_item_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_media_item_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelMediaItemClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rygel_media_item_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RygelMediaItem), 0, (GInstanceInitFunc) rygel_media_item_instance_init, NULL };
		GType rygel_media_item_type_id;
		rygel_media_item_type_id = g_type_register_static (G_TYPE_OBJECT, "RygelMediaItem", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
		g_once_init_leave (&rygel_media_item_type_id__volatile, rygel_media_item_type_id);
	}
	return rygel_media_item_type_id__volatile;
}


RygelAudioItem* rygel_audio_item_construct (GType object_type) {
	RygelAudioItem * self = NULL;
	self = (RygelAudioItem*) rygel_media_item_construct (object_type);
	return self;
}


RygelAudioItem* rygel_audio_item_new (void) {
	return rygel_audio_item_construct (RYGEL_TYPE_AUDIO_ITEM);
}


static void rygel_audio_item_class_init (RygelAudioItemClass * klass) {
	rygel_audio_item_parent_class = g_type_class_peek_parent (klass);
}


static void rygel_audio_item_instance_init (RygelAudioItem * self) {
}


GType rygel_audio_item_get_type (void) {
	static volatile gsize rygel_audio_item_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_audio_item_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelAudioItemClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rygel_audio_item_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RygelAudioItem), 0, (GInstanceInitFunc) rygel_audio_item_instance_init, NULL };
		GType rygel_audio_item_type_id;
		rygel_audio_item_type_id = g_type_register_static (RYGEL_TYPE_MEDIA_ITEM, "RygelAudioItem", &g_define_type_info, 0);
		g_once_init_leave (&rygel_audio_item_type_id__volatile, rygel_audio_item_type_id);
	}
	return rygel_audio_item_type_id__volatile;
}


RygelMusicItem* rygel_music_item_construct (GType object_type) {
	RygelMusicItem * self = NULL;
	self = (RygelMusicItem*) rygel_audio_item_construct (object_type);
	return self;
}


RygelMusicItem* rygel_music_item_new (void) {
	return rygel_music_item_construct (RYGEL_TYPE_MUSIC_ITEM);
}


static void rygel_music_item_class_init (RygelMusicItemClass * klass) {
	rygel_music_item_parent_class = g_type_class_peek_parent (klass);
	G_OBJECT_CLASS (klass)->finalize = rygel_music_item_finalize;
}


static void rygel_music_item_instance_init (RygelMusicItem * self) {
}


static void rygel_music_item_finalize (GObject* obj) {
	RygelMusicItem * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, RYGEL_TYPE_MUSIC_ITEM, RygelMusicItem);
	_g_free0 (self->artist);
	_g_free0 (self->album);
	G_OBJECT_CLASS (rygel_music_item_parent_class)->finalize (obj);
}


GType rygel_music_item_get_type (void) {
	static volatile gsize rygel_music_item_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_music_item_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelMusicItemClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rygel_music_item_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RygelMusicItem), 0, (GInstanceInitFunc) rygel_music_item_instance_init, NULL };
		GType rygel_music_item_type_id;
		rygel_music_item_type_id = g_type_register_static (RYGEL_TYPE_AUDIO_ITEM, "RygelMusicItem", &g_define_type_info, 0);
		g_once_init_leave (&rygel_music_item_type_id__volatile, rygel_music_item_type_id);
	}
	return rygel_music_item_type_id__volatile;
}


gint rygel_album_art_spec_test_main (gchar** args, int args_length1) {
	gint result = 0;
	RygelAlbumArtSpecTest* _tmp0_;
	RygelAlbumArtSpecTest* test;
	_tmp0_ = rygel_album_art_spec_test_new ();
	test = _tmp0_;
	rygel_album_art_spec_test_run (test);
	result = 0;
	_g_object_unref0 (test);
	return result;
}


int main (int argc, char ** argv) {
	g_type_init ();
	return rygel_album_art_spec_test_main (argv, argc);
}


void rygel_album_art_spec_test_run (RygelAlbumArtSpecTest* self) {
	RygelThumbnail* _tmp0_;
	RygelThumbnail* thumbnail;
	GUPnPDIDLLiteWriter* _tmp1_;
	GUPnPDIDLLiteWriter* didl_writer;
	GUPnPDIDLLiteItem* _tmp2_ = NULL;
	GUPnPDIDLLiteItem* didl_item;
	GUPnPDIDLLiteResource* _tmp3_ = NULL;
	GUPnPDIDLLiteResource* _tmp4_;
	g_return_if_fail (self != NULL);
	rygel_album_art_spec_test_test_full_spec (self);
	_tmp0_ = rygel_thumbnail_new ("image/jpeg", "JPEG_TN", "jpg");
	thumbnail = _tmp0_;
	_tmp1_ = gupnp_didl_lite_writer_new (NULL);
	didl_writer = _tmp1_;
	_tmp2_ = gupnp_didl_lite_writer_add_item (didl_writer);
	didl_item = _tmp2_;
	_tmp3_ = rygel_thumbnail_add_resource (thumbnail, didl_item, "http");
	_tmp4_ = _tmp3_;
	_g_object_unref0 (_tmp4_);
	_g_object_unref0 (didl_item);
	_g_object_unref0 (didl_writer);
	_rygel_icon_info_unref0 (thumbnail);
}


void rygel_album_art_spec_test_test_full_spec (RygelAlbumArtSpecTest* self) {
	RygelMediaArtStore* _tmp0_ = NULL;
	RygelMediaArtStore* store;
	RygelMusicItem* _tmp1_;
	RygelMusicItem* item;
	RygelMusicItem* _tmp2_;
	gchar* _tmp3_;
	RygelMusicItem* _tmp4_;
	gchar* _tmp5_;
	RygelMusicItem* _tmp6_;
	gchar* _tmp7_;
	RygelMusicItem* _tmp8_;
	GFile* _tmp9_ = NULL;
	GFile* file;
	GFile* _tmp10_;
	GFile* _tmp11_;
	gchar* _tmp12_ = NULL;
	gchar* _tmp13_;
	gboolean _tmp14_ = FALSE;
	RygelMusicItem* _tmp15_;
	GFile* _tmp16_ = NULL;
	GFile* _tmp17_;
	GFile* _tmp18_;
	gchar* _tmp19_ = NULL;
	gchar* _tmp20_;
	gboolean _tmp21_ = FALSE;
	RygelMusicItem* _tmp22_;
	RygelMusicItem* _tmp23_;
	gchar* _tmp24_;
	RygelMusicItem* _tmp25_;
	GFile* _tmp26_ = NULL;
	GFile* _tmp27_;
	GFile* _tmp28_;
	gchar* _tmp29_ = NULL;
	gchar* _tmp30_;
	gboolean _tmp31_ = FALSE;
	RygelMusicItem* _tmp32_;
	RygelMusicItem* _tmp33_;
	gchar* _tmp34_;
	RygelMusicItem* _tmp35_;
	gchar* _tmp36_;
	RygelMusicItem* _tmp37_;
	gchar* _tmp38_;
	RygelMusicItem* _tmp39_;
	GFile* _tmp40_ = NULL;
	GFile* _tmp41_;
	GFile* _tmp42_;
	gchar* _tmp43_ = NULL;
	gchar* _tmp44_;
	gboolean _tmp45_ = FALSE;
	RygelMusicItem* _tmp46_;
	RygelMusicItem* _tmp47_;
	gchar* _tmp48_;
	RygelMusicItem* _tmp49_;
	gchar* _tmp50_;
	RygelMusicItem* _tmp51_;
	gchar* _tmp52_;
	RygelMusicItem* _tmp53_;
	GFile* _tmp54_ = NULL;
	GFile* _tmp55_;
	GFile* _tmp56_;
	gchar* _tmp57_ = NULL;
	gchar* _tmp58_;
	gboolean _tmp59_ = FALSE;
	RygelMusicItem* _tmp60_;
	RygelMusicItem* _tmp61_;
	gchar* _tmp62_;
	RygelMusicItem* _tmp63_;
	gchar* _tmp64_;
	RygelMusicItem* _tmp65_;
	gchar* _tmp66_;
	RygelMusicItem* _tmp67_;
	GFile* _tmp68_ = NULL;
	GFile* _tmp69_;
	GFile* _tmp70_;
	gchar* _tmp71_ = NULL;
	gchar* _tmp72_;
	GFile* _tmp73_;
	gchar* _tmp74_ = NULL;
	gchar* _tmp75_;
	gboolean _tmp76_ = FALSE;
	g_return_if_fail (self != NULL);
	_tmp0_ = rygel_media_art_store_get_default ();
	store = _tmp0_;
	_tmp1_ = rygel_music_item_new ();
	item = _tmp1_;
	_tmp2_ = item;
	_tmp3_ = g_strdup ("metallica");
	_g_free0 (_tmp2_->artist);
	_tmp2_->artist = _tmp3_;
	_tmp4_ = item;
	_tmp5_ = g_strdup ("and justice for all");
	_g_free0 (_tmp4_->album);
	_tmp4_->album = _tmp5_;
	_tmp6_ = item;
	_tmp7_ = g_strdup ("Enter Sandman");
	_g_free0 (((RygelMediaItem*) _tmp6_)->title);
	((RygelMediaItem*) _tmp6_)->title = _tmp7_;
	_tmp8_ = item;
	_tmp9_ = rygel_media_art_store_get_media_art_file (store, "album", _tmp8_, FALSE);
	file = _tmp9_;
	_tmp10_ = file;
	_vala_assert (_tmp10_ != NULL, "file != null");
	_tmp11_ = file;
	_tmp12_ = g_file_get_uri (_tmp11_);
	_tmp13_ = _tmp12_;
	_tmp14_ = g_str_has_suffix (_tmp13_, "album-" "3c2234a7ce973bc1700e0c743d6a819c-" "3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg");
	_vala_assert (_tmp14_, "file.get_uri ().has_suffix                 (\"album-\" +                  \"3c2234a7ce973bc1700e0c743d6a819c-\" +                  \"3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg\")");
	_g_free0 (_tmp13_);
	_tmp15_ = item;
	_tmp16_ = rygel_media_art_store_get_media_art_file (store, "artist", _tmp15_, FALSE);
	_g_object_unref0 (file);
	file = _tmp16_;
	_tmp17_ = file;
	_vala_assert (_tmp17_ != NULL, "file != null");
	_tmp18_ = file;
	_tmp19_ = g_file_get_uri (_tmp18_);
	_tmp20_ = _tmp19_;
	_tmp21_ = g_str_has_suffix (_tmp20_, "artist-" "3c2234a7ce973bc1700e0c743d6a819c-" "3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg");
	_vala_assert (_tmp21_, "file.get_uri ().has_suffix                 (\"artist-\" +                  \"3c2234a7ce973bc1700e0c743d6a819c-\" +                  \"3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg\")");
	_g_free0 (_tmp20_);
	_tmp22_ = rygel_music_item_new ();
	_g_object_unref0 (item);
	item = _tmp22_;
	_tmp23_ = item;
	_tmp24_ = g_strdup ("radio ga ga");
	_g_free0 (((RygelMediaItem*) _tmp23_)->title);
	((RygelMediaItem*) _tmp23_)->title = _tmp24_;
	_tmp25_ = item;
	_tmp26_ = rygel_media_art_store_get_media_art_file (store, "radio", _tmp25_, FALSE);
	_g_object_unref0 (file);
	file = _tmp26_;
	_tmp27_ = file;
	_vala_assert (_tmp27_ != NULL, "file != null");
	_tmp28_ = file;
	_tmp29_ = g_file_get_uri (_tmp28_);
	_tmp30_ = _tmp29_;
	_tmp31_ = g_str_has_suffix (_tmp30_, "radio-" "b924ce08955675c6a30c745d18286d21-" "7215ee9c7d9dc229d2921a40e899ec5f.jpeg");
	_vala_assert (_tmp31_, "file.get_uri ().has_suffix                 (\"radio-\" +                  \"b924ce08955675c6a30c745d18286d21-\" +                  \"7215ee9c7d9dc229d2921a40e899ec5f.jpeg\")");
	_g_free0 (_tmp30_);
	_tmp32_ = rygel_music_item_new ();
	_g_object_unref0 (item);
	item = _tmp32_;
	_tmp33_ = item;
	_tmp34_ = g_strdup ("met[xXx]allica");
	_g_free0 (_tmp33_->artist);
	_tmp33_->artist = _tmp34_;
	_tmp35_ = item;
	_tmp36_ = g_strdup ("and justice f[{]}or all");
	_g_free0 (_tmp35_->album);
	_tmp35_->album = _tmp36_;
	_tmp37_ = item;
	_tmp38_ = g_strdup ("Enter Sandman");
	_g_free0 (((RygelMediaItem*) _tmp37_)->title);
	((RygelMediaItem*) _tmp37_)->title = _tmp38_;
	_tmp39_ = item;
	_tmp40_ = rygel_media_art_store_get_media_art_file (store, "album", _tmp39_, FALSE);
	_g_object_unref0 (file);
	file = _tmp40_;
	_tmp41_ = file;
	_vala_assert (_tmp41_ != NULL, "file != null");
	_tmp42_ = file;
	_tmp43_ = g_file_get_uri (_tmp42_);
	_tmp44_ = _tmp43_;
	_tmp45_ = g_str_has_suffix (_tmp44_, "album-" "3c2234a7ce973bc1700e0c743d6a819c-" "3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg");
	_vala_assert (_tmp45_, "file.get_uri ().has_suffix                 (\"album-\" +                  \"3c2234a7ce973bc1700e0c743d6a819c-\" +                  \"3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg\")");
	_g_free0 (_tmp44_);
	_tmp46_ = rygel_music_item_new ();
	_g_object_unref0 (item);
	item = _tmp46_;
	_tmp47_ = item;
	_tmp48_ = g_strdup ("met[xX[x]alli]ca");
	_g_free0 (_tmp47_->artist);
	_tmp47_->artist = _tmp48_;
	_tmp49_ = item;
	_tmp50_ = g_strdup ("and justice for all");
	_g_free0 (_tmp49_->album);
	_tmp49_->album = _tmp50_;
	_tmp51_ = item;
	_tmp52_ = g_strdup ("Enter Sandman");
	_g_free0 (((RygelMediaItem*) _tmp51_)->title);
	((RygelMediaItem*) _tmp51_)->title = _tmp52_;
	_tmp53_ = item;
	_tmp54_ = rygel_media_art_store_get_media_art_file (store, "album", _tmp53_, FALSE);
	_g_object_unref0 (file);
	file = _tmp54_;
	_tmp55_ = file;
	_vala_assert (_tmp55_ != NULL, "file != null");
	_tmp56_ = file;
	_tmp57_ = g_file_get_uri (_tmp56_);
	_tmp58_ = _tmp57_;
	_tmp59_ = g_str_has_suffix (_tmp58_, "album-" "3c2234a7ce973bc1700e0c743d6a819c-" "3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg");
	_vala_assert (_tmp59_, "file.get_uri ().has_suffix                 (\"album-\" +                  \"3c2234a7ce973bc1700e0c743d6a819c-\" +                  \"3d422ba022ae0daa8f5454ba7dfa0f9a.jpeg\")");
	_g_free0 (_tmp58_);
	_tmp60_ = rygel_music_item_new ();
	_g_object_unref0 (item);
	item = _tmp60_;
	_tmp61_ = item;
	_tmp62_ = g_strdup ("Peter Fox");
	_g_free0 (_tmp61_->artist);
	_tmp61_->artist = _tmp62_;
	_tmp63_ = item;
	_tmp64_ = g_strdup ("Stadtaffe");
	_g_free0 (_tmp63_->album);
	_tmp63_->album = _tmp64_;
	_tmp65_ = item;
	_tmp66_ = g_strdup ("Schwarz zu Blau");
	_g_free0 (((RygelMediaItem*) _tmp65_)->title);
	((RygelMediaItem*) _tmp65_)->title = _tmp66_;
	_tmp67_ = item;
	_tmp68_ = rygel_media_art_store_get_media_art_file (store, "album", _tmp67_, TRUE);
	_g_object_unref0 (file);
	file = _tmp68_;
	_tmp69_ = file;
	_vala_assert (_tmp69_ != NULL, "file != null");
	_tmp70_ = file;
	_tmp71_ = g_file_get_uri (_tmp70_);
	_tmp72_ = _tmp71_;
	g_debug ("rygel-album-art-spec-test.vala:126: %s", _tmp72_);
	_g_free0 (_tmp72_);
	_tmp73_ = file;
	_tmp74_ = g_file_get_uri (_tmp73_);
	_tmp75_ = _tmp74_;
	_tmp76_ = g_str_has_suffix (_tmp75_, "album-15f9f69ee3d841df6b1e2f56439f11a2.jpg");
	_vala_assert (_tmp76_, "file.get_uri ().has_suffix                 (\"album-15f9f69ee3d841df6b1e2f56439f11a2.jpg\")");
	_g_free0 (_tmp75_);
	_g_object_unref0 (file);
	_g_object_unref0 (item);
	_g_object_unref0 (store);
}


RygelAlbumArtSpecTest* rygel_album_art_spec_test_construct (GType object_type) {
	RygelAlbumArtSpecTest * self = NULL;
	self = (RygelAlbumArtSpecTest*) g_object_new (object_type, NULL);
	return self;
}


RygelAlbumArtSpecTest* rygel_album_art_spec_test_new (void) {
	return rygel_album_art_spec_test_construct (RYGEL_TYPE_ALBUM_ART_SPEC_TEST);
}


static void rygel_album_art_spec_test_class_init (RygelAlbumArtSpecTestClass * klass) {
	rygel_album_art_spec_test_parent_class = g_type_class_peek_parent (klass);
}


static void rygel_album_art_spec_test_instance_init (RygelAlbumArtSpecTest * self) {
}


GType rygel_album_art_spec_test_get_type (void) {
	static volatile gsize rygel_album_art_spec_test_type_id__volatile = 0;
	if (g_once_init_enter (&rygel_album_art_spec_test_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (RygelAlbumArtSpecTestClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rygel_album_art_spec_test_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RygelAlbumArtSpecTest), 0, (GInstanceInitFunc) rygel_album_art_spec_test_instance_init, NULL };
		GType rygel_album_art_spec_test_type_id;
		rygel_album_art_spec_test_type_id = g_type_register_static (G_TYPE_OBJECT, "RygelAlbumArtSpecTest", &g_define_type_info, 0);
		g_once_init_leave (&rygel_album_art_spec_test_type_id__volatile, rygel_album_art_spec_test_type_id);
	}
	return rygel_album_art_spec_test_type_id__volatile;
}



