diff options
Diffstat (limited to 'tests/testsortedmap.c')
-rw-r--r-- | tests/testsortedmap.c | 6438 |
1 files changed, 6438 insertions, 0 deletions
diff --git a/tests/testsortedmap.c b/tests/testsortedmap.c new file mode 100644 index 0000000..c61227e --- /dev/null +++ b/tests/testsortedmap.c @@ -0,0 +1,6438 @@ +/* testsortedmap.c generated by valac 0.18.0, the Vala compiler + * generated from testsortedmap.vala, do not modify */ + +/* sortedset.vala + * + * Copyright (C) 2009-2011 Maciej Piechotka + * + * 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: + * Maciej Piechotka <uzytkownik2@gmail.com> + */ + +#include <glib.h> +#include <glib-object.h> +#include <gee.h> +#include <stdlib.h> +#include <string.h> + + +#define GEE_TYPE_TEST_CASE (gee_test_case_get_type ()) +#define GEE_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TEST_CASE, GeeTestCase)) +#define GEE_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TEST_CASE, GeeTestCaseClass)) +#define GEE_IS_TEST_CASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TEST_CASE)) +#define GEE_IS_TEST_CASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TEST_CASE)) +#define GEE_TEST_CASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TEST_CASE, GeeTestCaseClass)) + +typedef struct _GeeTestCase GeeTestCase; +typedef struct _GeeTestCaseClass GeeTestCaseClass; +typedef struct _GeeTestCasePrivate GeeTestCasePrivate; + +#define TYPE_MAP_TESTS (map_tests_get_type ()) +#define MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MAP_TESTS, MapTests)) +#define MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MAP_TESTS, MapTestsClass)) +#define IS_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MAP_TESTS)) +#define IS_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MAP_TESTS)) +#define MAP_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MAP_TESTS, MapTestsClass)) + +typedef struct _MapTests MapTests; +typedef struct _MapTestsClass MapTestsClass; +typedef struct _MapTestsPrivate MapTestsPrivate; + +#define GEE_TYPE_SORTED_MAP_TESTS (gee_sorted_map_tests_get_type ()) +#define GEE_SORTED_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_SORTED_MAP_TESTS, GeeSortedMapTests)) +#define GEE_SORTED_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_SORTED_MAP_TESTS, GeeSortedMapTestsClass)) +#define GEE_IS_SORTED_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_SORTED_MAP_TESTS)) +#define GEE_IS_SORTED_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_SORTED_MAP_TESTS)) +#define GEE_SORTED_MAP_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_SORTED_MAP_TESTS, GeeSortedMapTestsClass)) + +typedef struct _GeeSortedMapTests GeeSortedMapTests; +typedef struct _GeeSortedMapTestsClass GeeSortedMapTestsClass; +typedef struct _GeeSortedMapTestsPrivate GeeSortedMapTestsPrivate; + +#define GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TYPE (gee_sorted_map_tests_sub_map_tests_type_get_type ()) + +#define GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS (gee_sorted_map_tests_sub_map_tests_get_type ()) +#define GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, GeeSortedMapTestsSubMapTests)) +#define GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, GeeSortedMapTestsSubMapTestsClass)) +#define GEE_SORTED_MAP_TESTS_IS_SUB_MAP_TESTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS)) +#define GEE_SORTED_MAP_TESTS_IS_SUB_MAP_TESTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS)) +#define GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, GeeSortedMapTestsSubMapTestsClass)) + +typedef struct _GeeSortedMapTestsSubMapTests GeeSortedMapTestsSubMapTests; +typedef struct _GeeSortedMapTestsSubMapTestsClass GeeSortedMapTestsSubMapTestsClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#define _g_free0(var) (var = (g_free (var), NULL)) +typedef struct _GeeSortedMapTestsSubMapTestsPrivate GeeSortedMapTestsSubMapTestsPrivate; +#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); + +struct _GeeTestCase { + GObject parent_instance; + GeeTestCasePrivate * priv; +}; + +struct _GeeTestCaseClass { + GObjectClass parent_class; + void (*set_up) (GeeTestCase* self); + void (*tear_down) (GeeTestCase* self); +}; + +struct _MapTests { + GeeTestCase parent_instance; + MapTestsPrivate * priv; + GeeMap* test_map; +}; + +struct _MapTestsClass { + GeeTestCaseClass parent_class; +}; + +struct _GeeSortedMapTests { + MapTests parent_instance; + GeeSortedMapTestsPrivate * priv; +}; + +struct _GeeSortedMapTestsClass { + MapTestsClass parent_class; +}; + +typedef void (*GeeTestCaseTestMethod) (void* user_data); +typedef enum { + GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD, + GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL, + GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB, + GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY +} GeeSortedMapTestsSubMapTestsType; + +struct _GeeSortedMapTestsSubMapTests { + GeeTestCase parent_instance; + GeeSortedMapTestsSubMapTestsPrivate * priv; +}; + +struct _GeeSortedMapTestsSubMapTestsClass { + GeeTestCaseClass parent_class; +}; + +struct _GeeSortedMapTestsSubMapTestsPrivate { + GeeSortedMap* master; + GeeSortedMap* submap; + GeeSortedMapTests* test; + GeeSortedMapTestsSubMapTestsType type; +}; + + +static gpointer gee_sorted_map_tests_parent_class = NULL; +static gpointer gee_sorted_map_tests_sub_map_tests_parent_class = NULL; + +GType gee_test_case_get_type (void) G_GNUC_CONST; +GType map_tests_get_type (void) G_GNUC_CONST; +GType gee_sorted_map_tests_get_type (void) G_GNUC_CONST; +enum { + GEE_SORTED_MAP_TESTS_DUMMY_PROPERTY +}; +GeeSortedMapTests* gee_sorted_map_tests_construct (GType object_type, const gchar* name); +MapTests* map_tests_construct (GType object_type, const gchar* name); +void gee_test_case_add_test (GeeTestCase* self, const gchar* name, GeeTestCaseTestMethod test, void* test_target, GDestroyNotify test_target_destroy_notify); +void gee_sorted_map_tests_test_key_ordering (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_key_ordering_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_first (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_first_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_last (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_last_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_iterator_at (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_iterator_at_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_lower (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_lower_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_higher (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_higher_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_floor (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_floor_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_test_ceil (GeeSortedMapTests* self); +static void _gee_sorted_map_tests_test_ceil_gee_test_case_test_method (gpointer self); +GTestSuite* gee_test_case_get_suite (GeeTestCase* self); +GType gee_sorted_map_tests_sub_map_tests_type_get_type (void) G_GNUC_CONST; +GeeSortedMapTestsSubMapTests* gee_sorted_map_tests_sub_map_tests_new (GeeSortedMapTests* test, GeeSortedMapTestsSubMapTestsType type); +GeeSortedMapTestsSubMapTests* gee_sorted_map_tests_sub_map_tests_construct (GType object_type, GeeSortedMapTests* test, GeeSortedMapTestsSubMapTestsType type); +GType gee_sorted_map_tests_sub_map_tests_get_type (void) G_GNUC_CONST; +void map_tests_assert_entry (GeeMapEntry* e, const gchar* key, const gchar* value); +GeeMapEntry* map_tests_entry_for (const gchar* key, const gchar* value); +#define GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, GeeSortedMapTestsSubMapTestsPrivate)) +enum { + GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_DUMMY_PROPERTY +}; +const gchar* gee_sorted_map_tests_sub_map_tests_type_to_string (GeeSortedMapTestsSubMapTestsType self); +GeeTestCase* gee_test_case_construct (GType object_type, const gchar* name); +void gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_keys (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_keys_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_values (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_values_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_entries (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_entries_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_get (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_get_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_set (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_set_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_unset (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_unset_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_clear (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_clear_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_iterators (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_iterators_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_boundaries (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_boundaries_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_lower (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_lower_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_higher (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_higher_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_floor (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_floor_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_ceil (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_ceil_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_iterator_at (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_iterator_at_gee_test_case_test_method (gpointer self); +void gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets (GeeSortedMapTestsSubMapTests* self); +static void _gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets_gee_test_case_test_method (gpointer self); +static void gee_sorted_map_tests_sub_map_tests_real_set_up (GeeTestCase* base); +void gee_test_case_set_up (GeeTestCase* self); +static void gee_sorted_map_tests_sub_map_tests_real_tear_down (GeeTestCase* base); +void gee_test_case_tear_down (GeeTestCase* self); +void gee_sorted_map_tests_sub_map_tests_set_default_values (GeeSortedMapTestsSubMapTests* self, gchar*** contains, int* contains_length1, gchar*** not_contains, int* not_contains_length1); +static void gee_sorted_map_tests_sub_map_tests_finalize (GObject* obj); +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 _gee_sorted_map_tests_test_key_ordering_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_key_ordering (self); +} + + +static void _gee_sorted_map_tests_test_first_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_first (self); +} + + +static void _gee_sorted_map_tests_test_last_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_last (self); +} + + +static void _gee_sorted_map_tests_test_iterator_at_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_iterator_at (self); +} + + +static void _gee_sorted_map_tests_test_lower_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_lower (self); +} + + +static void _gee_sorted_map_tests_test_higher_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_higher (self); +} + + +static void _gee_sorted_map_tests_test_floor_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_floor (self); +} + + +static void _gee_sorted_map_tests_test_ceil_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_test_ceil (self); +} + + +GeeSortedMapTests* gee_sorted_map_tests_construct (GType object_type, const gchar* name) { + GeeSortedMapTests * self = NULL; + const gchar* _tmp0_; + GTestSuite* _tmp1_ = NULL; + GeeSortedMapTestsSubMapTests* _tmp2_; + GeeSortedMapTestsSubMapTests* _tmp3_; + GTestSuite* _tmp4_ = NULL; + GTestSuite* _tmp5_ = NULL; + GeeSortedMapTestsSubMapTests* _tmp6_; + GeeSortedMapTestsSubMapTests* _tmp7_; + GTestSuite* _tmp8_ = NULL; + GTestSuite* _tmp9_ = NULL; + GeeSortedMapTestsSubMapTests* _tmp10_; + GeeSortedMapTestsSubMapTests* _tmp11_; + GTestSuite* _tmp12_ = NULL; + GTestSuite* _tmp13_ = NULL; + GeeSortedMapTestsSubMapTests* _tmp14_; + GeeSortedMapTestsSubMapTests* _tmp15_; + GTestSuite* _tmp16_ = NULL; + g_return_val_if_fail (name != NULL, NULL); + _tmp0_ = name; + self = (GeeSortedMapTests*) map_tests_construct (object_type, _tmp0_); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] key ordering", _gee_sorted_map_tests_test_key_ordering_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] first", _gee_sorted_map_tests_test_first_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] last", _gee_sorted_map_tests_test_last_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] iterator_at", _gee_sorted_map_tests_test_iterator_at_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] lower", _gee_sorted_map_tests_test_lower_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] higher", _gee_sorted_map_tests_test_higher_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] floor", _gee_sorted_map_tests_test_floor_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] ceil", _gee_sorted_map_tests_test_ceil_gee_test_case_test_method, g_object_ref (self), g_object_unref); + _tmp1_ = gee_test_case_get_suite ((GeeTestCase*) self); + _tmp2_ = gee_sorted_map_tests_sub_map_tests_new (self, GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD); + _tmp3_ = _tmp2_; + _tmp4_ = gee_test_case_get_suite ((GeeTestCase*) _tmp3_); + g_test_suite_add_suite (_tmp1_, _tmp4_); + _g_object_unref0 (_tmp3_); + _tmp5_ = gee_test_case_get_suite ((GeeTestCase*) self); + _tmp6_ = gee_sorted_map_tests_sub_map_tests_new (self, GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL); + _tmp7_ = _tmp6_; + _tmp8_ = gee_test_case_get_suite ((GeeTestCase*) _tmp7_); + g_test_suite_add_suite (_tmp5_, _tmp8_); + _g_object_unref0 (_tmp7_); + _tmp9_ = gee_test_case_get_suite ((GeeTestCase*) self); + _tmp10_ = gee_sorted_map_tests_sub_map_tests_new (self, GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB); + _tmp11_ = _tmp10_; + _tmp12_ = gee_test_case_get_suite ((GeeTestCase*) _tmp11_); + g_test_suite_add_suite (_tmp9_, _tmp12_); + _g_object_unref0 (_tmp11_); + _tmp13_ = gee_test_case_get_suite ((GeeTestCase*) self); + _tmp14_ = gee_sorted_map_tests_sub_map_tests_new (self, GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY); + _tmp15_ = _tmp14_; + _tmp16_ = gee_test_case_get_suite ((GeeTestCase*) _tmp15_); + g_test_suite_add_suite (_tmp13_, _tmp16_); + _g_object_unref0 (_tmp15_); + return self; +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +void gee_sorted_map_tests_test_key_ordering (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSet* _tmp2_; + GeeSet* _tmp3_; + GeeSet* _tmp4_; + GeeIterator* _tmp5_ = NULL; + GeeIterator* _tmp6_; + GeeIterator* iterator; + gboolean _tmp7_ = FALSE; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + gboolean _tmp10_ = FALSE; + gpointer _tmp11_ = NULL; + gchar* _tmp12_; + gboolean _tmp13_ = FALSE; + gpointer _tmp14_ = NULL; + gchar* _tmp15_; + gboolean _tmp16_ = FALSE; + gpointer _tmp17_ = NULL; + gchar* _tmp18_; + gboolean _tmp19_ = FALSE; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + gboolean _tmp22_ = FALSE; + gpointer _tmp23_ = NULL; + gchar* _tmp24_; + gboolean _tmp25_ = FALSE; + gpointer _tmp26_ = NULL; + gchar* _tmp27_; + gboolean _tmp28_ = FALSE; + gpointer _tmp29_ = NULL; + gchar* _tmp30_; + gboolean _tmp31_ = FALSE; + gpointer _tmp32_ = NULL; + gchar* _tmp33_; + gboolean _tmp34_ = FALSE; + gpointer _tmp35_ = NULL; + gchar* _tmp36_; + gboolean _tmp37_ = FALSE; + gpointer _tmp38_ = NULL; + gchar* _tmp39_; + gboolean _tmp40_ = FALSE; + gpointer _tmp41_ = NULL; + gchar* _tmp42_; + gboolean _tmp43_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _vala_assert (test_sorted_map != NULL, "test_sorted_map != null"); + gee_map_set ((GeeMap*) test_sorted_map, "one", "one"); + gee_map_set ((GeeMap*) test_sorted_map, "two", "two"); + gee_map_set ((GeeMap*) test_sorted_map, "three", "three"); + gee_map_set ((GeeMap*) test_sorted_map, "four", "four"); + gee_map_set ((GeeMap*) test_sorted_map, "five", "five"); + gee_map_set ((GeeMap*) test_sorted_map, "six", "six"); + gee_map_set ((GeeMap*) test_sorted_map, "seven", "seven"); + gee_map_set ((GeeMap*) test_sorted_map, "eight", "eight"); + gee_map_set ((GeeMap*) test_sorted_map, "nine", "nine"); + gee_map_set ((GeeMap*) test_sorted_map, "ten", "ten"); + gee_map_set ((GeeMap*) test_sorted_map, "eleven", "eleven"); + gee_map_set ((GeeMap*) test_sorted_map, "twelve", "twelve"); + _tmp2_ = gee_map_get_keys ((GeeMap*) test_sorted_map); + _tmp3_ = _tmp2_; + _tmp4_ = _tmp3_; + _tmp5_ = gee_iterable_iterator ((GeeIterable*) _tmp4_); + _tmp6_ = _tmp5_; + _g_object_unref0 (_tmp4_); + iterator = _tmp6_; + _tmp7_ = gee_iterator_next (iterator); + _vala_assert (_tmp7_, "iterator.next ()"); + _tmp8_ = gee_iterator_get (iterator); + _tmp9_ = (gchar*) _tmp8_; + _vala_assert (g_strcmp0 (_tmp9_, "eight") == 0, "iterator.get () == \"eight\""); + _g_free0 (_tmp9_); + _tmp10_ = gee_iterator_next (iterator); + _vala_assert (_tmp10_, "iterator.next ()"); + _tmp11_ = gee_iterator_get (iterator); + _tmp12_ = (gchar*) _tmp11_; + _vala_assert (g_strcmp0 (_tmp12_, "eleven") == 0, "iterator.get () == \"eleven\""); + _g_free0 (_tmp12_); + _tmp13_ = gee_iterator_next (iterator); + _vala_assert (_tmp13_, "iterator.next ()"); + _tmp14_ = gee_iterator_get (iterator); + _tmp15_ = (gchar*) _tmp14_; + _vala_assert (g_strcmp0 (_tmp15_, "five") == 0, "iterator.get () == \"five\""); + _g_free0 (_tmp15_); + _tmp16_ = gee_iterator_next (iterator); + _vala_assert (_tmp16_, "iterator.next ()"); + _tmp17_ = gee_iterator_get (iterator); + _tmp18_ = (gchar*) _tmp17_; + _vala_assert (g_strcmp0 (_tmp18_, "four") == 0, "iterator.get () == \"four\""); + _g_free0 (_tmp18_); + _tmp19_ = gee_iterator_next (iterator); + _vala_assert (_tmp19_, "iterator.next ()"); + _tmp20_ = gee_iterator_get (iterator); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "nine") == 0, "iterator.get () == \"nine\""); + _g_free0 (_tmp21_); + _tmp22_ = gee_iterator_next (iterator); + _vala_assert (_tmp22_, "iterator.next ()"); + _tmp23_ = gee_iterator_get (iterator); + _tmp24_ = (gchar*) _tmp23_; + _vala_assert (g_strcmp0 (_tmp24_, "one") == 0, "iterator.get () == \"one\""); + _g_free0 (_tmp24_); + _tmp25_ = gee_iterator_next (iterator); + _vala_assert (_tmp25_, "iterator.next ()"); + _tmp26_ = gee_iterator_get (iterator); + _tmp27_ = (gchar*) _tmp26_; + _vala_assert (g_strcmp0 (_tmp27_, "seven") == 0, "iterator.get () == \"seven\""); + _g_free0 (_tmp27_); + _tmp28_ = gee_iterator_next (iterator); + _vala_assert (_tmp28_, "iterator.next ()"); + _tmp29_ = gee_iterator_get (iterator); + _tmp30_ = (gchar*) _tmp29_; + _vala_assert (g_strcmp0 (_tmp30_, "six") == 0, "iterator.get () == \"six\""); + _g_free0 (_tmp30_); + _tmp31_ = gee_iterator_next (iterator); + _vala_assert (_tmp31_, "iterator.next ()"); + _tmp32_ = gee_iterator_get (iterator); + _tmp33_ = (gchar*) _tmp32_; + _vala_assert (g_strcmp0 (_tmp33_, "ten") == 0, "iterator.get () == \"ten\""); + _g_free0 (_tmp33_); + _tmp34_ = gee_iterator_next (iterator); + _vala_assert (_tmp34_, "iterator.next ()"); + _tmp35_ = gee_iterator_get (iterator); + _tmp36_ = (gchar*) _tmp35_; + _vala_assert (g_strcmp0 (_tmp36_, "three") == 0, "iterator.get () == \"three\""); + _g_free0 (_tmp36_); + _tmp37_ = gee_iterator_next (iterator); + _vala_assert (_tmp37_, "iterator.next ()"); + _tmp38_ = gee_iterator_get (iterator); + _tmp39_ = (gchar*) _tmp38_; + _vala_assert (g_strcmp0 (_tmp39_, "twelve") == 0, "iterator.get () == \"twelve\""); + _g_free0 (_tmp39_); + _tmp40_ = gee_iterator_next (iterator); + _vala_assert (_tmp40_, "iterator.next ()"); + _tmp41_ = gee_iterator_get (iterator); + _tmp42_ = (gchar*) _tmp41_; + _vala_assert (g_strcmp0 (_tmp42_, "two") == 0, "iterator.get () == \"two\""); + _g_free0 (_tmp42_); + _tmp43_ = gee_iterator_next (iterator); + _vala_assert (_tmp43_ == FALSE, "iterator.next () == false"); + _g_object_unref0 (iterator); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_first (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedMap* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* keys; + GeeSortedMap* _tmp5_; + GeeSortedSet* _tmp6_; + GeeSortedSet* _tmp7_; + GeeSortedSet* entries; + GeeSortedMap* _tmp8_; + gboolean _tmp9_ = FALSE; + gboolean _tmp13_ = FALSE; + GeeSortedMap* _tmp17_; + GeeSortedMap* _tmp18_; + GeeSortedMap* _tmp19_; + GeeSortedMap* _tmp20_; + GeeSortedMap* _tmp21_; + GeeSortedMap* _tmp22_; + GeeSortedMap* _tmp23_; + GeeSortedMap* _tmp24_; + GeeSortedMap* _tmp25_; + GeeSortedMap* _tmp26_; + GeeSortedMap* _tmp27_; + GeeSortedMap* _tmp28_; + GeeSortedSet* _tmp29_; + gpointer _tmp30_ = NULL; + gchar* _tmp31_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = test_sorted_map; + _tmp3_ = gee_sorted_map_get_ascending_keys (_tmp2_); + _tmp4_ = _tmp3_; + keys = _tmp4_; + _tmp5_ = test_sorted_map; + _tmp6_ = gee_sorted_map_get_ascending_entries (_tmp5_); + _tmp7_ = _tmp6_; + entries = _tmp7_; + _tmp8_ = test_sorted_map; + _vala_assert (_tmp8_ != NULL, "test_sorted_map != null"); + _tmp9_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp9_) { + GeeSortedSet* _tmp10_; + gpointer _tmp11_ = NULL; + gchar* _tmp12_; + _tmp10_ = keys; + _tmp11_ = gee_sorted_set_first (_tmp10_); + _tmp12_ = (gchar*) _tmp11_; + _g_free0 (_tmp12_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp13_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp13_) { + GeeSortedSet* _tmp14_; + gpointer _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + _tmp14_ = entries; + _tmp15_ = gee_sorted_set_first (_tmp14_); + _tmp16_ = (GeeMapEntry*) _tmp15_; + _g_object_unref0 (_tmp16_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp17_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp17_, "one", "one"); + _tmp18_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp18_, "two", "two"); + _tmp19_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp19_, "three", "three"); + _tmp20_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp20_, "four", "four"); + _tmp21_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp21_, "five", "five"); + _tmp22_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp22_, "six", "six"); + _tmp23_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp23_, "seven", "seven"); + _tmp24_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp24_, "eight", "eight"); + _tmp25_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp25_, "nine", "nine"); + _tmp26_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp26_, "ten", "ten"); + _tmp27_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp27_, "eleven", "eleven"); + _tmp28_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp28_, "twelve", "twelve"); + _tmp29_ = keys; + _tmp30_ = gee_sorted_set_first (_tmp29_); + _tmp31_ = (gchar*) _tmp30_; + _vala_assert (g_strcmp0 (_tmp31_, "eight") == 0, "keys.first () == \"eight\""); + _g_free0 (_tmp31_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_last (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedMap* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* keys; + GeeSortedMap* _tmp5_; + GeeSortedSet* _tmp6_; + GeeSortedSet* _tmp7_; + GeeSortedSet* entries; + GeeSortedMap* _tmp8_; + gboolean _tmp9_ = FALSE; + gboolean _tmp13_ = FALSE; + GeeSortedMap* _tmp17_; + GeeSortedMap* _tmp18_; + GeeSortedMap* _tmp19_; + GeeSortedMap* _tmp20_; + GeeSortedMap* _tmp21_; + GeeSortedMap* _tmp22_; + GeeSortedMap* _tmp23_; + GeeSortedMap* _tmp24_; + GeeSortedMap* _tmp25_; + GeeSortedMap* _tmp26_; + GeeSortedMap* _tmp27_; + GeeSortedMap* _tmp28_; + GeeSortedSet* _tmp29_; + gpointer _tmp30_ = NULL; + gchar* _tmp31_; + GeeSortedSet* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = test_sorted_map; + _tmp3_ = gee_sorted_map_get_ascending_keys (_tmp2_); + _tmp4_ = _tmp3_; + keys = _tmp4_; + _tmp5_ = test_sorted_map; + _tmp6_ = gee_sorted_map_get_ascending_entries (_tmp5_); + _tmp7_ = _tmp6_; + entries = _tmp7_; + _tmp8_ = test_sorted_map; + _vala_assert (_tmp8_ != NULL, "test_sorted_map != null"); + _tmp9_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp9_) { + GeeSortedSet* _tmp10_; + gpointer _tmp11_ = NULL; + gchar* _tmp12_; + _tmp10_ = keys; + _tmp11_ = gee_sorted_set_last (_tmp10_); + _tmp12_ = (gchar*) _tmp11_; + _g_free0 (_tmp12_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp13_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp13_) { + GeeSortedSet* _tmp14_; + gpointer _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + _tmp14_ = entries; + _tmp15_ = gee_sorted_set_last (_tmp14_); + _tmp16_ = (GeeMapEntry*) _tmp15_; + _g_object_unref0 (_tmp16_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp17_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp17_, "one", "one"); + _tmp18_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp18_, "two", "two"); + _tmp19_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp19_, "three", "three"); + _tmp20_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp20_, "four", "four"); + _tmp21_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp21_, "five", "five"); + _tmp22_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp22_, "six", "six"); + _tmp23_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp23_, "seven", "seven"); + _tmp24_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp24_, "eight", "eight"); + _tmp25_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp25_, "nine", "nine"); + _tmp26_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp26_, "ten", "ten"); + _tmp27_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp27_, "eleven", "eleven"); + _tmp28_ = test_sorted_map; + gee_map_set ((GeeMap*) _tmp28_, "twelve", "twelve"); + _tmp29_ = keys; + _tmp30_ = gee_sorted_set_last (_tmp29_); + _tmp31_ = (gchar*) _tmp30_; + _vala_assert (g_strcmp0 (_tmp31_, "two") == 0, "keys.last () == \"two\""); + _g_free0 (_tmp31_); + _tmp32_ = entries; + _tmp33_ = gee_sorted_set_last (_tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + map_tests_assert_entry (_tmp34_, "two", "two"); + _g_object_unref0 (_tmp34_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_iterator_at (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedSet* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* keys; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + GeeMap* _tmp6_; + GeeMap* _tmp7_; + GeeMap* _tmp8_; + GeeIterator* _tmp9_ = NULL; + GeeIterator* keys_iter; + GeeIterator* _tmp10_; + GeeIterator* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeMapEntry* _tmp14_ = NULL; + GeeMapEntry* _tmp15_; + GeeIterator* _tmp16_ = NULL; + GeeIterator* _tmp17_; + GeeIterator* entries_iter; + GeeIterator* _tmp18_; + GeeIterator* _tmp19_; + gpointer _tmp20_ = NULL; + GeeMapEntry* _tmp21_; + GeeIterator* _tmp22_ = NULL; + GeeIterator* _tmp23_; + GeeIterator* _tmp24_; + gpointer _tmp25_ = NULL; + gchar* _tmp26_; + GeeMapEntry* _tmp27_ = NULL; + GeeMapEntry* _tmp28_; + GeeIterator* _tmp29_ = NULL; + GeeIterator* _tmp30_; + GeeIterator* _tmp31_; + gpointer _tmp32_ = NULL; + GeeMapEntry* _tmp33_; + GeeIterator* _tmp34_ = NULL; + GeeIterator* _tmp35_; + GeeIterator* _tmp36_; + gpointer _tmp37_ = NULL; + gchar* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + GeeIterator* _tmp41_ = NULL; + GeeIterator* _tmp42_; + GeeIterator* _tmp43_; + gpointer _tmp44_ = NULL; + GeeMapEntry* _tmp45_; + GeeIterator* _tmp46_ = NULL; + GeeIterator* _tmp47_; + GeeMapEntry* _tmp48_ = NULL; + GeeMapEntry* _tmp49_; + GeeIterator* _tmp50_ = NULL; + GeeIterator* _tmp51_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = gee_sorted_map_get_ascending_keys (test_sorted_map); + _tmp3_ = _tmp2_; + keys = _tmp3_; + _tmp4_ = gee_sorted_map_get_ascending_entries (test_sorted_map); + _tmp5_ = _tmp4_; + entries = _tmp5_; + _tmp6_ = ((MapTests*) self)->test_map; + gee_map_set (_tmp6_, "one", "one"); + _tmp7_ = ((MapTests*) self)->test_map; + gee_map_set (_tmp7_, "two", "two"); + _tmp8_ = ((MapTests*) self)->test_map; + gee_map_set (_tmp8_, "three", "three"); + _tmp9_ = gee_sorted_set_iterator_at (keys, "one"); + keys_iter = _tmp9_; + _tmp10_ = keys_iter; + _vala_assert (_tmp10_ != NULL, "keys_iter != null"); + _tmp11_ = keys_iter; + _tmp12_ = gee_iterator_get (_tmp11_); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (g_strcmp0 (_tmp13_, "one") == 0, "keys_iter.get () == \"one\""); + _g_free0 (_tmp13_); + _tmp14_ = map_tests_entry_for ("one", "one"); + _tmp15_ = _tmp14_; + _tmp16_ = gee_sorted_set_iterator_at (entries, _tmp15_); + _tmp17_ = _tmp16_; + _g_object_unref0 (_tmp15_); + entries_iter = _tmp17_; + _tmp18_ = entries_iter; + _vala_assert (_tmp18_ != NULL, "entries_iter != null"); + _tmp19_ = entries_iter; + _tmp20_ = gee_iterator_get (_tmp19_); + _tmp21_ = (GeeMapEntry*) _tmp20_; + map_tests_assert_entry (_tmp21_, "one", "one"); + _g_object_unref0 (_tmp21_); + _tmp22_ = gee_sorted_set_iterator_at (keys, "two"); + _g_object_unref0 (keys_iter); + keys_iter = _tmp22_; + _tmp23_ = keys_iter; + _vala_assert (_tmp23_ != NULL, "keys_iter != null"); + _tmp24_ = keys_iter; + _tmp25_ = gee_iterator_get (_tmp24_); + _tmp26_ = (gchar*) _tmp25_; + _vala_assert (g_strcmp0 (_tmp26_, "two") == 0, "keys_iter.get () == \"two\""); + _g_free0 (_tmp26_); + _tmp27_ = map_tests_entry_for ("two", "two"); + _tmp28_ = _tmp27_; + _tmp29_ = gee_sorted_set_iterator_at (entries, _tmp28_); + _g_object_unref0 (entries_iter); + entries_iter = _tmp29_; + _g_object_unref0 (_tmp28_); + _tmp30_ = entries_iter; + _vala_assert (_tmp30_ != NULL, "entries_iter != null"); + _tmp31_ = entries_iter; + _tmp32_ = gee_iterator_get (_tmp31_); + _tmp33_ = (GeeMapEntry*) _tmp32_; + map_tests_assert_entry (_tmp33_, "two", "two"); + _g_object_unref0 (_tmp33_); + _tmp34_ = gee_sorted_set_iterator_at (keys, "three"); + _g_object_unref0 (keys_iter); + keys_iter = _tmp34_; + _tmp35_ = keys_iter; + _vala_assert (_tmp35_ != NULL, "keys_iter != null"); + _tmp36_ = keys_iter; + _tmp37_ = gee_iterator_get (_tmp36_); + _tmp38_ = (gchar*) _tmp37_; + _vala_assert (g_strcmp0 (_tmp38_, "three") == 0, "keys_iter.get () == \"three\""); + _g_free0 (_tmp38_); + _tmp39_ = map_tests_entry_for ("three", "three"); + _tmp40_ = _tmp39_; + _tmp41_ = gee_sorted_set_iterator_at (entries, _tmp40_); + _g_object_unref0 (entries_iter); + entries_iter = _tmp41_; + _g_object_unref0 (_tmp40_); + _tmp42_ = entries_iter; + _vala_assert (_tmp42_ != NULL, "entries_iter != null"); + _tmp43_ = entries_iter; + _tmp44_ = gee_iterator_get (_tmp43_); + _tmp45_ = (GeeMapEntry*) _tmp44_; + map_tests_assert_entry (_tmp45_, "three", "three"); + _g_object_unref0 (_tmp45_); + _tmp46_ = gee_sorted_set_iterator_at (keys, "zero"); + _g_object_unref0 (keys_iter); + keys_iter = _tmp46_; + _tmp47_ = keys_iter; + _vala_assert (_tmp47_ == NULL, "keys_iter == null"); + _tmp48_ = map_tests_entry_for ("zero", "zero"); + _tmp49_ = _tmp48_; + _tmp50_ = gee_sorted_set_iterator_at (entries, _tmp49_); + _g_object_unref0 (entries_iter); + entries_iter = _tmp50_; + _g_object_unref0 (_tmp49_); + _tmp51_ = entries_iter; + _vala_assert (_tmp51_ == NULL, "entries_iter == null"); + _g_object_unref0 (entries_iter); + _g_object_unref0 (keys_iter); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_lower (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedSet* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* keys; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gpointer _tmp6_ = NULL; + gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + GeeMapEntry* _tmp10_ = NULL; + GeeMapEntry* _tmp11_; + gpointer _tmp12_ = NULL; + GeeMapEntry* _tmp13_; + gpointer _tmp14_ = NULL; + gchar* _tmp15_; + GeeMapEntry* _tmp16_ = NULL; + GeeMapEntry* _tmp17_; + gpointer _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeMapEntry* _tmp22_ = NULL; + GeeMapEntry* _tmp23_; + gpointer _tmp24_ = NULL; + GeeMapEntry* _tmp25_; + gpointer _tmp26_ = NULL; + gchar* _tmp27_; + GeeMapEntry* _tmp28_ = NULL; + GeeMapEntry* _tmp29_; + gpointer _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + gpointer _tmp32_ = NULL; + gchar* _tmp33_; + GeeMapEntry* _tmp34_ = NULL; + GeeMapEntry* _tmp35_; + gpointer _tmp36_ = NULL; + GeeMapEntry* _tmp37_; + gpointer _tmp38_ = NULL; + gchar* _tmp39_; + GeeMapEntry* _tmp40_ = NULL; + GeeMapEntry* _tmp41_; + gpointer _tmp42_ = NULL; + GeeMapEntry* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeMapEntry* _tmp46_ = NULL; + GeeMapEntry* _tmp47_; + gpointer _tmp48_ = NULL; + GeeMapEntry* _tmp49_; + gpointer _tmp50_ = NULL; + gchar* _tmp51_; + GeeMapEntry* _tmp52_ = NULL; + GeeMapEntry* _tmp53_; + gpointer _tmp54_ = NULL; + GeeMapEntry* _tmp55_; + gpointer _tmp56_ = NULL; + gchar* _tmp57_; + GeeMapEntry* _tmp58_ = NULL; + GeeMapEntry* _tmp59_; + gpointer _tmp60_ = NULL; + GeeMapEntry* _tmp61_; + gpointer _tmp62_ = NULL; + gchar* _tmp63_; + GeeMapEntry* _tmp64_ = NULL; + GeeMapEntry* _tmp65_; + gpointer _tmp66_ = NULL; + GeeMapEntry* _tmp67_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = gee_sorted_map_get_ascending_keys (test_sorted_map); + _tmp3_ = _tmp2_; + keys = _tmp3_; + _tmp4_ = gee_sorted_map_get_ascending_entries (test_sorted_map); + _tmp5_ = _tmp4_; + entries = _tmp5_; + _tmp6_ = gee_sorted_set_lower (keys, "one"); + _tmp7_ = (gchar*) _tmp6_; + _vala_assert (_tmp7_ == NULL, "keys.lower (\"one\") == null"); + _g_free0 (_tmp7_); + gee_map_set ((GeeMap*) test_sorted_map, "one", "one"); + gee_map_set ((GeeMap*) test_sorted_map, "two", "two"); + gee_map_set ((GeeMap*) test_sorted_map, "three", "three"); + gee_map_set ((GeeMap*) test_sorted_map, "four", "four"); + gee_map_set ((GeeMap*) test_sorted_map, "five", "five"); + gee_map_set ((GeeMap*) test_sorted_map, "six", "six"); + _tmp8_ = gee_sorted_set_lower (keys, "one"); + _tmp9_ = (gchar*) _tmp8_; + _vala_assert (g_strcmp0 (_tmp9_, "four") == 0, "keys.lower (\"one\") == \"four\""); + _g_free0 (_tmp9_); + _tmp10_ = map_tests_entry_for ("one", "one"); + _tmp11_ = _tmp10_; + _tmp12_ = gee_sorted_set_lower (entries, _tmp11_); + _tmp13_ = (GeeMapEntry*) _tmp12_; + map_tests_assert_entry (_tmp13_, "four", "four"); + _g_object_unref0 (_tmp13_); + _g_object_unref0 (_tmp11_); + _tmp14_ = gee_sorted_set_lower (keys, "o"); + _tmp15_ = (gchar*) _tmp14_; + _vala_assert (g_strcmp0 (_tmp15_, "four") == 0, "keys.lower (\"o\") == \"four\""); + _g_free0 (_tmp15_); + _tmp16_ = map_tests_entry_for ("o", "one"); + _tmp17_ = _tmp16_; + _tmp18_ = gee_sorted_set_lower (entries, _tmp17_); + _tmp19_ = (GeeMapEntry*) _tmp18_; + map_tests_assert_entry (_tmp19_, "four", "four"); + _g_object_unref0 (_tmp19_); + _g_object_unref0 (_tmp17_); + _tmp20_ = gee_sorted_set_lower (keys, "two"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "three") == 0, "keys.lower (\"two\") == \"three\""); + _g_free0 (_tmp21_); + _tmp22_ = map_tests_entry_for ("two", "two"); + _tmp23_ = _tmp22_; + _tmp24_ = gee_sorted_set_lower (entries, _tmp23_); + _tmp25_ = (GeeMapEntry*) _tmp24_; + map_tests_assert_entry (_tmp25_, "three", "three"); + _g_object_unref0 (_tmp25_); + _g_object_unref0 (_tmp23_); + _tmp26_ = gee_sorted_set_lower (keys, "t"); + _tmp27_ = (gchar*) _tmp26_; + _vala_assert (g_strcmp0 (_tmp27_, "six") == 0, "keys.lower (\"t\") == \"six\""); + _g_free0 (_tmp27_); + _tmp28_ = map_tests_entry_for ("t", "two"); + _tmp29_ = _tmp28_; + _tmp30_ = gee_sorted_set_lower (entries, _tmp29_); + _tmp31_ = (GeeMapEntry*) _tmp30_; + map_tests_assert_entry (_tmp31_, "six", "six"); + _g_object_unref0 (_tmp31_); + _g_object_unref0 (_tmp29_); + _tmp32_ = gee_sorted_set_lower (keys, "three"); + _tmp33_ = (gchar*) _tmp32_; + _vala_assert (g_strcmp0 (_tmp33_, "six") == 0, "keys.lower (\"three\") == \"six\""); + _g_free0 (_tmp33_); + _tmp34_ = map_tests_entry_for ("three", "three"); + _tmp35_ = _tmp34_; + _tmp36_ = gee_sorted_set_lower (entries, _tmp35_); + _tmp37_ = (GeeMapEntry*) _tmp36_; + map_tests_assert_entry (_tmp37_, "six", "six"); + _g_object_unref0 (_tmp37_); + _g_object_unref0 (_tmp35_); + _tmp38_ = gee_sorted_set_lower (keys, "four"); + _tmp39_ = (gchar*) _tmp38_; + _vala_assert (g_strcmp0 (_tmp39_, "five") == 0, "keys.lower (\"four\") == \"five\""); + _g_free0 (_tmp39_); + _tmp40_ = map_tests_entry_for ("four", "four"); + _tmp41_ = _tmp40_; + _tmp42_ = gee_sorted_set_lower (entries, _tmp41_); + _tmp43_ = (GeeMapEntry*) _tmp42_; + map_tests_assert_entry (_tmp43_, "five", "five"); + _g_object_unref0 (_tmp43_); + _g_object_unref0 (_tmp41_); + _tmp44_ = gee_sorted_set_lower (keys, "f"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (_tmp45_ == NULL, "keys.lower (\"f\") == null"); + _g_free0 (_tmp45_); + _tmp46_ = map_tests_entry_for ("f", "four"); + _tmp47_ = _tmp46_; + _tmp48_ = gee_sorted_set_lower (entries, _tmp47_); + _tmp49_ = (GeeMapEntry*) _tmp48_; + _vala_assert (_tmp49_ == NULL, "entries.lower (entry_for (\"f\", \"four\")) == null"); + _g_object_unref0 (_tmp49_); + _g_object_unref0 (_tmp47_); + _tmp50_ = gee_sorted_set_lower (keys, "five"); + _tmp51_ = (gchar*) _tmp50_; + _vala_assert (_tmp51_ == NULL, "keys.lower (\"five\") == null"); + _g_free0 (_tmp51_); + _tmp52_ = map_tests_entry_for ("five", "five"); + _tmp53_ = _tmp52_; + _tmp54_ = gee_sorted_set_lower (entries, _tmp53_); + _tmp55_ = (GeeMapEntry*) _tmp54_; + _vala_assert (_tmp55_ == NULL, "entries.lower (entry_for (\"five\", \"five\")) == null"); + _g_object_unref0 (_tmp55_); + _g_object_unref0 (_tmp53_); + _tmp56_ = gee_sorted_set_lower (keys, "six"); + _tmp57_ = (gchar*) _tmp56_; + _vala_assert (g_strcmp0 (_tmp57_, "one") == 0, "keys.lower (\"six\") == \"one\""); + _g_free0 (_tmp57_); + _tmp58_ = map_tests_entry_for ("six", "six"); + _tmp59_ = _tmp58_; + _tmp60_ = gee_sorted_set_lower (entries, _tmp59_); + _tmp61_ = (GeeMapEntry*) _tmp60_; + map_tests_assert_entry (_tmp61_, "one", "one"); + _g_object_unref0 (_tmp61_); + _g_object_unref0 (_tmp59_); + _tmp62_ = gee_sorted_set_lower (keys, "s"); + _tmp63_ = (gchar*) _tmp62_; + _vala_assert (g_strcmp0 (_tmp63_, "one") == 0, "keys.lower (\"s\") == \"one\""); + _g_free0 (_tmp63_); + _tmp64_ = map_tests_entry_for ("s", "six"); + _tmp65_ = _tmp64_; + _tmp66_ = gee_sorted_set_lower (entries, _tmp65_); + _tmp67_ = (GeeMapEntry*) _tmp66_; + map_tests_assert_entry (_tmp67_, "one", "one"); + _g_object_unref0 (_tmp67_); + _g_object_unref0 (_tmp65_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_higher (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedSet* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* keys; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gpointer _tmp6_ = NULL; + gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + GeeMapEntry* _tmp10_ = NULL; + GeeMapEntry* _tmp11_; + gpointer _tmp12_ = NULL; + GeeMapEntry* _tmp13_; + gpointer _tmp14_ = NULL; + gchar* _tmp15_; + GeeMapEntry* _tmp16_ = NULL; + GeeMapEntry* _tmp17_; + gpointer _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeMapEntry* _tmp22_ = NULL; + GeeMapEntry* _tmp23_; + gpointer _tmp24_ = NULL; + GeeMapEntry* _tmp25_; + gpointer _tmp26_ = NULL; + gchar* _tmp27_; + GeeMapEntry* _tmp28_ = NULL; + GeeMapEntry* _tmp29_; + gpointer _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + gpointer _tmp32_ = NULL; + gchar* _tmp33_; + GeeMapEntry* _tmp34_ = NULL; + GeeMapEntry* _tmp35_; + gpointer _tmp36_ = NULL; + GeeMapEntry* _tmp37_; + gpointer _tmp38_ = NULL; + gchar* _tmp39_; + GeeMapEntry* _tmp40_ = NULL; + GeeMapEntry* _tmp41_; + gpointer _tmp42_ = NULL; + GeeMapEntry* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeMapEntry* _tmp46_ = NULL; + GeeMapEntry* _tmp47_; + gpointer _tmp48_ = NULL; + GeeMapEntry* _tmp49_; + gpointer _tmp50_ = NULL; + gchar* _tmp51_; + GeeMapEntry* _tmp52_ = NULL; + GeeMapEntry* _tmp53_; + gpointer _tmp54_ = NULL; + GeeMapEntry* _tmp55_; + gpointer _tmp56_ = NULL; + gchar* _tmp57_; + GeeMapEntry* _tmp58_ = NULL; + GeeMapEntry* _tmp59_; + gpointer _tmp60_ = NULL; + GeeMapEntry* _tmp61_; + gpointer _tmp62_ = NULL; + gchar* _tmp63_; + GeeMapEntry* _tmp64_ = NULL; + GeeMapEntry* _tmp65_; + gpointer _tmp66_ = NULL; + GeeMapEntry* _tmp67_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = gee_sorted_map_get_ascending_keys (test_sorted_map); + _tmp3_ = _tmp2_; + keys = _tmp3_; + _tmp4_ = gee_sorted_map_get_ascending_entries (test_sorted_map); + _tmp5_ = _tmp4_; + entries = _tmp5_; + _tmp6_ = gee_sorted_set_higher (keys, "one"); + _tmp7_ = (gchar*) _tmp6_; + _vala_assert (_tmp7_ == NULL, "keys.higher (\"one\") == null"); + _g_free0 (_tmp7_); + gee_map_set ((GeeMap*) test_sorted_map, "one", "one"); + gee_map_set ((GeeMap*) test_sorted_map, "two", "two"); + gee_map_set ((GeeMap*) test_sorted_map, "three", "three"); + gee_map_set ((GeeMap*) test_sorted_map, "four", "four"); + gee_map_set ((GeeMap*) test_sorted_map, "five", "five"); + gee_map_set ((GeeMap*) test_sorted_map, "six", "six"); + _tmp8_ = gee_sorted_set_higher (keys, "one"); + _tmp9_ = (gchar*) _tmp8_; + _vala_assert (g_strcmp0 (_tmp9_, "six") == 0, "keys.higher (\"one\") == \"six\""); + _g_free0 (_tmp9_); + _tmp10_ = map_tests_entry_for ("one", "one"); + _tmp11_ = _tmp10_; + _tmp12_ = gee_sorted_set_higher (entries, _tmp11_); + _tmp13_ = (GeeMapEntry*) _tmp12_; + map_tests_assert_entry (_tmp13_, "six", "six"); + _g_object_unref0 (_tmp13_); + _g_object_unref0 (_tmp11_); + _tmp14_ = gee_sorted_set_higher (keys, "o"); + _tmp15_ = (gchar*) _tmp14_; + _vala_assert (g_strcmp0 (_tmp15_, "one") == 0, "keys.higher (\"o\") == \"one\""); + _g_free0 (_tmp15_); + _tmp16_ = map_tests_entry_for ("o", "one"); + _tmp17_ = _tmp16_; + _tmp18_ = gee_sorted_set_higher (entries, _tmp17_); + _tmp19_ = (GeeMapEntry*) _tmp18_; + map_tests_assert_entry (_tmp19_, "one", "one"); + _g_object_unref0 (_tmp19_); + _g_object_unref0 (_tmp17_); + _tmp20_ = gee_sorted_set_higher (keys, "two"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (_tmp21_ == NULL, "keys.higher (\"two\") == null"); + _g_free0 (_tmp21_); + _tmp22_ = map_tests_entry_for ("two", "two"); + _tmp23_ = _tmp22_; + _tmp24_ = gee_sorted_set_higher (entries, _tmp23_); + _tmp25_ = (GeeMapEntry*) _tmp24_; + _vala_assert (_tmp25_ == NULL, "entries.higher (entry_for (\"two\", \"two\")) == null"); + _g_object_unref0 (_tmp25_); + _g_object_unref0 (_tmp23_); + _tmp26_ = gee_sorted_set_higher (keys, "t"); + _tmp27_ = (gchar*) _tmp26_; + _vala_assert (g_strcmp0 (_tmp27_, "three") == 0, "keys.higher (\"t\") == \"three\""); + _g_free0 (_tmp27_); + _tmp28_ = map_tests_entry_for ("t", "two"); + _tmp29_ = _tmp28_; + _tmp30_ = gee_sorted_set_higher (entries, _tmp29_); + _tmp31_ = (GeeMapEntry*) _tmp30_; + map_tests_assert_entry (_tmp31_, "three", "three"); + _g_object_unref0 (_tmp31_); + _g_object_unref0 (_tmp29_); + _tmp32_ = gee_sorted_set_higher (keys, "three"); + _tmp33_ = (gchar*) _tmp32_; + _vala_assert (g_strcmp0 (_tmp33_, "two") == 0, "keys.higher (\"three\") == \"two\""); + _g_free0 (_tmp33_); + _tmp34_ = map_tests_entry_for ("three", "three"); + _tmp35_ = _tmp34_; + _tmp36_ = gee_sorted_set_higher (entries, _tmp35_); + _tmp37_ = (GeeMapEntry*) _tmp36_; + map_tests_assert_entry (_tmp37_, "two", "two"); + _g_object_unref0 (_tmp37_); + _g_object_unref0 (_tmp35_); + _tmp38_ = gee_sorted_set_higher (keys, "four"); + _tmp39_ = (gchar*) _tmp38_; + _vala_assert (g_strcmp0 (_tmp39_, "one") == 0, "keys.higher (\"four\") == \"one\""); + _g_free0 (_tmp39_); + _tmp40_ = map_tests_entry_for ("four", "four"); + _tmp41_ = _tmp40_; + _tmp42_ = gee_sorted_set_higher (entries, _tmp41_); + _tmp43_ = (GeeMapEntry*) _tmp42_; + map_tests_assert_entry (_tmp43_, "one", "one"); + _g_object_unref0 (_tmp43_); + _g_object_unref0 (_tmp41_); + _tmp44_ = gee_sorted_set_higher (keys, "f"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (g_strcmp0 (_tmp45_, "five") == 0, "keys.higher (\"f\") == \"five\""); + _g_free0 (_tmp45_); + _tmp46_ = map_tests_entry_for ("f", "four"); + _tmp47_ = _tmp46_; + _tmp48_ = gee_sorted_set_higher (entries, _tmp47_); + _tmp49_ = (GeeMapEntry*) _tmp48_; + map_tests_assert_entry (_tmp49_, "five", "five"); + _g_object_unref0 (_tmp49_); + _g_object_unref0 (_tmp47_); + _tmp50_ = gee_sorted_set_higher (keys, "five"); + _tmp51_ = (gchar*) _tmp50_; + _vala_assert (g_strcmp0 (_tmp51_, "four") == 0, "keys.higher (\"five\") == \"four\""); + _g_free0 (_tmp51_); + _tmp52_ = map_tests_entry_for ("five", "five"); + _tmp53_ = _tmp52_; + _tmp54_ = gee_sorted_set_higher (entries, _tmp53_); + _tmp55_ = (GeeMapEntry*) _tmp54_; + map_tests_assert_entry (_tmp55_, "four", "four"); + _g_object_unref0 (_tmp55_); + _g_object_unref0 (_tmp53_); + _tmp56_ = gee_sorted_set_higher (keys, "six"); + _tmp57_ = (gchar*) _tmp56_; + _vala_assert (g_strcmp0 (_tmp57_, "three") == 0, "keys.higher (\"six\") == \"three\""); + _g_free0 (_tmp57_); + _tmp58_ = map_tests_entry_for ("six", "six"); + _tmp59_ = _tmp58_; + _tmp60_ = gee_sorted_set_higher (entries, _tmp59_); + _tmp61_ = (GeeMapEntry*) _tmp60_; + map_tests_assert_entry (_tmp61_, "three", "three"); + _g_object_unref0 (_tmp61_); + _g_object_unref0 (_tmp59_); + _tmp62_ = gee_sorted_set_higher (keys, "s"); + _tmp63_ = (gchar*) _tmp62_; + _vala_assert (g_strcmp0 (_tmp63_, "six") == 0, "keys.higher (\"s\") == \"six\""); + _g_free0 (_tmp63_); + _tmp64_ = map_tests_entry_for ("s", "six"); + _tmp65_ = _tmp64_; + _tmp66_ = gee_sorted_set_higher (entries, _tmp65_); + _tmp67_ = (GeeMapEntry*) _tmp66_; + map_tests_assert_entry (_tmp67_, "six", "six"); + _g_object_unref0 (_tmp67_); + _g_object_unref0 (_tmp65_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_floor (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedSet* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* keys; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gpointer _tmp6_ = NULL; + gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + GeeMapEntry* _tmp10_ = NULL; + GeeMapEntry* _tmp11_; + gpointer _tmp12_ = NULL; + GeeMapEntry* _tmp13_; + gpointer _tmp14_ = NULL; + gchar* _tmp15_; + GeeMapEntry* _tmp16_ = NULL; + GeeMapEntry* _tmp17_; + gpointer _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeMapEntry* _tmp22_ = NULL; + GeeMapEntry* _tmp23_; + gpointer _tmp24_ = NULL; + GeeMapEntry* _tmp25_; + gpointer _tmp26_ = NULL; + gchar* _tmp27_; + GeeMapEntry* _tmp28_ = NULL; + GeeMapEntry* _tmp29_; + gpointer _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + gpointer _tmp32_ = NULL; + gchar* _tmp33_; + GeeMapEntry* _tmp34_ = NULL; + GeeMapEntry* _tmp35_; + gpointer _tmp36_ = NULL; + GeeMapEntry* _tmp37_; + gpointer _tmp38_ = NULL; + gchar* _tmp39_; + GeeMapEntry* _tmp40_ = NULL; + GeeMapEntry* _tmp41_; + gpointer _tmp42_ = NULL; + GeeMapEntry* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeMapEntry* _tmp46_ = NULL; + GeeMapEntry* _tmp47_; + gpointer _tmp48_ = NULL; + GeeMapEntry* _tmp49_; + gpointer _tmp50_ = NULL; + gchar* _tmp51_; + GeeMapEntry* _tmp52_ = NULL; + GeeMapEntry* _tmp53_; + gpointer _tmp54_ = NULL; + GeeMapEntry* _tmp55_; + gpointer _tmp56_ = NULL; + gchar* _tmp57_; + GeeMapEntry* _tmp58_ = NULL; + GeeMapEntry* _tmp59_; + gpointer _tmp60_ = NULL; + GeeMapEntry* _tmp61_; + gpointer _tmp62_ = NULL; + gchar* _tmp63_; + GeeMapEntry* _tmp64_ = NULL; + GeeMapEntry* _tmp65_; + gpointer _tmp66_ = NULL; + GeeMapEntry* _tmp67_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = gee_sorted_map_get_ascending_keys (test_sorted_map); + _tmp3_ = _tmp2_; + keys = _tmp3_; + _tmp4_ = gee_sorted_map_get_ascending_entries (test_sorted_map); + _tmp5_ = _tmp4_; + entries = _tmp5_; + _tmp6_ = gee_sorted_set_floor (keys, "one"); + _tmp7_ = (gchar*) _tmp6_; + _vala_assert (_tmp7_ == NULL, "keys.floor (\"one\") == null"); + _g_free0 (_tmp7_); + gee_map_set ((GeeMap*) test_sorted_map, "one", "one"); + gee_map_set ((GeeMap*) test_sorted_map, "two", "two"); + gee_map_set ((GeeMap*) test_sorted_map, "three", "three"); + gee_map_set ((GeeMap*) test_sorted_map, "four", "four"); + gee_map_set ((GeeMap*) test_sorted_map, "five", "five"); + gee_map_set ((GeeMap*) test_sorted_map, "six", "six"); + _tmp8_ = gee_sorted_set_floor (keys, "one"); + _tmp9_ = (gchar*) _tmp8_; + _vala_assert (g_strcmp0 (_tmp9_, "one") == 0, "keys.floor (\"one\") == \"one\""); + _g_free0 (_tmp9_); + _tmp10_ = map_tests_entry_for ("one", "one"); + _tmp11_ = _tmp10_; + _tmp12_ = gee_sorted_set_floor (entries, _tmp11_); + _tmp13_ = (GeeMapEntry*) _tmp12_; + map_tests_assert_entry (_tmp13_, "one", "one"); + _g_object_unref0 (_tmp13_); + _g_object_unref0 (_tmp11_); + _tmp14_ = gee_sorted_set_floor (keys, "o"); + _tmp15_ = (gchar*) _tmp14_; + _vala_assert (g_strcmp0 (_tmp15_, "four") == 0, "keys.floor (\"o\") == \"four\""); + _g_free0 (_tmp15_); + _tmp16_ = map_tests_entry_for ("o", "one"); + _tmp17_ = _tmp16_; + _tmp18_ = gee_sorted_set_floor (entries, _tmp17_); + _tmp19_ = (GeeMapEntry*) _tmp18_; + map_tests_assert_entry (_tmp19_, "four", "four"); + _g_object_unref0 (_tmp19_); + _g_object_unref0 (_tmp17_); + _tmp20_ = gee_sorted_set_floor (keys, "two"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "two") == 0, "keys.floor (\"two\") == \"two\""); + _g_free0 (_tmp21_); + _tmp22_ = map_tests_entry_for ("two", "two"); + _tmp23_ = _tmp22_; + _tmp24_ = gee_sorted_set_floor (entries, _tmp23_); + _tmp25_ = (GeeMapEntry*) _tmp24_; + map_tests_assert_entry (_tmp25_, "two", "two"); + _g_object_unref0 (_tmp25_); + _g_object_unref0 (_tmp23_); + _tmp26_ = gee_sorted_set_floor (keys, "t"); + _tmp27_ = (gchar*) _tmp26_; + _vala_assert (g_strcmp0 (_tmp27_, "six") == 0, "keys.floor (\"t\") == \"six\""); + _g_free0 (_tmp27_); + _tmp28_ = map_tests_entry_for ("t", "two"); + _tmp29_ = _tmp28_; + _tmp30_ = gee_sorted_set_floor (entries, _tmp29_); + _tmp31_ = (GeeMapEntry*) _tmp30_; + map_tests_assert_entry (_tmp31_, "six", "six"); + _g_object_unref0 (_tmp31_); + _g_object_unref0 (_tmp29_); + _tmp32_ = gee_sorted_set_floor (keys, "three"); + _tmp33_ = (gchar*) _tmp32_; + _vala_assert (g_strcmp0 (_tmp33_, "three") == 0, "keys.floor (\"three\") == \"three\""); + _g_free0 (_tmp33_); + _tmp34_ = map_tests_entry_for ("three", "three"); + _tmp35_ = _tmp34_; + _tmp36_ = gee_sorted_set_floor (entries, _tmp35_); + _tmp37_ = (GeeMapEntry*) _tmp36_; + map_tests_assert_entry (_tmp37_, "three", "three"); + _g_object_unref0 (_tmp37_); + _g_object_unref0 (_tmp35_); + _tmp38_ = gee_sorted_set_floor (keys, "four"); + _tmp39_ = (gchar*) _tmp38_; + _vala_assert (g_strcmp0 (_tmp39_, "four") == 0, "keys.floor (\"four\") == \"four\""); + _g_free0 (_tmp39_); + _tmp40_ = map_tests_entry_for ("four", "four"); + _tmp41_ = _tmp40_; + _tmp42_ = gee_sorted_set_floor (entries, _tmp41_); + _tmp43_ = (GeeMapEntry*) _tmp42_; + map_tests_assert_entry (_tmp43_, "four", "four"); + _g_object_unref0 (_tmp43_); + _g_object_unref0 (_tmp41_); + _tmp44_ = gee_sorted_set_floor (keys, "f"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (_tmp45_ == NULL, "keys.floor (\"f\") == null"); + _g_free0 (_tmp45_); + _tmp46_ = map_tests_entry_for ("f", "four"); + _tmp47_ = _tmp46_; + _tmp48_ = gee_sorted_set_floor (entries, _tmp47_); + _tmp49_ = (GeeMapEntry*) _tmp48_; + _vala_assert (_tmp49_ == NULL, "entries.floor (entry_for (\"f\", \"four\")) == null"); + _g_object_unref0 (_tmp49_); + _g_object_unref0 (_tmp47_); + _tmp50_ = gee_sorted_set_floor (keys, "five"); + _tmp51_ = (gchar*) _tmp50_; + _vala_assert (g_strcmp0 (_tmp51_, "five") == 0, "keys.floor (\"five\") == \"five\""); + _g_free0 (_tmp51_); + _tmp52_ = map_tests_entry_for ("five", "five"); + _tmp53_ = _tmp52_; + _tmp54_ = gee_sorted_set_floor (entries, _tmp53_); + _tmp55_ = (GeeMapEntry*) _tmp54_; + map_tests_assert_entry (_tmp55_, "five", "five"); + _g_object_unref0 (_tmp55_); + _g_object_unref0 (_tmp53_); + _tmp56_ = gee_sorted_set_floor (keys, "six"); + _tmp57_ = (gchar*) _tmp56_; + _vala_assert (g_strcmp0 (_tmp57_, "six") == 0, "keys.floor (\"six\") == \"six\""); + _g_free0 (_tmp57_); + _tmp58_ = map_tests_entry_for ("six", "six"); + _tmp59_ = _tmp58_; + _tmp60_ = gee_sorted_set_floor (entries, _tmp59_); + _tmp61_ = (GeeMapEntry*) _tmp60_; + map_tests_assert_entry (_tmp61_, "six", "six"); + _g_object_unref0 (_tmp61_); + _g_object_unref0 (_tmp59_); + _tmp62_ = gee_sorted_set_floor (keys, "s"); + _tmp63_ = (gchar*) _tmp62_; + _vala_assert (g_strcmp0 (_tmp63_, "one") == 0, "keys.floor (\"s\") == \"one\""); + _g_free0 (_tmp63_); + _tmp64_ = map_tests_entry_for ("s", "six"); + _tmp65_ = _tmp64_; + _tmp66_ = gee_sorted_set_floor (entries, _tmp65_); + _tmp67_ = (GeeMapEntry*) _tmp66_; + map_tests_assert_entry (_tmp67_, "one", "one"); + _g_object_unref0 (_tmp67_); + _g_object_unref0 (_tmp65_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +void gee_sorted_map_tests_test_ceil (GeeSortedMapTests* self) { + GeeMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* test_sorted_map; + GeeSortedSet* _tmp2_; + GeeSortedSet* _tmp3_; + GeeSortedSet* keys; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gpointer _tmp6_ = NULL; + gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + GeeMapEntry* _tmp10_ = NULL; + GeeMapEntry* _tmp11_; + gpointer _tmp12_ = NULL; + GeeMapEntry* _tmp13_; + gpointer _tmp14_ = NULL; + gchar* _tmp15_; + GeeMapEntry* _tmp16_ = NULL; + GeeMapEntry* _tmp17_; + gpointer _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeMapEntry* _tmp22_ = NULL; + GeeMapEntry* _tmp23_; + gpointer _tmp24_ = NULL; + GeeMapEntry* _tmp25_; + gpointer _tmp26_ = NULL; + gchar* _tmp27_; + GeeMapEntry* _tmp28_ = NULL; + GeeMapEntry* _tmp29_; + gpointer _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + gpointer _tmp32_ = NULL; + gchar* _tmp33_; + GeeMapEntry* _tmp34_ = NULL; + GeeMapEntry* _tmp35_; + gpointer _tmp36_ = NULL; + GeeMapEntry* _tmp37_; + gpointer _tmp38_ = NULL; + gchar* _tmp39_; + GeeMapEntry* _tmp40_ = NULL; + GeeMapEntry* _tmp41_; + gpointer _tmp42_ = NULL; + GeeMapEntry* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeMapEntry* _tmp46_ = NULL; + GeeMapEntry* _tmp47_; + gpointer _tmp48_ = NULL; + GeeMapEntry* _tmp49_; + gpointer _tmp50_ = NULL; + gchar* _tmp51_; + GeeMapEntry* _tmp52_ = NULL; + GeeMapEntry* _tmp53_; + gpointer _tmp54_ = NULL; + GeeMapEntry* _tmp55_; + gpointer _tmp56_ = NULL; + gchar* _tmp57_; + GeeMapEntry* _tmp58_ = NULL; + GeeMapEntry* _tmp59_; + gpointer _tmp60_ = NULL; + GeeMapEntry* _tmp61_; + gpointer _tmp62_ = NULL; + gchar* _tmp63_; + GeeMapEntry* _tmp64_ = NULL; + GeeMapEntry* _tmp65_; + gpointer _tmp66_ = NULL; + GeeMapEntry* _tmp67_; + g_return_if_fail (self != NULL); + _tmp0_ = ((MapTests*) self)->test_map; + _tmp1_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp0_) : NULL); + test_sorted_map = _tmp1_; + _tmp2_ = gee_sorted_map_get_ascending_keys (test_sorted_map); + _tmp3_ = _tmp2_; + keys = _tmp3_; + _tmp4_ = gee_sorted_map_get_ascending_entries (test_sorted_map); + _tmp5_ = _tmp4_; + entries = _tmp5_; + _tmp6_ = gee_sorted_set_ceil (keys, "one"); + _tmp7_ = (gchar*) _tmp6_; + _vala_assert (_tmp7_ == NULL, "keys.ceil (\"one\") == null"); + _g_free0 (_tmp7_); + gee_map_set ((GeeMap*) test_sorted_map, "one", "one"); + gee_map_set ((GeeMap*) test_sorted_map, "two", "two"); + gee_map_set ((GeeMap*) test_sorted_map, "three", "three"); + gee_map_set ((GeeMap*) test_sorted_map, "four", "four"); + gee_map_set ((GeeMap*) test_sorted_map, "five", "five"); + gee_map_set ((GeeMap*) test_sorted_map, "six", "six"); + _tmp8_ = gee_sorted_set_ceil (keys, "one"); + _tmp9_ = (gchar*) _tmp8_; + _vala_assert (g_strcmp0 (_tmp9_, "one") == 0, "keys.ceil (\"one\") == \"one\""); + _g_free0 (_tmp9_); + _tmp10_ = map_tests_entry_for ("one", "one"); + _tmp11_ = _tmp10_; + _tmp12_ = gee_sorted_set_ceil (entries, _tmp11_); + _tmp13_ = (GeeMapEntry*) _tmp12_; + map_tests_assert_entry (_tmp13_, "one", "one"); + _g_object_unref0 (_tmp13_); + _g_object_unref0 (_tmp11_); + _tmp14_ = gee_sorted_set_ceil (keys, "o"); + _tmp15_ = (gchar*) _tmp14_; + _vala_assert (g_strcmp0 (_tmp15_, "one") == 0, "keys.ceil (\"o\") == \"one\""); + _g_free0 (_tmp15_); + _tmp16_ = map_tests_entry_for ("o", "one"); + _tmp17_ = _tmp16_; + _tmp18_ = gee_sorted_set_ceil (entries, _tmp17_); + _tmp19_ = (GeeMapEntry*) _tmp18_; + map_tests_assert_entry (_tmp19_, "one", "one"); + _g_object_unref0 (_tmp19_); + _g_object_unref0 (_tmp17_); + _tmp20_ = gee_sorted_set_ceil (keys, "two"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "two") == 0, "keys.ceil (\"two\") == \"two\""); + _g_free0 (_tmp21_); + _tmp22_ = map_tests_entry_for ("two", "two"); + _tmp23_ = _tmp22_; + _tmp24_ = gee_sorted_set_ceil (entries, _tmp23_); + _tmp25_ = (GeeMapEntry*) _tmp24_; + map_tests_assert_entry (_tmp25_, "two", "two"); + _g_object_unref0 (_tmp25_); + _g_object_unref0 (_tmp23_); + _tmp26_ = gee_sorted_set_ceil (keys, "t"); + _tmp27_ = (gchar*) _tmp26_; + _vala_assert (g_strcmp0 (_tmp27_, "three") == 0, "keys.ceil (\"t\") == \"three\""); + _g_free0 (_tmp27_); + _tmp28_ = map_tests_entry_for ("t", "two"); + _tmp29_ = _tmp28_; + _tmp30_ = gee_sorted_set_ceil (entries, _tmp29_); + _tmp31_ = (GeeMapEntry*) _tmp30_; + map_tests_assert_entry (_tmp31_, "three", "three"); + _g_object_unref0 (_tmp31_); + _g_object_unref0 (_tmp29_); + _tmp32_ = gee_sorted_set_ceil (keys, "three"); + _tmp33_ = (gchar*) _tmp32_; + _vala_assert (g_strcmp0 (_tmp33_, "three") == 0, "keys.ceil (\"three\") == \"three\""); + _g_free0 (_tmp33_); + _tmp34_ = map_tests_entry_for ("three", "three"); + _tmp35_ = _tmp34_; + _tmp36_ = gee_sorted_set_ceil (entries, _tmp35_); + _tmp37_ = (GeeMapEntry*) _tmp36_; + map_tests_assert_entry (_tmp37_, "three", "three"); + _g_object_unref0 (_tmp37_); + _g_object_unref0 (_tmp35_); + _tmp38_ = gee_sorted_set_ceil (keys, "four"); + _tmp39_ = (gchar*) _tmp38_; + _vala_assert (g_strcmp0 (_tmp39_, "four") == 0, "keys.ceil (\"four\") == \"four\""); + _g_free0 (_tmp39_); + _tmp40_ = map_tests_entry_for ("four", "four"); + _tmp41_ = _tmp40_; + _tmp42_ = gee_sorted_set_ceil (entries, _tmp41_); + _tmp43_ = (GeeMapEntry*) _tmp42_; + map_tests_assert_entry (_tmp43_, "four", "four"); + _g_object_unref0 (_tmp43_); + _g_object_unref0 (_tmp41_); + _tmp44_ = gee_sorted_set_ceil (keys, "f"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (g_strcmp0 (_tmp45_, "five") == 0, "keys.ceil (\"f\") == \"five\""); + _g_free0 (_tmp45_); + _tmp46_ = map_tests_entry_for ("f", "four"); + _tmp47_ = _tmp46_; + _tmp48_ = gee_sorted_set_ceil (entries, _tmp47_); + _tmp49_ = (GeeMapEntry*) _tmp48_; + map_tests_assert_entry (_tmp49_, "five", "five"); + _g_object_unref0 (_tmp49_); + _g_object_unref0 (_tmp47_); + _tmp50_ = gee_sorted_set_ceil (keys, "five"); + _tmp51_ = (gchar*) _tmp50_; + _vala_assert (g_strcmp0 (_tmp51_, "five") == 0, "keys.ceil (\"five\") == \"five\""); + _g_free0 (_tmp51_); + _tmp52_ = map_tests_entry_for ("five", "five"); + _tmp53_ = _tmp52_; + _tmp54_ = gee_sorted_set_ceil (entries, _tmp53_); + _tmp55_ = (GeeMapEntry*) _tmp54_; + map_tests_assert_entry (_tmp55_, "five", "five"); + _g_object_unref0 (_tmp55_); + _g_object_unref0 (_tmp53_); + _tmp56_ = gee_sorted_set_ceil (keys, "six"); + _tmp57_ = (gchar*) _tmp56_; + _vala_assert (g_strcmp0 (_tmp57_, "six") == 0, "keys.ceil (\"six\") == \"six\""); + _g_free0 (_tmp57_); + _tmp58_ = map_tests_entry_for ("six", "six"); + _tmp59_ = _tmp58_; + _tmp60_ = gee_sorted_set_ceil (entries, _tmp59_); + _tmp61_ = (GeeMapEntry*) _tmp60_; + map_tests_assert_entry (_tmp61_, "six", "six"); + _g_object_unref0 (_tmp61_); + _g_object_unref0 (_tmp59_); + _tmp62_ = gee_sorted_set_ceil (keys, "s"); + _tmp63_ = (gchar*) _tmp62_; + _vala_assert (g_strcmp0 (_tmp63_, "six") == 0, "keys.ceil (\"s\") == \"six\""); + _g_free0 (_tmp63_); + _tmp64_ = map_tests_entry_for ("s", "six"); + _tmp65_ = _tmp64_; + _tmp66_ = gee_sorted_set_ceil (entries, _tmp65_); + _tmp67_ = (GeeMapEntry*) _tmp66_; + map_tests_assert_entry (_tmp67_, "six", "six"); + _g_object_unref0 (_tmp67_); + _g_object_unref0 (_tmp65_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + _g_object_unref0 (test_sorted_map); +} + + +const gchar* gee_sorted_map_tests_sub_map_tests_type_to_string (GeeSortedMapTestsSubMapTestsType self) { + const gchar* result = NULL; + switch (self) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + result = "Head"; + return result; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + result = "Tail"; + return result; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + result = "Range"; + return result; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + result = "Empty"; + return result; + } + default: + { + g_assert_not_reached (); + } + } +} + + +GType gee_sorted_map_tests_sub_map_tests_type_get_type (void) { + static volatile gsize gee_sorted_map_tests_sub_map_tests_type_type_id__volatile = 0; + if (g_once_init_enter (&gee_sorted_map_tests_sub_map_tests_type_type_id__volatile)) { + static const GEnumValue values[] = {{GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD, "GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD", "head"}, {GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL, "GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL", "tail"}, {GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB, "GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB", "sub"}, {GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY, "GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY", "empty"}, {0, NULL, NULL}}; + GType gee_sorted_map_tests_sub_map_tests_type_type_id; + gee_sorted_map_tests_sub_map_tests_type_type_id = g_enum_register_static ("GeeSortedMapTestsSubMapTestsType", values); + g_once_init_leave (&gee_sorted_map_tests_sub_map_tests_type_type_id__volatile, gee_sorted_map_tests_sub_map_tests_type_type_id); + } + return gee_sorted_map_tests_sub_map_tests_type_type_id__volatile; +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_keys_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_keys (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_values_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_values (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_entries_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_entries (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_get_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_get (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_set_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_set (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_unset_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_unset (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_clear_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_clear (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_iterators_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_iterators (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_boundaries_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_boundaries (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_lower_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_lower (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_higher_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_higher (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_floor_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_floor (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_ceil_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_ceil (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_iterator_at_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_iterator_at (self); +} + + +static void _gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets_gee_test_case_test_method (gpointer self) { + gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets (self); +} + + +GeeSortedMapTestsSubMapTests* gee_sorted_map_tests_sub_map_tests_construct (GType object_type, GeeSortedMapTests* test, GeeSortedMapTestsSubMapTestsType type) { + GeeSortedMapTestsSubMapTests * self = NULL; + GeeSortedMapTestsSubMapTestsType _tmp0_; + const gchar* _tmp1_ = NULL; + gchar* _tmp2_ = NULL; + gchar* _tmp3_; + GeeSortedMapTests* _tmp4_; + GeeSortedMapTests* _tmp5_; + GeeSortedMapTestsSubMapTestsType _tmp6_; + g_return_val_if_fail (test != NULL, NULL); + _tmp0_ = type; + _tmp1_ = gee_sorted_map_tests_sub_map_tests_type_to_string (_tmp0_); + _tmp2_ = g_strdup_printf ("%s Submap", _tmp1_); + _tmp3_ = _tmp2_; + self = (GeeSortedMapTestsSubMapTests*) gee_test_case_construct (object_type, _tmp3_); + _g_free0 (_tmp3_); + _tmp4_ = test; + _tmp5_ = _g_object_ref0 (_tmp4_); + _g_object_unref0 (self->priv->test); + self->priv->test = _tmp5_; + _tmp6_ = type; + self->priv->type = _tmp6_; + gee_test_case_add_test ((GeeTestCase*) self, "[Map] has_key, size and is_empty", _gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] keys", _gee_sorted_map_tests_sub_map_tests_test_keys_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] values", _gee_sorted_map_tests_sub_map_tests_test_values_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] entries", _gee_sorted_map_tests_sub_map_tests_test_entries_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] get", _gee_sorted_map_tests_sub_map_tests_test_get_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] set", _gee_sorted_map_tests_sub_map_tests_test_set_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] unset", _gee_sorted_map_tests_sub_map_tests_test_unset_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] clear", _gee_sorted_map_tests_sub_map_tests_test_clear_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[Map] iterators", _gee_sorted_map_tests_sub_map_tests_test_iterators_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] boundaries", _gee_sorted_map_tests_sub_map_tests_test_boundaries_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] lower", _gee_sorted_map_tests_sub_map_tests_test_lower_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] higher", _gee_sorted_map_tests_sub_map_tests_test_higher_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] floor", _gee_sorted_map_tests_sub_map_tests_test_floor_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] ceil", _gee_sorted_map_tests_sub_map_tests_test_ceil_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] iterator_at", _gee_sorted_map_tests_sub_map_tests_test_iterator_at_gee_test_case_test_method, g_object_ref (self), g_object_unref); + gee_test_case_add_test ((GeeTestCase*) self, "[SortedMap] submap and subsets", _gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets_gee_test_case_test_method, g_object_ref (self), g_object_unref); + return self; +} + + +GeeSortedMapTestsSubMapTests* gee_sorted_map_tests_sub_map_tests_new (GeeSortedMapTests* test, GeeSortedMapTestsSubMapTestsType type) { + return gee_sorted_map_tests_sub_map_tests_construct (GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, test, type); +} + + +static void gee_sorted_map_tests_sub_map_tests_real_set_up (GeeTestCase* base) { + GeeSortedMapTestsSubMapTests * self; + GeeSortedMapTests* _tmp0_; + GeeSortedMapTests* _tmp1_; + GeeMap* _tmp2_; + GeeSortedMap* _tmp3_; + GeeSortedMapTestsSubMapTestsType _tmp4_; + self = (GeeSortedMapTestsSubMapTests*) base; + _tmp0_ = self->priv->test; + gee_test_case_set_up ((GeeTestCase*) _tmp0_); + _tmp1_ = self->priv->test; + _tmp2_ = ((MapTests*) _tmp1_)->test_map; + _tmp3_ = _g_object_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp2_, GEE_TYPE_SORTED_MAP) ? ((GeeSortedMap*) _tmp2_) : NULL); + _g_object_unref0 (self->priv->master); + self->priv->master = _tmp3_; + _tmp4_ = self->priv->type; + switch (_tmp4_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedMap* _tmp5_; + GeeSortedMap* _tmp6_ = NULL; + _tmp5_ = self->priv->master; + _tmp6_ = gee_sorted_map_head_map (_tmp5_, "one"); + _g_object_unref0 (self->priv->submap); + self->priv->submap = _tmp6_; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedMap* _tmp7_; + GeeSortedMap* _tmp8_ = NULL; + _tmp7_ = self->priv->master; + _tmp8_ = gee_sorted_map_tail_map (_tmp7_, "six"); + _g_object_unref0 (self->priv->submap); + self->priv->submap = _tmp8_; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedMap* _tmp9_; + GeeSortedMap* _tmp10_ = NULL; + _tmp9_ = self->priv->master; + _tmp10_ = gee_sorted_map_sub_map (_tmp9_, "four", "three"); + _g_object_unref0 (self->priv->submap); + self->priv->submap = _tmp10_; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedMap* _tmp11_; + GeeSortedMap* _tmp12_ = NULL; + _tmp11_ = self->priv->master; + _tmp12_ = gee_sorted_map_sub_map (_tmp11_, "three", "four"); + _g_object_unref0 (self->priv->submap); + self->priv->submap = _tmp12_; + break; + } + default: + { + g_assert_not_reached (); + } + } +} + + +static void gee_sorted_map_tests_sub_map_tests_real_tear_down (GeeTestCase* base) { + GeeSortedMapTestsSubMapTests * self; + GeeSortedMapTests* _tmp0_; + self = (GeeSortedMapTestsSubMapTests*) base; + _tmp0_ = self->priv->test; + gee_test_case_tear_down ((GeeTestCase*) _tmp0_); +} + + +void gee_sorted_map_tests_sub_map_tests_set_default_values (GeeSortedMapTestsSubMapTests* self, gchar*** contains, int* contains_length1, gchar*** not_contains, int* not_contains_length1) { + gchar** _vala_contains = NULL; + int _vala_contains_length1 = 0; + gchar** _vala_not_contains = NULL; + int _vala_not_contains_length1 = 0; + GeeSortedMap* _tmp0_; + GeeSortedMap* _tmp1_; + GeeSortedMap* _tmp2_; + GeeSortedMap* _tmp3_; + GeeSortedMap* _tmp4_; + GeeSortedMap* _tmp5_; + GeeSortedMapTestsSubMapTestsType _tmp6_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp0_, "one", "one"); + _tmp1_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp1_, "two", "two"); + _tmp2_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp2_, "three", "three"); + _tmp3_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp3_, "four", "four"); + _tmp4_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp4_, "five", "five"); + _tmp5_ = self->priv->master; + gee_map_set ((GeeMap*) _tmp5_, "six", "six"); + _tmp6_ = self->priv->type; + switch (_tmp6_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + gchar* _tmp7_; + gchar* _tmp8_; + gchar** _tmp9_ = NULL; + gchar* _tmp10_; + gchar* _tmp11_; + gchar* _tmp12_; + gchar* _tmp13_; + gchar** _tmp14_ = NULL; + _tmp7_ = g_strdup ("five"); + _tmp8_ = g_strdup ("four"); + _tmp9_ = g_new0 (gchar*, 2 + 1); + _tmp9_[0] = _tmp7_; + _tmp9_[1] = _tmp8_; + _vala_contains = (_vala_array_free (_vala_contains, _vala_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_contains = _tmp9_; + _vala_contains_length1 = 2; + _tmp10_ = g_strdup ("one"); + _tmp11_ = g_strdup ("two"); + _tmp12_ = g_strdup ("three"); + _tmp13_ = g_strdup ("six"); + _tmp14_ = g_new0 (gchar*, 4 + 1); + _tmp14_[0] = _tmp10_; + _tmp14_[1] = _tmp11_; + _tmp14_[2] = _tmp12_; + _tmp14_[3] = _tmp13_; + _vala_not_contains = (_vala_array_free (_vala_not_contains, _vala_not_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_not_contains = _tmp14_; + _vala_not_contains_length1 = 4; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + gchar* _tmp15_; + gchar* _tmp16_; + gchar* _tmp17_; + gchar** _tmp18_ = NULL; + gchar* _tmp19_; + gchar* _tmp20_; + gchar* _tmp21_; + gchar** _tmp22_ = NULL; + _tmp15_ = g_strdup ("six"); + _tmp16_ = g_strdup ("three"); + _tmp17_ = g_strdup ("two"); + _tmp18_ = g_new0 (gchar*, 3 + 1); + _tmp18_[0] = _tmp15_; + _tmp18_[1] = _tmp16_; + _tmp18_[2] = _tmp17_; + _vala_contains = (_vala_array_free (_vala_contains, _vala_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_contains = _tmp18_; + _vala_contains_length1 = 3; + _tmp19_ = g_strdup ("one"); + _tmp20_ = g_strdup ("four"); + _tmp21_ = g_strdup ("five"); + _tmp22_ = g_new0 (gchar*, 3 + 1); + _tmp22_[0] = _tmp19_; + _tmp22_[1] = _tmp20_; + _tmp22_[2] = _tmp21_; + _vala_not_contains = (_vala_array_free (_vala_not_contains, _vala_not_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_not_contains = _tmp22_; + _vala_not_contains_length1 = 3; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + gchar* _tmp23_; + gchar* _tmp24_; + gchar* _tmp25_; + gchar** _tmp26_ = NULL; + gchar* _tmp27_; + gchar* _tmp28_; + gchar* _tmp29_; + gchar** _tmp30_ = NULL; + _tmp23_ = g_strdup ("four"); + _tmp24_ = g_strdup ("one"); + _tmp25_ = g_strdup ("six"); + _tmp26_ = g_new0 (gchar*, 3 + 1); + _tmp26_[0] = _tmp23_; + _tmp26_[1] = _tmp24_; + _tmp26_[2] = _tmp25_; + _vala_contains = (_vala_array_free (_vala_contains, _vala_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_contains = _tmp26_; + _vala_contains_length1 = 3; + _tmp27_ = g_strdup ("two"); + _tmp28_ = g_strdup ("three"); + _tmp29_ = g_strdup ("five"); + _tmp30_ = g_new0 (gchar*, 3 + 1); + _tmp30_[0] = _tmp27_; + _tmp30_[1] = _tmp28_; + _tmp30_[2] = _tmp29_; + _vala_not_contains = (_vala_array_free (_vala_not_contains, _vala_not_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_not_contains = _tmp30_; + _vala_not_contains_length1 = 3; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + gchar** _tmp31_ = NULL; + gchar* _tmp32_; + gchar* _tmp33_; + gchar* _tmp34_; + gchar* _tmp35_; + gchar* _tmp36_; + gchar* _tmp37_; + gchar** _tmp38_ = NULL; + _tmp31_ = g_new0 (gchar*, 0 + 1); + _vala_contains = (_vala_array_free (_vala_contains, _vala_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_contains = _tmp31_; + _vala_contains_length1 = 0; + _tmp32_ = g_strdup ("one"); + _tmp33_ = g_strdup ("two"); + _tmp34_ = g_strdup ("three"); + _tmp35_ = g_strdup ("four"); + _tmp36_ = g_strdup ("five"); + _tmp37_ = g_strdup ("six"); + _tmp38_ = g_new0 (gchar*, 6 + 1); + _tmp38_[0] = _tmp32_; + _tmp38_[1] = _tmp33_; + _tmp38_[2] = _tmp34_; + _tmp38_[3] = _tmp35_; + _tmp38_[4] = _tmp36_; + _tmp38_[5] = _tmp37_; + _vala_not_contains = (_vala_array_free (_vala_not_contains, _vala_not_contains_length1, (GDestroyNotify) g_free), NULL); + _vala_not_contains = _tmp38_; + _vala_not_contains_length1 = 6; + break; + } + default: + { + g_assert_not_reached (); + } + } + if (contains) { + *contains = _vala_contains; + } else { + _vala_contains = (_vala_array_free (_vala_contains, _vala_contains_length1, (GDestroyNotify) g_free), NULL); + } + if (contains_length1) { + *contains_length1 = _vala_contains_length1; + } + if (not_contains) { + *not_contains = _vala_not_contains; + } else { + _vala_not_contains = (_vala_array_free (_vala_not_contains, _vala_not_contains_length1, (GDestroyNotify) g_free), NULL); + } + if (not_contains_length1) { + *not_contains_length1 = _vala_not_contains_length1; + } +} + + +void gee_sorted_map_tests_sub_map_tests_test_has_key_size_is_empty (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint _tmp3_ = 0; + GeeSortedMap* _tmp4_; + gint _tmp5_; + gint _tmp6_; + gchar** _tmp7_; + gint _tmp7__length1; + GeeSortedMap* _tmp8_; + gboolean _tmp9_; + gboolean _tmp10_; + gchar** _tmp11_; + gint _tmp11__length1; + gchar** _tmp12_; + gint _tmp12__length1; + gchar** _tmp21_; + gint _tmp21__length1; + g_return_if_fail (self != NULL); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp0_, &_tmp1_, &_tmp2_, &_tmp3_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp0_; + contains_length1 = _tmp1_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp2_; + not_contains_length1 = _tmp3_; + _not_contains_size_ = not_contains_length1; + _tmp4_ = self->priv->submap; + _tmp5_ = gee_map_get_size ((GeeMap*) _tmp4_); + _tmp6_ = _tmp5_; + _tmp7_ = contains; + _tmp7__length1 = contains_length1; + _vala_assert (_tmp6_ == _tmp7__length1, "submap.size == contains.length"); + _tmp8_ = self->priv->submap; + _tmp9_ = gee_map_get_is_empty ((GeeMap*) _tmp8_); + _tmp10_ = _tmp9_; + _tmp11_ = contains; + _tmp11__length1 = contains_length1; + _vala_assert (_tmp10_ == (_tmp11__length1 == 0), "submap.is_empty == (contains.length == 0)"); + _tmp12_ = contains; + _tmp12__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp12_; + s_collection_length1 = _tmp12__length1; + for (s_it = 0; s_it < _tmp12__length1; s_it = s_it + 1) { + gchar* _tmp13_; + gchar* s = NULL; + _tmp13_ = g_strdup (s_collection[s_it]); + s = _tmp13_; + { + GeeSortedMap* _tmp14_; + const gchar* _tmp15_; + gboolean _tmp16_ = FALSE; + GeeSortedMap* _tmp17_; + const gchar* _tmp18_; + const gchar* _tmp19_; + gboolean _tmp20_ = FALSE; + _tmp14_ = self->priv->submap; + _tmp15_ = s; + _tmp16_ = gee_map_has_key ((GeeMap*) _tmp14_, _tmp15_); + _vala_assert (_tmp16_, "submap.has_key (s)"); + _tmp17_ = self->priv->submap; + _tmp18_ = s; + _tmp19_ = s; + _tmp20_ = gee_map_has ((GeeMap*) _tmp17_, _tmp18_, _tmp19_); + _vala_assert (_tmp20_, "submap.has (s, s)"); + _g_free0 (s); + } + } + } + _tmp21_ = not_contains; + _tmp21__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp21_; + s_collection_length1 = _tmp21__length1; + for (s_it = 0; s_it < _tmp21__length1; s_it = s_it + 1) { + gchar* _tmp22_; + gchar* s = NULL; + _tmp22_ = g_strdup (s_collection[s_it]); + s = _tmp22_; + { + GeeSortedMap* _tmp23_; + const gchar* _tmp24_; + gboolean _tmp25_ = FALSE; + GeeSortedMap* _tmp26_; + const gchar* _tmp27_; + const gchar* _tmp28_; + gboolean _tmp29_ = FALSE; + _tmp23_ = self->priv->submap; + _tmp24_ = s; + _tmp25_ = gee_map_has_key ((GeeMap*) _tmp23_, _tmp24_); + _vala_assert (!_tmp25_, "!submap.has_key (s)"); + _tmp26_ = self->priv->submap; + _tmp27_ = s; + _tmp28_ = s; + _tmp29_ = gee_map_has ((GeeMap*) _tmp26_, _tmp27_, _tmp28_); + _vala_assert (!_tmp29_, "!submap.has (s, s)"); + _g_free0 (s); + } + } + } + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_get (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint _tmp3_ = 0; + gchar** _tmp4_; + gint _tmp4__length1; + g_return_if_fail (self != NULL); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp0_, &_tmp1_, &_tmp2_, &_tmp3_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp0_; + contains_length1 = _tmp1_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp2_; + not_contains_length1 = _tmp3_; + _not_contains_size_ = not_contains_length1; + _tmp4_ = contains; + _tmp4__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp4_; + s_collection_length1 = _tmp4__length1; + for (s_it = 0; s_it < _tmp4__length1; s_it = s_it + 1) { + gchar* _tmp5_; + gchar* s = NULL; + _tmp5_ = g_strdup (s_collection[s_it]); + s = _tmp5_; + { + GeeSortedMap* _tmp6_; + const gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gchar* _tmp9_; + const gchar* _tmp10_; + _tmp6_ = self->priv->submap; + _tmp7_ = s; + _tmp8_ = gee_map_get ((GeeMap*) _tmp6_, _tmp7_); + _tmp9_ = (gchar*) _tmp8_; + _tmp10_ = s; + _vala_assert (g_strcmp0 (_tmp9_, _tmp10_) == 0, "submap.get (s) == s"); + _g_free0 (_tmp9_); + _g_free0 (s); + } + } + } + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_keys (GeeSortedMapTestsSubMapTests* self) { + GeeSortedMap* _tmp0_; + GeeSet* _tmp1_; + GeeSet* _tmp2_; + GeeSet* keys; + GeeSet* _tmp3_; + gint _tmp4_; + gint _tmp5_; + GeeSet* _tmp6_; + gboolean _tmp7_; + gboolean _tmp8_; + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp9_ = NULL; + gint _tmp10_ = 0; + gchar** _tmp11_ = NULL; + gint _tmp12_ = 0; + GeeSet* _tmp13_; + gint _tmp14_; + gint _tmp15_; + gchar** _tmp16_; + gint _tmp16__length1; + gchar** _tmp17_; + gint _tmp17__length1; + gchar** _tmp22_; + gint _tmp22__length1; + gboolean _tmp27_ = FALSE; + gboolean _tmp29_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_map_get_keys ((GeeMap*) _tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = keys; + _tmp4_ = gee_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _vala_assert (_tmp5_ == 0, "keys.size == 0"); + _tmp6_ = keys; + _tmp7_ = gee_collection_get_is_empty ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _vala_assert (_tmp8_, "keys.is_empty"); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp9_, &_tmp10_, &_tmp11_, &_tmp12_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp9_; + contains_length1 = _tmp10_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp11_; + not_contains_length1 = _tmp12_; + _not_contains_size_ = not_contains_length1; + _tmp13_ = keys; + _tmp14_ = gee_collection_get_size ((GeeCollection*) _tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = contains; + _tmp16__length1 = contains_length1; + _vala_assert (_tmp15_ == _tmp16__length1, "keys.size == contains.length"); + _tmp17_ = contains; + _tmp17__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp17_; + s_collection_length1 = _tmp17__length1; + for (s_it = 0; s_it < _tmp17__length1; s_it = s_it + 1) { + gchar* _tmp18_; + gchar* s = NULL; + _tmp18_ = g_strdup (s_collection[s_it]); + s = _tmp18_; + { + GeeSet* _tmp19_; + const gchar* _tmp20_; + gboolean _tmp21_ = FALSE; + _tmp19_ = keys; + _tmp20_ = s; + _tmp21_ = gee_collection_contains ((GeeCollection*) _tmp19_, _tmp20_); + _vala_assert (_tmp21_, "keys.contains (s)"); + _g_free0 (s); + } + } + } + _tmp22_ = not_contains; + _tmp22__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp22_; + s_collection_length1 = _tmp22__length1; + for (s_it = 0; s_it < _tmp22__length1; s_it = s_it + 1) { + gchar* _tmp23_; + gchar* s = NULL; + _tmp23_ = g_strdup (s_collection[s_it]); + s = _tmp23_; + { + GeeSet* _tmp24_; + const gchar* _tmp25_; + gboolean _tmp26_ = FALSE; + _tmp24_ = keys; + _tmp25_ = s; + _tmp26_ = gee_collection_contains ((GeeCollection*) _tmp24_, _tmp25_); + _vala_assert (!_tmp26_, "!keys.contains (s)"); + _g_free0 (s); + } + } + } + _tmp27_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp27_) { + GeeSet* _tmp28_; + _tmp28_ = keys; + gee_collection_add ((GeeCollection*) _tmp28_, "three"); + exit (0); + } + g_test_trap_assert_failed (); + _tmp29_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp29_) { + GeeSet* _tmp30_; + _tmp30_ = keys; + gee_collection_remove ((GeeCollection*) _tmp30_, "three"); + exit (0); + } + g_test_trap_assert_failed (); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + _g_object_unref0 (keys); +} + + +void gee_sorted_map_tests_sub_map_tests_test_values (GeeSortedMapTestsSubMapTests* self) { + GeeSortedMap* _tmp0_; + GeeCollection* _tmp1_; + GeeCollection* _tmp2_; + GeeCollection* values; + GeeCollection* _tmp3_; + gint _tmp4_; + gint _tmp5_; + GeeCollection* _tmp6_; + gboolean _tmp7_; + gboolean _tmp8_; + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp9_ = NULL; + gint _tmp10_ = 0; + gchar** _tmp11_ = NULL; + gint _tmp12_ = 0; + GeeCollection* _tmp13_; + gint _tmp14_; + gint _tmp15_; + gchar** _tmp16_; + gint _tmp16__length1; + gchar** _tmp17_; + gint _tmp17__length1; + gchar** _tmp22_; + gint _tmp22__length1; + gboolean _tmp27_ = FALSE; + gboolean _tmp29_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_map_get_values ((GeeMap*) _tmp0_); + _tmp2_ = _tmp1_; + values = _tmp2_; + _tmp3_ = values; + _tmp4_ = gee_collection_get_size (_tmp3_); + _tmp5_ = _tmp4_; + _vala_assert (_tmp5_ == 0, "values.size == 0"); + _tmp6_ = values; + _tmp7_ = gee_collection_get_is_empty (_tmp6_); + _tmp8_ = _tmp7_; + _vala_assert (_tmp8_, "values.is_empty"); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp9_, &_tmp10_, &_tmp11_, &_tmp12_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp9_; + contains_length1 = _tmp10_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp11_; + not_contains_length1 = _tmp12_; + _not_contains_size_ = not_contains_length1; + _tmp13_ = values; + _tmp14_ = gee_collection_get_size (_tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = contains; + _tmp16__length1 = contains_length1; + _vala_assert (_tmp15_ == _tmp16__length1, "values.size == contains.length"); + _tmp17_ = contains; + _tmp17__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp17_; + s_collection_length1 = _tmp17__length1; + for (s_it = 0; s_it < _tmp17__length1; s_it = s_it + 1) { + gchar* _tmp18_; + gchar* s = NULL; + _tmp18_ = g_strdup (s_collection[s_it]); + s = _tmp18_; + { + GeeCollection* _tmp19_; + const gchar* _tmp20_; + gboolean _tmp21_ = FALSE; + _tmp19_ = values; + _tmp20_ = s; + _tmp21_ = gee_collection_contains (_tmp19_, _tmp20_); + _vala_assert (_tmp21_, "values.contains (s)"); + _g_free0 (s); + } + } + } + _tmp22_ = not_contains; + _tmp22__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp22_; + s_collection_length1 = _tmp22__length1; + for (s_it = 0; s_it < _tmp22__length1; s_it = s_it + 1) { + gchar* _tmp23_; + gchar* s = NULL; + _tmp23_ = g_strdup (s_collection[s_it]); + s = _tmp23_; + { + GeeCollection* _tmp24_; + const gchar* _tmp25_; + gboolean _tmp26_ = FALSE; + _tmp24_ = values; + _tmp25_ = s; + _tmp26_ = gee_collection_contains (_tmp24_, _tmp25_); + _vala_assert (!_tmp26_, "!values.contains (s)"); + _g_free0 (s); + } + } + } + _tmp27_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp27_) { + GeeCollection* _tmp28_; + _tmp28_ = values; + gee_collection_add (_tmp28_, "three"); + exit (0); + } + g_test_trap_assert_failed (); + _tmp29_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp29_) { + GeeCollection* _tmp30_; + _tmp30_ = values; + gee_collection_remove (_tmp30_, "three"); + exit (0); + } + g_test_trap_assert_failed (); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + _g_object_unref0 (values); +} + + +void gee_sorted_map_tests_sub_map_tests_test_entries (GeeSortedMapTestsSubMapTests* self) { + GeeSortedMap* _tmp0_; + GeeSet* _tmp1_; + GeeSet* _tmp2_; + GeeSet* entries; + GeeSet* _tmp3_; + gint _tmp4_; + gint _tmp5_; + GeeSet* _tmp6_; + gboolean _tmp7_; + gboolean _tmp8_; + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp9_ = NULL; + gint _tmp10_ = 0; + gchar** _tmp11_ = NULL; + gint _tmp12_ = 0; + GeeSet* _tmp13_; + gint _tmp14_; + gint _tmp15_; + gchar** _tmp16_; + gint _tmp16__length1; + gchar** _tmp17_; + gint _tmp17__length1; + gchar** _tmp25_; + gint _tmp25__length1; + gboolean _tmp33_ = FALSE; + gboolean _tmp37_ = FALSE; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_map_get_entries ((GeeMap*) _tmp0_); + _tmp2_ = _tmp1_; + entries = _tmp2_; + _tmp3_ = entries; + _tmp4_ = gee_collection_get_size ((GeeCollection*) _tmp3_); + _tmp5_ = _tmp4_; + _vala_assert (_tmp5_ == 0, "entries.size == 0"); + _tmp6_ = entries; + _tmp7_ = gee_collection_get_is_empty ((GeeCollection*) _tmp6_); + _tmp8_ = _tmp7_; + _vala_assert (_tmp8_, "entries.is_empty"); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp9_, &_tmp10_, &_tmp11_, &_tmp12_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp9_; + contains_length1 = _tmp10_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp11_; + not_contains_length1 = _tmp12_; + _not_contains_size_ = not_contains_length1; + _tmp13_ = entries; + _tmp14_ = gee_collection_get_size ((GeeCollection*) _tmp13_); + _tmp15_ = _tmp14_; + _tmp16_ = contains; + _tmp16__length1 = contains_length1; + _vala_assert (_tmp15_ == _tmp16__length1, "entries.size == contains.length"); + _tmp17_ = contains; + _tmp17__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp17_; + s_collection_length1 = _tmp17__length1; + for (s_it = 0; s_it < _tmp17__length1; s_it = s_it + 1) { + gchar* _tmp18_; + gchar* s = NULL; + _tmp18_ = g_strdup (s_collection[s_it]); + s = _tmp18_; + { + GeeSet* _tmp19_; + const gchar* _tmp20_; + const gchar* _tmp21_; + GeeMapEntry* _tmp22_ = NULL; + GeeMapEntry* _tmp23_; + gboolean _tmp24_ = FALSE; + _tmp19_ = entries; + _tmp20_ = s; + _tmp21_ = s; + _tmp22_ = map_tests_entry_for (_tmp20_, _tmp21_); + _tmp23_ = _tmp22_; + _tmp24_ = gee_collection_contains ((GeeCollection*) _tmp19_, _tmp23_); + _vala_assert (_tmp24_, "entries.contains (MapTests.entry_for (s, s))"); + _g_object_unref0 (_tmp23_); + _g_free0 (s); + } + } + } + _tmp25_ = not_contains; + _tmp25__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp25_; + s_collection_length1 = _tmp25__length1; + for (s_it = 0; s_it < _tmp25__length1; s_it = s_it + 1) { + gchar* _tmp26_; + gchar* s = NULL; + _tmp26_ = g_strdup (s_collection[s_it]); + s = _tmp26_; + { + GeeSet* _tmp27_; + const gchar* _tmp28_; + const gchar* _tmp29_; + GeeMapEntry* _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + gboolean _tmp32_ = FALSE; + _tmp27_ = entries; + _tmp28_ = s; + _tmp29_ = s; + _tmp30_ = map_tests_entry_for (_tmp28_, _tmp29_); + _tmp31_ = _tmp30_; + _tmp32_ = gee_collection_contains ((GeeCollection*) _tmp27_, _tmp31_); + _vala_assert (!_tmp32_, "!entries.contains (MapTests.entry_for (s, s))"); + _g_object_unref0 (_tmp31_); + _g_free0 (s); + } + } + } + _tmp33_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp33_) { + GeeSet* _tmp34_; + GeeMapEntry* _tmp35_ = NULL; + GeeMapEntry* _tmp36_; + _tmp34_ = entries; + _tmp35_ = map_tests_entry_for ("three", "three"); + _tmp36_ = _tmp35_; + gee_collection_add ((GeeCollection*) _tmp34_, _tmp36_); + _g_object_unref0 (_tmp36_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp37_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp37_) { + GeeSet* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + _tmp38_ = entries; + _tmp39_ = map_tests_entry_for ("three", "three"); + _tmp40_ = _tmp39_; + gee_collection_remove ((GeeCollection*) _tmp38_, _tmp40_); + _g_object_unref0 (_tmp40_); + exit (0); + } + g_test_trap_assert_failed (); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + _g_object_unref0 (entries); +} + + +void gee_sorted_map_tests_sub_map_tests_test_set (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint _tmp3_ = 0; + gchar** success = NULL; + gint success_length1 = 0; + gint _success_size_ = 0; + gchar** fail = NULL; + gint fail_length1 = 0; + gint _fail_size_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp4_; + gchar** _tmp29_; + gint _tmp29__length1; + gchar** _tmp42_; + gint _tmp42__length1; + GeeSortedMap* _tmp53_; + gint _tmp54_; + gint _tmp55_; + gchar** _tmp56_; + gint _tmp56__length1; + g_return_if_fail (self != NULL); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp0_, &_tmp1_, &_tmp2_, &_tmp3_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp0_; + contains_length1 = _tmp1_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp2_; + not_contains_length1 = _tmp3_; + _not_contains_size_ = not_contains_length1; + _tmp4_ = self->priv->type; + switch (_tmp4_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + gchar* _tmp5_; + gchar* _tmp6_; + gchar** _tmp7_ = NULL; + gchar* _tmp8_; + gchar* _tmp9_; + gchar** _tmp10_ = NULL; + _tmp5_ = g_strdup ("a"); + _tmp6_ = g_strdup ("o"); + _tmp7_ = g_new0 (gchar*, 2 + 1); + _tmp7_[0] = _tmp5_; + _tmp7_[1] = _tmp6_; + success = (_vala_array_free (success, success_length1, (GDestroyNotify) g_free), NULL); + success = _tmp7_; + success_length1 = 2; + _success_size_ = success_length1; + _tmp8_ = g_strdup ("oz"); + _tmp9_ = g_strdup ("z"); + _tmp10_ = g_new0 (gchar*, 2 + 1); + _tmp10_[0] = _tmp8_; + _tmp10_[1] = _tmp9_; + fail = (_vala_array_free (fail, fail_length1, (GDestroyNotify) g_free), NULL); + fail = _tmp10_; + fail_length1 = 2; + _fail_size_ = fail_length1; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + gchar* _tmp11_; + gchar* _tmp12_; + gchar** _tmp13_ = NULL; + gchar* _tmp14_; + gchar* _tmp15_; + gchar** _tmp16_ = NULL; + _tmp11_ = g_strdup ("siz"); + _tmp12_ = g_strdup ("z"); + _tmp13_ = g_new0 (gchar*, 2 + 1); + _tmp13_[0] = _tmp11_; + _tmp13_[1] = _tmp12_; + success = (_vala_array_free (success, success_length1, (GDestroyNotify) g_free), NULL); + success = _tmp13_; + success_length1 = 2; + _success_size_ = success_length1; + _tmp14_ = g_strdup ("sia"); + _tmp15_ = g_strdup ("a"); + _tmp16_ = g_new0 (gchar*, 2 + 1); + _tmp16_[0] = _tmp14_; + _tmp16_[1] = _tmp15_; + fail = (_vala_array_free (fail, fail_length1, (GDestroyNotify) g_free), NULL); + fail = _tmp16_; + fail_length1 = 2; + _fail_size_ = fail_length1; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + gchar* _tmp17_; + gchar* _tmp18_; + gchar** _tmp19_ = NULL; + gchar* _tmp20_; + gchar* _tmp21_; + gchar** _tmp22_ = NULL; + _tmp17_ = g_strdup ("o"); + _tmp18_ = g_strdup ("th"); + _tmp19_ = g_new0 (gchar*, 2 + 1); + _tmp19_[0] = _tmp17_; + _tmp19_[1] = _tmp18_; + success = (_vala_array_free (success, success_length1, (GDestroyNotify) g_free), NULL); + success = _tmp19_; + success_length1 = 2; + _success_size_ = success_length1; + _tmp20_ = g_strdup ("f"); + _tmp21_ = g_strdup ("u"); + _tmp22_ = g_new0 (gchar*, 2 + 1); + _tmp22_[0] = _tmp20_; + _tmp22_[1] = _tmp21_; + fail = (_vala_array_free (fail, fail_length1, (GDestroyNotify) g_free), NULL); + fail = _tmp22_; + fail_length1 = 2; + _fail_size_ = fail_length1; + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + gchar** _tmp23_ = NULL; + gchar* _tmp24_; + gchar* _tmp25_; + gchar* _tmp26_; + gchar* _tmp27_; + gchar** _tmp28_ = NULL; + _tmp23_ = g_new0 (gchar*, 0 + 1); + success = (_vala_array_free (success, success_length1, (GDestroyNotify) g_free), NULL); + success = _tmp23_; + success_length1 = 0; + _success_size_ = success_length1; + _tmp24_ = g_strdup ("o"); + _tmp25_ = g_strdup ("th"); + _tmp26_ = g_strdup ("f"); + _tmp27_ = g_strdup ("u"); + _tmp28_ = g_new0 (gchar*, 4 + 1); + _tmp28_[0] = _tmp24_; + _tmp28_[1] = _tmp25_; + _tmp28_[2] = _tmp26_; + _tmp28_[3] = _tmp27_; + fail = (_vala_array_free (fail, fail_length1, (GDestroyNotify) g_free), NULL); + fail = _tmp28_; + fail_length1 = 4; + _fail_size_ = fail_length1; + break; + } + default: + { + g_assert_not_reached (); + } + } + _tmp29_ = success; + _tmp29__length1 = success_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp29_; + s_collection_length1 = _tmp29__length1; + for (s_it = 0; s_it < _tmp29__length1; s_it = s_it + 1) { + gchar* _tmp30_; + gchar* s = NULL; + _tmp30_ = g_strdup (s_collection[s_it]); + s = _tmp30_; + { + GeeSortedMap* _tmp31_; + const gchar* _tmp32_; + const gchar* _tmp33_; + GeeSortedMap* _tmp34_; + const gchar* _tmp35_; + const gchar* _tmp36_; + gboolean _tmp37_ = FALSE; + GeeSortedMap* _tmp38_; + const gchar* _tmp39_; + const gchar* _tmp40_; + gboolean _tmp41_ = FALSE; + _tmp31_ = self->priv->submap; + _tmp32_ = s; + _tmp33_ = s; + gee_map_set ((GeeMap*) _tmp31_, _tmp32_, _tmp33_); + _tmp34_ = self->priv->submap; + _tmp35_ = s; + _tmp36_ = s; + _tmp37_ = gee_map_has ((GeeMap*) _tmp34_, _tmp35_, _tmp36_); + _vala_assert (_tmp37_, "submap.has (s, s)"); + _tmp38_ = self->priv->master; + _tmp39_ = s; + _tmp40_ = s; + _tmp41_ = gee_map_has ((GeeMap*) _tmp38_, _tmp39_, _tmp40_); + _vala_assert (_tmp41_, "master.has (s, s)"); + _g_free0 (s); + } + } + } + _tmp42_ = fail; + _tmp42__length1 = fail_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp42_; + s_collection_length1 = _tmp42__length1; + for (s_it = 0; s_it < _tmp42__length1; s_it = s_it + 1) { + gchar* _tmp43_; + gchar* s = NULL; + _tmp43_ = g_strdup (s_collection[s_it]); + s = _tmp43_; + { + GeeSortedMap* _tmp44_; + const gchar* _tmp45_; + const gchar* _tmp46_; + GeeSortedMap* _tmp47_; + const gchar* _tmp48_; + gboolean _tmp49_ = FALSE; + GeeSortedMap* _tmp50_; + const gchar* _tmp51_; + gboolean _tmp52_ = FALSE; + _tmp44_ = self->priv->submap; + _tmp45_ = s; + _tmp46_ = s; + gee_map_set ((GeeMap*) _tmp44_, _tmp45_, _tmp46_); + _tmp47_ = self->priv->submap; + _tmp48_ = s; + _tmp49_ = gee_map_has_key ((GeeMap*) _tmp47_, _tmp48_); + _vala_assert (!_tmp49_, "!submap.has_key (s)"); + _tmp50_ = self->priv->master; + _tmp51_ = s; + _tmp52_ = gee_map_has_key ((GeeMap*) _tmp50_, _tmp51_); + _vala_assert (!_tmp52_, "!master.has_key (s)"); + _g_free0 (s); + } + } + } + _tmp53_ = self->priv->master; + _tmp54_ = gee_map_get_size ((GeeMap*) _tmp53_); + _tmp55_ = _tmp54_; + _tmp56_ = success; + _tmp56__length1 = success_length1; + _vala_assert (_tmp55_ == (6 + _tmp56__length1), "master.size == 6 + success.length"); + fail = (_vala_array_free (fail, fail_length1, (GDestroyNotify) g_free), NULL); + success = (_vala_array_free (success, success_length1, (GDestroyNotify) g_free), NULL); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_unset (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint _tmp3_ = 0; + gchar** _tmp4_; + gint _tmp4__length1; + gchar** _tmp15_; + gint _tmp15__length1; + GeeSortedMap* _tmp24_; + gint _tmp25_; + gint _tmp26_; + gchar** _tmp27_; + gint _tmp27__length1; + g_return_if_fail (self != NULL); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp0_, &_tmp1_, &_tmp2_, &_tmp3_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp0_; + contains_length1 = _tmp1_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp2_; + not_contains_length1 = _tmp3_; + _not_contains_size_ = not_contains_length1; + _tmp4_ = contains; + _tmp4__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp4_; + s_collection_length1 = _tmp4__length1; + for (s_it = 0; s_it < _tmp4__length1; s_it = s_it + 1) { + gchar* _tmp5_; + gchar* s = NULL; + _tmp5_ = g_strdup (s_collection[s_it]); + s = _tmp5_; + { + gchar* value = NULL; + GeeSortedMap* _tmp6_; + const gchar* _tmp7_; + gpointer _tmp8_ = NULL; + gboolean _tmp9_ = FALSE; + const gchar* _tmp10_; + const gchar* _tmp11_; + GeeSortedMap* _tmp12_; + const gchar* _tmp13_; + gboolean _tmp14_ = FALSE; + _tmp6_ = self->priv->submap; + _tmp7_ = s; + _tmp9_ = gee_map_unset ((GeeMap*) _tmp6_, _tmp7_, &_tmp8_); + _g_free0 (value); + value = _tmp8_; + _vala_assert (_tmp9_, "submap.unset (s, out value)"); + _tmp10_ = value; + _tmp11_ = s; + _vala_assert (g_strcmp0 (_tmp10_, _tmp11_) == 0, "value == s"); + _tmp12_ = self->priv->master; + _tmp13_ = s; + _tmp14_ = gee_map_has_key ((GeeMap*) _tmp12_, _tmp13_); + _vala_assert (!_tmp14_, "!master.has_key (s)"); + _g_free0 (value); + _g_free0 (s); + } + } + } + _tmp15_ = not_contains; + _tmp15__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp15_; + s_collection_length1 = _tmp15__length1; + for (s_it = 0; s_it < _tmp15__length1; s_it = s_it + 1) { + gchar* _tmp16_; + gchar* s = NULL; + _tmp16_ = g_strdup (s_collection[s_it]); + s = _tmp16_; + { + GeeSortedMap* _tmp17_; + const gchar* _tmp18_; + gboolean _tmp19_ = FALSE; + GeeSortedMap* _tmp20_; + const gchar* _tmp21_; + const gchar* _tmp22_; + gboolean _tmp23_ = FALSE; + _tmp17_ = self->priv->submap; + _tmp18_ = s; + _tmp19_ = gee_map_unset ((GeeMap*) _tmp17_, _tmp18_, NULL); + _vala_assert (!_tmp19_, "!submap.unset (s)"); + _tmp20_ = self->priv->master; + _tmp21_ = s; + _tmp22_ = s; + _tmp23_ = gee_map_has ((GeeMap*) _tmp20_, _tmp21_, _tmp22_); + _vala_assert (_tmp23_, "master.has (s, s)"); + _g_free0 (s); + } + } + } + _tmp24_ = self->priv->master; + _tmp25_ = gee_map_get_size ((GeeMap*) _tmp24_); + _tmp26_ = _tmp25_; + _tmp27_ = contains; + _tmp27__length1 = contains_length1; + _vala_assert (_tmp26_ == (6 - _tmp27__length1), "master.size == 6 - contains.length"); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_clear (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp0_ = NULL; + gint _tmp1_ = 0; + gchar** _tmp2_ = NULL; + gint _tmp3_ = 0; + GeeSortedMap* _tmp4_; + gchar** _tmp5_; + gint _tmp5__length1; + gchar** _tmp10_; + gint _tmp10__length1; + GeeSortedMap* _tmp19_; + gint _tmp20_; + gint _tmp21_; + gchar** _tmp22_; + gint _tmp22__length1; + g_return_if_fail (self != NULL); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp0_, &_tmp1_, &_tmp2_, &_tmp3_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp0_; + contains_length1 = _tmp1_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp2_; + not_contains_length1 = _tmp3_; + _not_contains_size_ = not_contains_length1; + _tmp4_ = self->priv->submap; + gee_map_clear ((GeeMap*) _tmp4_); + _tmp5_ = contains; + _tmp5__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp5_; + s_collection_length1 = _tmp5__length1; + for (s_it = 0; s_it < _tmp5__length1; s_it = s_it + 1) { + gchar* _tmp6_; + gchar* s = NULL; + _tmp6_ = g_strdup (s_collection[s_it]); + s = _tmp6_; + { + GeeSortedMap* _tmp7_; + const gchar* _tmp8_; + gboolean _tmp9_ = FALSE; + _tmp7_ = self->priv->master; + _tmp8_ = s; + _tmp9_ = gee_map_has_key ((GeeMap*) _tmp7_, _tmp8_); + _vala_assert (!_tmp9_, "!master.has_key (s)"); + _g_free0 (s); + } + } + } + _tmp10_ = not_contains; + _tmp10__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp10_; + s_collection_length1 = _tmp10__length1; + for (s_it = 0; s_it < _tmp10__length1; s_it = s_it + 1) { + gchar* _tmp11_; + gchar* s = NULL; + _tmp11_ = g_strdup (s_collection[s_it]); + s = _tmp11_; + { + GeeSortedMap* _tmp12_; + const gchar* _tmp13_; + gboolean _tmp14_ = FALSE; + GeeSortedMap* _tmp15_; + const gchar* _tmp16_; + const gchar* _tmp17_; + gboolean _tmp18_ = FALSE; + _tmp12_ = self->priv->submap; + _tmp13_ = s; + _tmp14_ = gee_map_unset ((GeeMap*) _tmp12_, _tmp13_, NULL); + _vala_assert (!_tmp14_, "!submap.unset (s)"); + _tmp15_ = self->priv->master; + _tmp16_ = s; + _tmp17_ = s; + _tmp18_ = gee_map_has ((GeeMap*) _tmp15_, _tmp16_, _tmp17_); + _vala_assert (_tmp18_, "master.has (s, s)"); + _g_free0 (s); + } + } + } + _tmp19_ = self->priv->master; + _tmp20_ = gee_map_get_size ((GeeMap*) _tmp19_); + _tmp21_ = _tmp20_; + _tmp22_ = contains; + _tmp22__length1 = contains_length1; + _vala_assert (_tmp21_ == (6 - _tmp22__length1), "master.size == 6 - contains.length"); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_iterators (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeMapIterator* _tmp1_ = NULL; + GeeMapIterator* _map_iter; + GeeMapIterator* _tmp2_; + gboolean _tmp3_ = FALSE; + GeeMapIterator* _tmp4_; + gboolean _tmp5_ = FALSE; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + gint i; + GeeSortedMap* _tmp10_; + GeeMapIterator* _tmp11_ = NULL; + gint _tmp27_; + gchar** _tmp28_; + gint _tmp28__length1; + gint _tmp43_; + gchar** _tmp44_; + gint _tmp44__length1; + gint _tmp63_; + gchar** _tmp64_; + gint _tmp64__length1; + GeeSortedMapTestsSubMapTestsType _tmp65_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_map_map_iterator ((GeeMap*) _tmp0_); + _map_iter = _tmp1_; + _tmp2_ = _map_iter; + _tmp3_ = gee_map_iterator_has_next (_tmp2_); + _vala_assert (!_tmp3_, "!_map_iter.has_next ()"); + _tmp4_ = _map_iter; + _tmp5_ = gee_map_iterator_next (_tmp4_); + _vala_assert (!_tmp5_, "!_map_iter.next ()"); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + i = 0; + _tmp10_ = self->priv->submap; + _tmp11_ = gee_map_map_iterator ((GeeMap*) _tmp10_); + _g_object_unref0 (_map_iter); + _map_iter = _tmp11_; + while (TRUE) { + GeeMapIterator* _tmp12_; + gboolean _tmp13_ = FALSE; + GeeMapIterator* _tmp14_; + gpointer _tmp15_ = NULL; + gchar* _tmp16_; + gchar** _tmp17_; + gint _tmp17__length1; + gint _tmp18_; + const gchar* _tmp19_; + GeeMapIterator* _tmp20_; + gpointer _tmp21_ = NULL; + gchar* _tmp22_; + gchar** _tmp23_; + gint _tmp23__length1; + gint _tmp24_; + const gchar* _tmp25_; + gint _tmp26_; + _tmp12_ = _map_iter; + _tmp13_ = gee_map_iterator_next (_tmp12_); + if (!_tmp13_) { + break; + } + _tmp14_ = _map_iter; + _tmp15_ = gee_map_iterator_get_key (_tmp14_); + _tmp16_ = (gchar*) _tmp15_; + _tmp17_ = contains; + _tmp17__length1 = contains_length1; + _tmp18_ = i; + _tmp19_ = _tmp17_[_tmp18_]; + _vala_assert (g_strcmp0 (_tmp16_, _tmp19_) == 0, "_map_iter.get_key () == contains[i]"); + _g_free0 (_tmp16_); + _tmp20_ = _map_iter; + _tmp21_ = gee_map_iterator_get_value (_tmp20_); + _tmp22_ = (gchar*) _tmp21_; + _tmp23_ = contains; + _tmp23__length1 = contains_length1; + _tmp24_ = i; + _tmp25_ = _tmp23_[_tmp24_]; + _vala_assert (g_strcmp0 (_tmp22_, _tmp25_) == 0, "_map_iter.get_value () == contains[i]"); + _g_free0 (_tmp22_); + _tmp26_ = i; + i = _tmp26_ + 1; + } + _tmp27_ = i; + _tmp28_ = contains; + _tmp28__length1 = contains_length1; + _vala_assert (_tmp27_ == _tmp28__length1, "i == contains.length"); + i = 0; + { + GeeSortedMap* _tmp29_; + GeeSet* _tmp30_; + GeeSet* _tmp31_; + GeeSet* _tmp32_; + GeeIterator* _tmp33_ = NULL; + GeeIterator* _tmp34_; + GeeIterator* _k_it; + _tmp29_ = self->priv->submap; + _tmp30_ = gee_map_get_keys ((GeeMap*) _tmp29_); + _tmp31_ = _tmp30_; + _tmp32_ = _tmp31_; + _tmp33_ = gee_iterable_iterator ((GeeIterable*) _tmp32_); + _tmp34_ = _tmp33_; + _g_object_unref0 (_tmp32_); + _k_it = _tmp34_; + while (TRUE) { + GeeIterator* _tmp35_; + gboolean _tmp36_ = FALSE; + GeeIterator* _tmp37_; + gpointer _tmp38_ = NULL; + gchar* k; + const gchar* _tmp39_; + gchar** _tmp40_; + gint _tmp40__length1; + gint _tmp41_; + const gchar* _tmp42_; + _tmp35_ = _k_it; + _tmp36_ = gee_iterator_next (_tmp35_); + if (!_tmp36_) { + break; + } + _tmp37_ = _k_it; + _tmp38_ = gee_iterator_get (_tmp37_); + k = (gchar*) _tmp38_; + _tmp39_ = k; + _tmp40_ = contains; + _tmp40__length1 = contains_length1; + _tmp41_ = i; + i = _tmp41_ + 1; + _tmp42_ = _tmp40_[_tmp41_]; + _vala_assert (g_strcmp0 (_tmp39_, _tmp42_) == 0, "k == contains[i++]"); + _g_free0 (k); + } + _g_object_unref0 (_k_it); + } + _tmp43_ = i; + _tmp44_ = contains; + _tmp44__length1 = contains_length1; + _vala_assert (_tmp43_ == _tmp44__length1, "i == contains.length"); + i = 0; + { + GeeSortedMap* _tmp45_; + GeeSet* _tmp46_; + GeeSet* _tmp47_; + GeeSet* _tmp48_; + GeeIterator* _tmp49_ = NULL; + GeeIterator* _tmp50_; + GeeIterator* _e_it; + _tmp45_ = self->priv->submap; + _tmp46_ = gee_map_get_entries ((GeeMap*) _tmp45_); + _tmp47_ = _tmp46_; + _tmp48_ = _tmp47_; + _tmp49_ = gee_iterable_iterator ((GeeIterable*) _tmp48_); + _tmp50_ = _tmp49_; + _g_object_unref0 (_tmp48_); + _e_it = _tmp50_; + while (TRUE) { + GeeIterator* _tmp51_; + gboolean _tmp52_ = FALSE; + GeeIterator* _tmp53_; + gpointer _tmp54_ = NULL; + GeeMapEntry* e; + GeeMapEntry* _tmp55_; + gchar** _tmp56_; + gint _tmp56__length1; + gint _tmp57_; + const gchar* _tmp58_; + gchar** _tmp59_; + gint _tmp59__length1; + gint _tmp60_; + const gchar* _tmp61_; + gint _tmp62_; + _tmp51_ = _e_it; + _tmp52_ = gee_iterator_next (_tmp51_); + if (!_tmp52_) { + break; + } + _tmp53_ = _e_it; + _tmp54_ = gee_iterator_get (_tmp53_); + e = (GeeMapEntry*) _tmp54_; + _tmp55_ = e; + _tmp56_ = contains; + _tmp56__length1 = contains_length1; + _tmp57_ = i; + _tmp58_ = _tmp56_[_tmp57_]; + _tmp59_ = contains; + _tmp59__length1 = contains_length1; + _tmp60_ = i; + _tmp61_ = _tmp59_[_tmp60_]; + map_tests_assert_entry (_tmp55_, _tmp58_, _tmp61_); + _tmp62_ = i; + i = _tmp62_ + 1; + _g_object_unref0 (e); + } + _g_object_unref0 (_e_it); + } + _tmp63_ = i; + _tmp64_ = contains; + _tmp64__length1 = contains_length1; + _vala_assert (_tmp63_ == _tmp64__length1, "i == contains.length"); + _tmp65_ = self->priv->type; + if (_tmp65_ != GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY) { + GeeSortedMap* _tmp66_; + GeeMapIterator* _tmp67_ = NULL; + GeeMapIterator* map_iter; + GeeMapIterator* _tmp68_; + gboolean _tmp69_ = FALSE; + GeeMapIterator* _tmp70_; + gpointer _tmp71_ = NULL; + gchar* _tmp72_; + gchar** _tmp73_; + gint _tmp73__length1; + const gchar* _tmp74_; + GeeMapIterator* _tmp75_; + gpointer _tmp76_ = NULL; + gchar* _tmp77_; + gchar** _tmp78_; + gint _tmp78__length1; + const gchar* _tmp79_; + GeeMapIterator* _tmp80_; + gboolean _tmp81_ = FALSE; + GeeMapIterator* _tmp82_; + gboolean _tmp83_ = FALSE; + GeeMapIterator* _tmp84_; + gpointer _tmp85_ = NULL; + gchar* _tmp86_; + gchar** _tmp87_; + gint _tmp87__length1; + const gchar* _tmp88_; + GeeMapIterator* _tmp89_; + gpointer _tmp90_ = NULL; + gchar* _tmp91_; + gchar** _tmp92_; + gint _tmp92__length1; + const gchar* _tmp93_; + GeeSortedMap* _tmp94_; + gchar** _tmp95_ = NULL; + gint _tmp96_ = 0; + gchar** _tmp97_ = NULL; + gint _tmp98_ = 0; + GeeSortedMap* _tmp99_; + GeeSortedSet* _tmp100_; + GeeSortedSet* _tmp101_; + GeeSortedSet* _tmp102_; + GeeIterator* _tmp103_ = NULL; + GeeIterator* _tmp104_; + GeeIterator* keys_iter; + GeeIterator* _tmp105_; + gboolean _tmp106_ = FALSE; + GeeIterator* _tmp107_; + gboolean _tmp108_ = FALSE; + GeeIterator* _tmp109_; + gpointer _tmp110_ = NULL; + gchar* _tmp111_; + gchar** _tmp112_; + gint _tmp112__length1; + const gchar* _tmp113_; + GeeIterator* _tmp114_; + gboolean _tmp115_ = FALSE; + GeeIterator* _tmp116_; + gboolean _tmp117_ = FALSE; + GeeIterator* _tmp118_; + gpointer _tmp119_ = NULL; + gchar* _tmp120_; + gchar** _tmp121_; + gint _tmp121__length1; + const gchar* _tmp122_; + GeeSortedMap* _tmp123_; + gchar** _tmp124_ = NULL; + gint _tmp125_ = 0; + gchar** _tmp126_ = NULL; + gint _tmp127_ = 0; + GeeSortedMap* _tmp128_; + GeeSortedSet* _tmp129_; + GeeSortedSet* _tmp130_; + GeeSortedSet* _tmp131_; + GeeIterator* _tmp132_ = NULL; + GeeIterator* _tmp133_; + GeeIterator* entries_iter; + GeeIterator* _tmp134_; + gboolean _tmp135_ = FALSE; + GeeIterator* _tmp136_; + gboolean _tmp137_ = FALSE; + GeeIterator* _tmp138_; + gpointer _tmp139_ = NULL; + GeeMapEntry* _tmp140_; + gchar** _tmp141_; + gint _tmp141__length1; + const gchar* _tmp142_; + gchar** _tmp143_; + gint _tmp143__length1; + const gchar* _tmp144_; + GeeIterator* _tmp145_; + gboolean _tmp146_ = FALSE; + GeeIterator* _tmp147_; + gboolean _tmp148_ = FALSE; + GeeIterator* _tmp149_; + gpointer _tmp150_ = NULL; + GeeMapEntry* _tmp151_; + gchar** _tmp152_; + gint _tmp152__length1; + const gchar* _tmp153_; + gchar** _tmp154_; + gint _tmp154__length1; + const gchar* _tmp155_; + _tmp66_ = self->priv->submap; + _tmp67_ = gee_map_map_iterator ((GeeMap*) _tmp66_); + map_iter = _tmp67_; + _tmp68_ = map_iter; + _tmp69_ = gee_map_iterator_next (_tmp68_); + _vala_assert (_tmp69_, "map_iter.next ()"); + _tmp70_ = map_iter; + _tmp71_ = gee_map_iterator_get_key (_tmp70_); + _tmp72_ = (gchar*) _tmp71_; + _tmp73_ = contains; + _tmp73__length1 = contains_length1; + _tmp74_ = _tmp73_[0]; + _vala_assert (g_strcmp0 (_tmp72_, _tmp74_) == 0, "map_iter.get_key () == contains[0]"); + _g_free0 (_tmp72_); + _tmp75_ = map_iter; + _tmp76_ = gee_map_iterator_get_value (_tmp75_); + _tmp77_ = (gchar*) _tmp76_; + _tmp78_ = contains; + _tmp78__length1 = contains_length1; + _tmp79_ = _tmp78_[0]; + _vala_assert (g_strcmp0 (_tmp77_, _tmp79_) == 0, "map_iter.get_value () == contains[0]"); + _g_free0 (_tmp77_); + _tmp80_ = map_iter; + _tmp81_ = gee_map_iterator_has_next (_tmp80_); + _vala_assert (_tmp81_, "map_iter.has_next ()"); + _tmp82_ = map_iter; + _tmp83_ = gee_map_iterator_next (_tmp82_); + _vala_assert (_tmp83_, "map_iter.next ()"); + _tmp84_ = map_iter; + _tmp85_ = gee_map_iterator_get_key (_tmp84_); + _tmp86_ = (gchar*) _tmp85_; + _tmp87_ = contains; + _tmp87__length1 = contains_length1; + _tmp88_ = _tmp87_[1]; + _vala_assert (g_strcmp0 (_tmp86_, _tmp88_) == 0, "map_iter.get_key () == contains[1]"); + _g_free0 (_tmp86_); + _tmp89_ = map_iter; + _tmp90_ = gee_map_iterator_get_value (_tmp89_); + _tmp91_ = (gchar*) _tmp90_; + _tmp92_ = contains; + _tmp92__length1 = contains_length1; + _tmp93_ = _tmp92_[1]; + _vala_assert (g_strcmp0 (_tmp91_, _tmp93_) == 0, "map_iter.get_value () == contains[1]"); + _g_free0 (_tmp91_); + _tmp94_ = self->priv->master; + gee_map_clear ((GeeMap*) _tmp94_); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp95_, &_tmp96_, &_tmp97_, &_tmp98_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp95_; + contains_length1 = _tmp96_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp97_; + not_contains_length1 = _tmp98_; + _not_contains_size_ = not_contains_length1; + _tmp99_ = self->priv->submap; + _tmp100_ = gee_sorted_map_get_ascending_keys (_tmp99_); + _tmp101_ = _tmp100_; + _tmp102_ = _tmp101_; + _tmp103_ = gee_iterable_iterator ((GeeIterable*) _tmp102_); + _tmp104_ = _tmp103_; + _g_object_unref0 (_tmp102_); + keys_iter = _tmp104_; + _tmp105_ = keys_iter; + _tmp106_ = gee_iterator_has_next (_tmp105_); + _vala_assert (_tmp106_, "keys_iter.has_next ()"); + _tmp107_ = keys_iter; + _tmp108_ = gee_iterator_next (_tmp107_); + _vala_assert (_tmp108_, "keys_iter.next ()"); + _tmp109_ = keys_iter; + _tmp110_ = gee_iterator_get (_tmp109_); + _tmp111_ = (gchar*) _tmp110_; + _tmp112_ = contains; + _tmp112__length1 = contains_length1; + _tmp113_ = _tmp112_[0]; + _vala_assert (g_strcmp0 (_tmp111_, _tmp113_) == 0, "keys_iter.get () == contains[0]"); + _g_free0 (_tmp111_); + _tmp114_ = keys_iter; + _tmp115_ = gee_iterator_has_next (_tmp114_); + _vala_assert (_tmp115_, "keys_iter.has_next ()"); + _tmp116_ = keys_iter; + _tmp117_ = gee_iterator_next (_tmp116_); + _vala_assert (_tmp117_, "keys_iter.next ()"); + _tmp118_ = keys_iter; + _tmp119_ = gee_iterator_get (_tmp118_); + _tmp120_ = (gchar*) _tmp119_; + _tmp121_ = contains; + _tmp121__length1 = contains_length1; + _tmp122_ = _tmp121_[1]; + _vala_assert (g_strcmp0 (_tmp120_, _tmp122_) == 0, "keys_iter.get () == contains[1]"); + _g_free0 (_tmp120_); + _tmp123_ = self->priv->master; + gee_map_clear ((GeeMap*) _tmp123_); + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp124_, &_tmp125_, &_tmp126_, &_tmp127_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp124_; + contains_length1 = _tmp125_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp126_; + not_contains_length1 = _tmp127_; + _not_contains_size_ = not_contains_length1; + _tmp128_ = self->priv->submap; + _tmp129_ = gee_sorted_map_get_ascending_entries (_tmp128_); + _tmp130_ = _tmp129_; + _tmp131_ = _tmp130_; + _tmp132_ = gee_iterable_iterator ((GeeIterable*) _tmp131_); + _tmp133_ = _tmp132_; + _g_object_unref0 (_tmp131_); + entries_iter = _tmp133_; + _tmp134_ = entries_iter; + _tmp135_ = gee_iterator_has_next (_tmp134_); + _vala_assert (_tmp135_, "entries_iter.has_next ()"); + _tmp136_ = entries_iter; + _tmp137_ = gee_iterator_next (_tmp136_); + _vala_assert (_tmp137_, "entries_iter.next ()"); + _tmp138_ = entries_iter; + _tmp139_ = gee_iterator_get (_tmp138_); + _tmp140_ = (GeeMapEntry*) _tmp139_; + _tmp141_ = contains; + _tmp141__length1 = contains_length1; + _tmp142_ = _tmp141_[0]; + _tmp143_ = contains; + _tmp143__length1 = contains_length1; + _tmp144_ = _tmp143_[0]; + map_tests_assert_entry (_tmp140_, _tmp142_, _tmp144_); + _g_object_unref0 (_tmp140_); + _tmp145_ = entries_iter; + _tmp146_ = gee_iterator_has_next (_tmp145_); + _vala_assert (_tmp146_, "entries_iter.has_next ()"); + _tmp147_ = entries_iter; + _tmp148_ = gee_iterator_next (_tmp147_); + _vala_assert (_tmp148_, "entries_iter.next ()"); + _tmp149_ = entries_iter; + _tmp150_ = gee_iterator_get (_tmp149_); + _tmp151_ = (GeeMapEntry*) _tmp150_; + _tmp152_ = contains; + _tmp152__length1 = contains_length1; + _tmp153_ = _tmp152_[1]; + _tmp154_ = contains; + _tmp154__length1 = contains_length1; + _tmp155_ = _tmp154_[1]; + map_tests_assert_entry (_tmp151_, _tmp153_, _tmp155_); + _g_object_unref0 (_tmp151_); + _g_object_unref0 (entries_iter); + _g_object_unref0 (keys_iter); + _g_object_unref0 (map_iter); + } else { + GeeSortedMap* _tmp156_; + GeeSortedSet* _tmp157_; + GeeSortedSet* _tmp158_; + GeeSortedSet* _tmp159_; + GeeIterator* _tmp160_ = NULL; + GeeIterator* _tmp161_; + GeeIterator* keys_iter; + gboolean _tmp162_ = FALSE; + _tmp156_ = self->priv->submap; + _tmp157_ = gee_sorted_map_get_ascending_keys (_tmp156_); + _tmp158_ = _tmp157_; + _tmp159_ = _tmp158_; + _tmp160_ = gee_iterable_iterator ((GeeIterable*) _tmp159_); + _tmp161_ = _tmp160_; + _g_object_unref0 (_tmp159_); + keys_iter = _tmp161_; + _tmp162_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp162_) { + GeeIterator* _tmp163_; + _tmp163_ = keys_iter; + gee_iterator_remove (_tmp163_); + exit (0); + } + g_test_trap_assert_failed (); + _g_object_unref0 (keys_iter); + } + _g_object_unref0 (_map_iter); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_boundaries (GeeSortedMapTestsSubMapTests* self) { + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedSet* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeSortedSet* _tmp14_; + gpointer _tmp15_ = NULL; + gchar* _tmp16_; + GeeSortedSet* _tmp17_; + gpointer _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + GeeSortedSet* _tmp20_; + gpointer _tmp21_ = NULL; + GeeMapEntry* _tmp22_; + _tmp11_ = keys; + _tmp12_ = gee_sorted_set_first (_tmp11_); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (g_strcmp0 (_tmp13_, "five") == 0, "keys.first () == \"five\""); + _g_free0 (_tmp13_); + _tmp14_ = keys; + _tmp15_ = gee_sorted_set_last (_tmp14_); + _tmp16_ = (gchar*) _tmp15_; + _vala_assert (g_strcmp0 (_tmp16_, "four") == 0, "keys.last () == \"four\""); + _g_free0 (_tmp16_); + _tmp17_ = entries; + _tmp18_ = gee_sorted_set_first (_tmp17_); + _tmp19_ = (GeeMapEntry*) _tmp18_; + map_tests_assert_entry (_tmp19_, "five", "five"); + _g_object_unref0 (_tmp19_); + _tmp20_ = entries; + _tmp21_ = gee_sorted_set_last (_tmp20_); + _tmp22_ = (GeeMapEntry*) _tmp21_; + map_tests_assert_entry (_tmp22_, "four", "four"); + _g_object_unref0 (_tmp22_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedSet* _tmp23_; + gpointer _tmp24_ = NULL; + gchar* _tmp25_; + GeeSortedSet* _tmp26_; + gpointer _tmp27_ = NULL; + gchar* _tmp28_; + GeeSortedSet* _tmp29_; + gpointer _tmp30_ = NULL; + GeeMapEntry* _tmp31_; + GeeSortedSet* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + _tmp23_ = keys; + _tmp24_ = gee_sorted_set_first (_tmp23_); + _tmp25_ = (gchar*) _tmp24_; + _vala_assert (g_strcmp0 (_tmp25_, "six") == 0, "keys.first () == \"six\""); + _g_free0 (_tmp25_); + _tmp26_ = keys; + _tmp27_ = gee_sorted_set_last (_tmp26_); + _tmp28_ = (gchar*) _tmp27_; + _vala_assert (g_strcmp0 (_tmp28_, "two") == 0, "keys.last () == \"two\""); + _g_free0 (_tmp28_); + _tmp29_ = entries; + _tmp30_ = gee_sorted_set_first (_tmp29_); + _tmp31_ = (GeeMapEntry*) _tmp30_; + map_tests_assert_entry (_tmp31_, "six", "six"); + _g_object_unref0 (_tmp31_); + _tmp32_ = entries; + _tmp33_ = gee_sorted_set_last (_tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + map_tests_assert_entry (_tmp34_, "two", "two"); + _g_object_unref0 (_tmp34_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedSet* _tmp35_; + gpointer _tmp36_ = NULL; + gchar* _tmp37_; + GeeSortedSet* _tmp38_; + gpointer _tmp39_ = NULL; + gchar* _tmp40_; + GeeSortedSet* _tmp41_; + gpointer _tmp42_ = NULL; + GeeMapEntry* _tmp43_; + GeeSortedSet* _tmp44_; + gpointer _tmp45_ = NULL; + GeeMapEntry* _tmp46_; + _tmp35_ = keys; + _tmp36_ = gee_sorted_set_first (_tmp35_); + _tmp37_ = (gchar*) _tmp36_; + _vala_assert (g_strcmp0 (_tmp37_, "four") == 0, "keys.first () == \"four\""); + _g_free0 (_tmp37_); + _tmp38_ = keys; + _tmp39_ = gee_sorted_set_last (_tmp38_); + _tmp40_ = (gchar*) _tmp39_; + _vala_assert (g_strcmp0 (_tmp40_, "six") == 0, "keys.last () == \"six\""); + _g_free0 (_tmp40_); + _tmp41_ = entries; + _tmp42_ = gee_sorted_set_first (_tmp41_); + _tmp43_ = (GeeMapEntry*) _tmp42_; + map_tests_assert_entry (_tmp43_, "four", "four"); + _g_object_unref0 (_tmp43_); + _tmp44_ = entries; + _tmp45_ = gee_sorted_set_last (_tmp44_); + _tmp46_ = (GeeMapEntry*) _tmp45_; + map_tests_assert_entry (_tmp46_, "six", "six"); + _g_object_unref0 (_tmp46_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + gboolean _tmp47_ = FALSE; + gboolean _tmp51_ = FALSE; + gboolean _tmp55_ = FALSE; + gboolean _tmp59_ = FALSE; + _tmp47_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp47_) { + GeeSortedSet* _tmp48_; + gpointer _tmp49_ = NULL; + gchar* _tmp50_; + _tmp48_ = keys; + _tmp49_ = gee_sorted_set_first (_tmp48_); + _tmp50_ = (gchar*) _tmp49_; + _g_free0 (_tmp50_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp51_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp51_) { + GeeSortedSet* _tmp52_; + gpointer _tmp53_ = NULL; + gchar* _tmp54_; + _tmp52_ = keys; + _tmp53_ = gee_sorted_set_last (_tmp52_); + _tmp54_ = (gchar*) _tmp53_; + _g_free0 (_tmp54_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp55_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp55_) { + GeeSortedSet* _tmp56_; + gpointer _tmp57_ = NULL; + GeeMapEntry* _tmp58_; + _tmp56_ = entries; + _tmp57_ = gee_sorted_set_first (_tmp56_); + _tmp58_ = (GeeMapEntry*) _tmp57_; + _g_object_unref0 (_tmp58_); + exit (0); + } + g_test_trap_assert_failed (); + _tmp59_ = g_test_trap_fork ((guint64) 0, G_TEST_TRAP_SILENCE_STDOUT | G_TEST_TRAP_SILENCE_STDERR); + if (_tmp59_) { + GeeSortedSet* _tmp60_; + gpointer _tmp61_ = NULL; + GeeMapEntry* _tmp62_; + _tmp60_ = entries; + _tmp61_ = gee_sorted_set_last (_tmp60_); + _tmp62_ = (GeeMapEntry*) _tmp61_; + _g_object_unref0 (_tmp62_); + exit (0); + } + g_test_trap_assert_failed (); + break; + } + default: + { + g_assert_not_reached (); + } + } + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + _g_object_unref0 (entries); + _g_object_unref0 (keys); +} + + +void gee_sorted_map_tests_sub_map_tests_test_lower (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedSet* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeSortedSet* _tmp14_; + GeeMapEntry* _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + gpointer _tmp17_ = NULL; + GeeMapEntry* _tmp18_; + GeeSortedSet* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeSortedSet* _tmp22_; + GeeMapEntry* _tmp23_ = NULL; + GeeMapEntry* _tmp24_; + gpointer _tmp25_ = NULL; + GeeMapEntry* _tmp26_; + GeeSortedSet* _tmp27_; + gpointer _tmp28_ = NULL; + gchar* _tmp29_; + GeeSortedSet* _tmp30_; + GeeMapEntry* _tmp31_ = NULL; + GeeMapEntry* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + GeeSortedSet* _tmp35_; + gpointer _tmp36_ = NULL; + gchar* _tmp37_; + GeeSortedSet* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + gpointer _tmp41_ = NULL; + GeeMapEntry* _tmp42_; + _tmp11_ = keys; + _tmp12_ = gee_sorted_set_lower (_tmp11_, "a"); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (_tmp13_ == NULL, "keys.lower (\"a\") == null"); + _g_free0 (_tmp13_); + _tmp14_ = entries; + _tmp15_ = map_tests_entry_for ("a", "a"); + _tmp16_ = _tmp15_; + _tmp17_ = gee_sorted_set_lower (_tmp14_, _tmp16_); + _tmp18_ = (GeeMapEntry*) _tmp17_; + _vala_assert (_tmp18_ == NULL, "entries.lower (MapTests.entry_for (\"a\", \"a\")) == null"); + _g_object_unref0 (_tmp18_); + _g_object_unref0 (_tmp16_); + _tmp19_ = keys; + _tmp20_ = gee_sorted_set_lower (_tmp19_, "five"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (_tmp21_ == NULL, "keys.lower (\"five\") == null"); + _g_free0 (_tmp21_); + _tmp22_ = entries; + _tmp23_ = map_tests_entry_for ("five", "five"); + _tmp24_ = _tmp23_; + _tmp25_ = gee_sorted_set_lower (_tmp22_, _tmp24_); + _tmp26_ = (GeeMapEntry*) _tmp25_; + _vala_assert (_tmp26_ == NULL, "entries.lower (MapTests.entry_for (\"five\", \"five\")) == null"); + _g_object_unref0 (_tmp26_); + _g_object_unref0 (_tmp24_); + _tmp27_ = keys; + _tmp28_ = gee_sorted_set_lower (_tmp27_, "four"); + _tmp29_ = (gchar*) _tmp28_; + _vala_assert (g_strcmp0 (_tmp29_, "five") == 0, "keys.lower (\"four\") == \"five\""); + _g_free0 (_tmp29_); + _tmp30_ = entries; + _tmp31_ = map_tests_entry_for ("four", "four"); + _tmp32_ = _tmp31_; + _tmp33_ = gee_sorted_set_lower (_tmp30_, _tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + map_tests_assert_entry (_tmp34_, "five", "five"); + _g_object_unref0 (_tmp34_); + _g_object_unref0 (_tmp32_); + _tmp35_ = keys; + _tmp36_ = gee_sorted_set_lower (_tmp35_, "six"); + _tmp37_ = (gchar*) _tmp36_; + _vala_assert (g_strcmp0 (_tmp37_, "four") == 0, "keys.lower (\"six\") == \"four\""); + _g_free0 (_tmp37_); + _tmp38_ = entries; + _tmp39_ = map_tests_entry_for ("six", "six"); + _tmp40_ = _tmp39_; + _tmp41_ = gee_sorted_set_lower (_tmp38_, _tmp40_); + _tmp42_ = (GeeMapEntry*) _tmp41_; + map_tests_assert_entry (_tmp42_, "four", "four"); + _g_object_unref0 (_tmp42_); + _g_object_unref0 (_tmp40_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedSet* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeSortedSet* _tmp46_; + GeeMapEntry* _tmp47_ = NULL; + GeeMapEntry* _tmp48_; + gpointer _tmp49_ = NULL; + GeeMapEntry* _tmp50_; + GeeSortedSet* _tmp51_; + gpointer _tmp52_ = NULL; + gchar* _tmp53_; + GeeSortedSet* _tmp54_; + GeeMapEntry* _tmp55_ = NULL; + GeeMapEntry* _tmp56_; + gpointer _tmp57_ = NULL; + GeeMapEntry* _tmp58_; + GeeSortedSet* _tmp59_; + gpointer _tmp60_ = NULL; + gchar* _tmp61_; + GeeSortedSet* _tmp62_; + GeeMapEntry* _tmp63_ = NULL; + GeeMapEntry* _tmp64_; + gpointer _tmp65_ = NULL; + GeeMapEntry* _tmp66_; + GeeSortedSet* _tmp67_; + gpointer _tmp68_ = NULL; + gchar* _tmp69_; + GeeSortedSet* _tmp70_; + GeeMapEntry* _tmp71_ = NULL; + GeeMapEntry* _tmp72_; + gpointer _tmp73_ = NULL; + GeeMapEntry* _tmp74_; + GeeSortedSet* _tmp75_; + gpointer _tmp76_ = NULL; + gchar* _tmp77_; + GeeSortedSet* _tmp78_; + GeeMapEntry* _tmp79_ = NULL; + GeeMapEntry* _tmp80_; + gpointer _tmp81_ = NULL; + GeeMapEntry* _tmp82_; + _tmp43_ = keys; + _tmp44_ = gee_sorted_set_lower (_tmp43_, "one"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (_tmp45_ == NULL, "keys.lower (\"one\") == null"); + _g_free0 (_tmp45_); + _tmp46_ = entries; + _tmp47_ = map_tests_entry_for ("one", "one"); + _tmp48_ = _tmp47_; + _tmp49_ = gee_sorted_set_lower (_tmp46_, _tmp48_); + _tmp50_ = (GeeMapEntry*) _tmp49_; + _vala_assert (_tmp50_ == NULL, "entries.lower (MapTests.entry_for (\"one\", \"one\")) == null"); + _g_object_unref0 (_tmp50_); + _g_object_unref0 (_tmp48_); + _tmp51_ = keys; + _tmp52_ = gee_sorted_set_lower (_tmp51_, "six"); + _tmp53_ = (gchar*) _tmp52_; + _vala_assert (_tmp53_ == NULL, "keys.lower (\"six\") == null"); + _g_free0 (_tmp53_); + _tmp54_ = entries; + _tmp55_ = map_tests_entry_for ("six", "six"); + _tmp56_ = _tmp55_; + _tmp57_ = gee_sorted_set_lower (_tmp54_, _tmp56_); + _tmp58_ = (GeeMapEntry*) _tmp57_; + _vala_assert (_tmp58_ == NULL, "entries.lower (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp58_); + _g_object_unref0 (_tmp56_); + _tmp59_ = keys; + _tmp60_ = gee_sorted_set_lower (_tmp59_, "three"); + _tmp61_ = (gchar*) _tmp60_; + _vala_assert (g_strcmp0 (_tmp61_, "six") == 0, "keys.lower (\"three\") == \"six\""); + _g_free0 (_tmp61_); + _tmp62_ = entries; + _tmp63_ = map_tests_entry_for ("three", "three"); + _tmp64_ = _tmp63_; + _tmp65_ = gee_sorted_set_lower (_tmp62_, _tmp64_); + _tmp66_ = (GeeMapEntry*) _tmp65_; + map_tests_assert_entry (_tmp66_, "six", "six"); + _g_object_unref0 (_tmp66_); + _g_object_unref0 (_tmp64_); + _tmp67_ = keys; + _tmp68_ = gee_sorted_set_lower (_tmp67_, "two"); + _tmp69_ = (gchar*) _tmp68_; + _vala_assert (g_strcmp0 (_tmp69_, "three") == 0, "keys.lower (\"two\") == \"three\""); + _g_free0 (_tmp69_); + _tmp70_ = entries; + _tmp71_ = map_tests_entry_for ("two", "two"); + _tmp72_ = _tmp71_; + _tmp73_ = gee_sorted_set_lower (_tmp70_, _tmp72_); + _tmp74_ = (GeeMapEntry*) _tmp73_; + map_tests_assert_entry (_tmp74_, "three", "three"); + _g_object_unref0 (_tmp74_); + _g_object_unref0 (_tmp72_); + _tmp75_ = keys; + _tmp76_ = gee_sorted_set_lower (_tmp75_, "z"); + _tmp77_ = (gchar*) _tmp76_; + _vala_assert (g_strcmp0 (_tmp77_, "two") == 0, "keys.lower (\"z\") == \"two\""); + _g_free0 (_tmp77_); + _tmp78_ = entries; + _tmp79_ = map_tests_entry_for ("z", "z"); + _tmp80_ = _tmp79_; + _tmp81_ = gee_sorted_set_lower (_tmp78_, _tmp80_); + _tmp82_ = (GeeMapEntry*) _tmp81_; + map_tests_assert_entry (_tmp82_, "two", "two"); + _g_object_unref0 (_tmp82_); + _g_object_unref0 (_tmp80_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedSet* _tmp83_; + gpointer _tmp84_ = NULL; + gchar* _tmp85_; + GeeSortedSet* _tmp86_; + GeeMapEntry* _tmp87_ = NULL; + GeeMapEntry* _tmp88_; + gpointer _tmp89_ = NULL; + GeeMapEntry* _tmp90_; + GeeSortedSet* _tmp91_; + gpointer _tmp92_ = NULL; + gchar* _tmp93_; + GeeSortedSet* _tmp94_; + GeeMapEntry* _tmp95_ = NULL; + GeeMapEntry* _tmp96_; + gpointer _tmp97_ = NULL; + GeeMapEntry* _tmp98_; + GeeSortedSet* _tmp99_; + gpointer _tmp100_ = NULL; + gchar* _tmp101_; + GeeSortedSet* _tmp102_; + GeeMapEntry* _tmp103_ = NULL; + GeeMapEntry* _tmp104_; + gpointer _tmp105_ = NULL; + GeeMapEntry* _tmp106_; + GeeSortedSet* _tmp107_; + gpointer _tmp108_ = NULL; + gchar* _tmp109_; + GeeSortedSet* _tmp110_; + GeeMapEntry* _tmp111_ = NULL; + GeeMapEntry* _tmp112_; + gpointer _tmp113_ = NULL; + GeeMapEntry* _tmp114_; + GeeSortedSet* _tmp115_; + gpointer _tmp116_ = NULL; + gchar* _tmp117_; + GeeSortedSet* _tmp118_; + GeeMapEntry* _tmp119_ = NULL; + GeeMapEntry* _tmp120_; + gpointer _tmp121_ = NULL; + GeeMapEntry* _tmp122_; + _tmp83_ = keys; + _tmp84_ = gee_sorted_set_lower (_tmp83_, "five"); + _tmp85_ = (gchar*) _tmp84_; + _vala_assert (_tmp85_ == NULL, "keys.lower (\"five\") == null"); + _g_free0 (_tmp85_); + _tmp86_ = entries; + _tmp87_ = map_tests_entry_for ("five", "five"); + _tmp88_ = _tmp87_; + _tmp89_ = gee_sorted_set_lower (_tmp86_, _tmp88_); + _tmp90_ = (GeeMapEntry*) _tmp89_; + _vala_assert (_tmp90_ == NULL, "entries.lower (MapTests.entry_for (\"five\", \"five\")) == null"); + _g_object_unref0 (_tmp90_); + _g_object_unref0 (_tmp88_); + _tmp91_ = keys; + _tmp92_ = gee_sorted_set_lower (_tmp91_, "four"); + _tmp93_ = (gchar*) _tmp92_; + _vala_assert (_tmp93_ == NULL, "keys.lower (\"four\") == null"); + _g_free0 (_tmp93_); + _tmp94_ = entries; + _tmp95_ = map_tests_entry_for ("four", "four"); + _tmp96_ = _tmp95_; + _tmp97_ = gee_sorted_set_lower (_tmp94_, _tmp96_); + _tmp98_ = (GeeMapEntry*) _tmp97_; + _vala_assert (_tmp98_ == NULL, "entries.lower (MapTests.entry_for (\"four\", \"four\")) == null"); + _g_object_unref0 (_tmp98_); + _g_object_unref0 (_tmp96_); + _tmp99_ = keys; + _tmp100_ = gee_sorted_set_lower (_tmp99_, "one"); + _tmp101_ = (gchar*) _tmp100_; + _vala_assert (g_strcmp0 (_tmp101_, "four") == 0, "keys.lower (\"one\") == \"four\""); + _g_free0 (_tmp101_); + _tmp102_ = entries; + _tmp103_ = map_tests_entry_for ("one", "one"); + _tmp104_ = _tmp103_; + _tmp105_ = gee_sorted_set_lower (_tmp102_, _tmp104_); + _tmp106_ = (GeeMapEntry*) _tmp105_; + map_tests_assert_entry (_tmp106_, "four", "four"); + _g_object_unref0 (_tmp106_); + _g_object_unref0 (_tmp104_); + _tmp107_ = keys; + _tmp108_ = gee_sorted_set_lower (_tmp107_, "six"); + _tmp109_ = (gchar*) _tmp108_; + _vala_assert (g_strcmp0 (_tmp109_, "one") == 0, "keys.lower (\"six\") == \"one\""); + _g_free0 (_tmp109_); + _tmp110_ = entries; + _tmp111_ = map_tests_entry_for ("six", "six"); + _tmp112_ = _tmp111_; + _tmp113_ = gee_sorted_set_lower (_tmp110_, _tmp112_); + _tmp114_ = (GeeMapEntry*) _tmp113_; + map_tests_assert_entry (_tmp114_, "one", "one"); + _g_object_unref0 (_tmp114_); + _g_object_unref0 (_tmp112_); + _tmp115_ = keys; + _tmp116_ = gee_sorted_set_lower (_tmp115_, "three"); + _tmp117_ = (gchar*) _tmp116_; + _vala_assert (g_strcmp0 (_tmp117_, "six") == 0, "keys.lower (\"three\") == \"six\""); + _g_free0 (_tmp117_); + _tmp118_ = entries; + _tmp119_ = map_tests_entry_for ("three", "three"); + _tmp120_ = _tmp119_; + _tmp121_ = gee_sorted_set_lower (_tmp118_, _tmp120_); + _tmp122_ = (GeeMapEntry*) _tmp121_; + map_tests_assert_entry (_tmp122_, "six", "six"); + _g_object_unref0 (_tmp122_); + _g_object_unref0 (_tmp120_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedSet* _tmp123_; + gpointer _tmp124_ = NULL; + gchar* _tmp125_; + GeeSortedSet* _tmp126_; + GeeMapEntry* _tmp127_ = NULL; + GeeMapEntry* _tmp128_; + gpointer _tmp129_ = NULL; + GeeMapEntry* _tmp130_; + _tmp123_ = keys; + _tmp124_ = gee_sorted_set_lower (_tmp123_, "six"); + _tmp125_ = (gchar*) _tmp124_; + _vala_assert (_tmp125_ == NULL, "keys.lower (\"six\") == null"); + _g_free0 (_tmp125_); + _tmp126_ = entries; + _tmp127_ = map_tests_entry_for ("six", "six"); + _tmp128_ = _tmp127_; + _tmp129_ = gee_sorted_set_lower (_tmp126_, _tmp128_); + _tmp130_ = (GeeMapEntry*) _tmp129_; + _vala_assert (_tmp130_ == NULL, "entries.lower (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp130_); + _g_object_unref0 (_tmp128_); + break; + } + default: + { + g_assert_not_reached (); + } + } + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_higher (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedSet* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeSortedSet* _tmp14_; + GeeMapEntry* _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + gpointer _tmp17_ = NULL; + GeeMapEntry* _tmp18_; + GeeSortedSet* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeSortedSet* _tmp22_; + GeeMapEntry* _tmp23_ = NULL; + GeeMapEntry* _tmp24_; + gpointer _tmp25_ = NULL; + GeeMapEntry* _tmp26_; + GeeSortedSet* _tmp27_; + gpointer _tmp28_ = NULL; + gchar* _tmp29_; + GeeSortedSet* _tmp30_; + GeeMapEntry* _tmp31_ = NULL; + GeeMapEntry* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + GeeSortedSet* _tmp35_; + gpointer _tmp36_ = NULL; + gchar* _tmp37_; + GeeSortedSet* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + gpointer _tmp41_ = NULL; + GeeMapEntry* _tmp42_; + _tmp11_ = keys; + _tmp12_ = gee_sorted_set_higher (_tmp11_, "a"); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (g_strcmp0 (_tmp13_, "five") == 0, "keys.higher (\"a\") == \"five\""); + _g_free0 (_tmp13_); + _tmp14_ = entries; + _tmp15_ = map_tests_entry_for ("a", "a"); + _tmp16_ = _tmp15_; + _tmp17_ = gee_sorted_set_higher (_tmp14_, _tmp16_); + _tmp18_ = (GeeMapEntry*) _tmp17_; + map_tests_assert_entry (_tmp18_, "five", "five"); + _g_object_unref0 (_tmp18_); + _g_object_unref0 (_tmp16_); + _tmp19_ = keys; + _tmp20_ = gee_sorted_set_higher (_tmp19_, "five"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "four") == 0, "keys.higher (\"five\") == \"four\""); + _g_free0 (_tmp21_); + _tmp22_ = entries; + _tmp23_ = map_tests_entry_for ("five", "five"); + _tmp24_ = _tmp23_; + _tmp25_ = gee_sorted_set_higher (_tmp22_, _tmp24_); + _tmp26_ = (GeeMapEntry*) _tmp25_; + map_tests_assert_entry (_tmp26_, "four", "four"); + _g_object_unref0 (_tmp26_); + _g_object_unref0 (_tmp24_); + _tmp27_ = keys; + _tmp28_ = gee_sorted_set_higher (_tmp27_, "four"); + _tmp29_ = (gchar*) _tmp28_; + _vala_assert (_tmp29_ == NULL, "keys.higher (\"four\") == null"); + _g_free0 (_tmp29_); + _tmp30_ = entries; + _tmp31_ = map_tests_entry_for ("four", "four"); + _tmp32_ = _tmp31_; + _tmp33_ = gee_sorted_set_higher (_tmp30_, _tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + _vala_assert (_tmp34_ == NULL, "entries.higher (MapTests.entry_for (\"four\", \"four\")) == null"); + _g_object_unref0 (_tmp34_); + _g_object_unref0 (_tmp32_); + _tmp35_ = keys; + _tmp36_ = gee_sorted_set_higher (_tmp35_, "six"); + _tmp37_ = (gchar*) _tmp36_; + _vala_assert (_tmp37_ == NULL, "keys.higher (\"six\") == null"); + _g_free0 (_tmp37_); + _tmp38_ = entries; + _tmp39_ = map_tests_entry_for ("six", "six"); + _tmp40_ = _tmp39_; + _tmp41_ = gee_sorted_set_higher (_tmp38_, _tmp40_); + _tmp42_ = (GeeMapEntry*) _tmp41_; + _vala_assert (_tmp42_ == NULL, "entries.higher (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp42_); + _g_object_unref0 (_tmp40_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedSet* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeSortedSet* _tmp46_; + GeeMapEntry* _tmp47_ = NULL; + GeeMapEntry* _tmp48_; + gpointer _tmp49_ = NULL; + GeeMapEntry* _tmp50_; + GeeSortedSet* _tmp51_; + gpointer _tmp52_ = NULL; + gchar* _tmp53_; + GeeSortedSet* _tmp54_; + GeeMapEntry* _tmp55_ = NULL; + GeeMapEntry* _tmp56_; + gpointer _tmp57_ = NULL; + GeeMapEntry* _tmp58_; + GeeSortedSet* _tmp59_; + gpointer _tmp60_ = NULL; + gchar* _tmp61_; + GeeSortedSet* _tmp62_; + GeeMapEntry* _tmp63_ = NULL; + GeeMapEntry* _tmp64_; + gpointer _tmp65_ = NULL; + GeeMapEntry* _tmp66_; + GeeSortedSet* _tmp67_; + gpointer _tmp68_ = NULL; + gchar* _tmp69_; + GeeSortedSet* _tmp70_; + GeeMapEntry* _tmp71_ = NULL; + GeeMapEntry* _tmp72_; + gpointer _tmp73_ = NULL; + GeeMapEntry* _tmp74_; + GeeSortedSet* _tmp75_; + gpointer _tmp76_ = NULL; + gchar* _tmp77_; + GeeSortedSet* _tmp78_; + GeeMapEntry* _tmp79_ = NULL; + GeeMapEntry* _tmp80_; + gpointer _tmp81_ = NULL; + GeeMapEntry* _tmp82_; + _tmp43_ = keys; + _tmp44_ = gee_sorted_set_higher (_tmp43_, "one"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (g_strcmp0 (_tmp45_, "six") == 0, "keys.higher (\"one\") == \"six\""); + _g_free0 (_tmp45_); + _tmp46_ = entries; + _tmp47_ = map_tests_entry_for ("one", "one"); + _tmp48_ = _tmp47_; + _tmp49_ = gee_sorted_set_higher (_tmp46_, _tmp48_); + _tmp50_ = (GeeMapEntry*) _tmp49_; + map_tests_assert_entry (_tmp50_, "six", "six"); + _g_object_unref0 (_tmp50_); + _g_object_unref0 (_tmp48_); + _tmp51_ = keys; + _tmp52_ = gee_sorted_set_higher (_tmp51_, "six"); + _tmp53_ = (gchar*) _tmp52_; + _vala_assert (g_strcmp0 (_tmp53_, "three") == 0, "keys.higher (\"six\") == \"three\""); + _g_free0 (_tmp53_); + _tmp54_ = entries; + _tmp55_ = map_tests_entry_for ("six", "six"); + _tmp56_ = _tmp55_; + _tmp57_ = gee_sorted_set_higher (_tmp54_, _tmp56_); + _tmp58_ = (GeeMapEntry*) _tmp57_; + map_tests_assert_entry (_tmp58_, "three", "three"); + _g_object_unref0 (_tmp58_); + _g_object_unref0 (_tmp56_); + _tmp59_ = keys; + _tmp60_ = gee_sorted_set_higher (_tmp59_, "three"); + _tmp61_ = (gchar*) _tmp60_; + _vala_assert (g_strcmp0 (_tmp61_, "two") == 0, "keys.higher (\"three\") == \"two\""); + _g_free0 (_tmp61_); + _tmp62_ = entries; + _tmp63_ = map_tests_entry_for ("three", "three"); + _tmp64_ = _tmp63_; + _tmp65_ = gee_sorted_set_higher (_tmp62_, _tmp64_); + _tmp66_ = (GeeMapEntry*) _tmp65_; + map_tests_assert_entry (_tmp66_, "two", "two"); + _g_object_unref0 (_tmp66_); + _g_object_unref0 (_tmp64_); + _tmp67_ = keys; + _tmp68_ = gee_sorted_set_higher (_tmp67_, "two"); + _tmp69_ = (gchar*) _tmp68_; + _vala_assert (_tmp69_ == NULL, "keys.higher (\"two\") == null"); + _g_free0 (_tmp69_); + _tmp70_ = entries; + _tmp71_ = map_tests_entry_for ("two", "two"); + _tmp72_ = _tmp71_; + _tmp73_ = gee_sorted_set_higher (_tmp70_, _tmp72_); + _tmp74_ = (GeeMapEntry*) _tmp73_; + _vala_assert (_tmp74_ == NULL, "entries.higher (MapTests.entry_for (\"two\", \"two\")) == null"); + _g_object_unref0 (_tmp74_); + _g_object_unref0 (_tmp72_); + _tmp75_ = keys; + _tmp76_ = gee_sorted_set_higher (_tmp75_, "z"); + _tmp77_ = (gchar*) _tmp76_; + _vala_assert (_tmp77_ == NULL, "keys.higher (\"z\") == null"); + _g_free0 (_tmp77_); + _tmp78_ = entries; + _tmp79_ = map_tests_entry_for ("z", "z"); + _tmp80_ = _tmp79_; + _tmp81_ = gee_sorted_set_higher (_tmp78_, _tmp80_); + _tmp82_ = (GeeMapEntry*) _tmp81_; + _vala_assert (_tmp82_ == NULL, "entries.higher (MapTests.entry_for (\"z\", \"z\")) == null"); + _g_object_unref0 (_tmp82_); + _g_object_unref0 (_tmp80_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedSet* _tmp83_; + gpointer _tmp84_ = NULL; + gchar* _tmp85_; + GeeSortedSet* _tmp86_; + GeeMapEntry* _tmp87_ = NULL; + GeeMapEntry* _tmp88_; + gpointer _tmp89_ = NULL; + GeeMapEntry* _tmp90_; + GeeSortedSet* _tmp91_; + gpointer _tmp92_ = NULL; + gchar* _tmp93_; + GeeSortedSet* _tmp94_; + GeeMapEntry* _tmp95_ = NULL; + GeeMapEntry* _tmp96_; + gpointer _tmp97_ = NULL; + GeeMapEntry* _tmp98_; + GeeSortedSet* _tmp99_; + gpointer _tmp100_ = NULL; + gchar* _tmp101_; + GeeSortedSet* _tmp102_; + GeeMapEntry* _tmp103_ = NULL; + GeeMapEntry* _tmp104_; + gpointer _tmp105_ = NULL; + GeeMapEntry* _tmp106_; + GeeSortedSet* _tmp107_; + gpointer _tmp108_ = NULL; + gchar* _tmp109_; + GeeSortedSet* _tmp110_; + GeeMapEntry* _tmp111_ = NULL; + GeeMapEntry* _tmp112_; + gpointer _tmp113_ = NULL; + GeeMapEntry* _tmp114_; + GeeSortedSet* _tmp115_; + gpointer _tmp116_ = NULL; + gchar* _tmp117_; + GeeSortedSet* _tmp118_; + GeeMapEntry* _tmp119_ = NULL; + GeeMapEntry* _tmp120_; + gpointer _tmp121_ = NULL; + GeeMapEntry* _tmp122_; + _tmp83_ = keys; + _tmp84_ = gee_sorted_set_higher (_tmp83_, "five"); + _tmp85_ = (gchar*) _tmp84_; + _vala_assert (g_strcmp0 (_tmp85_, "four") == 0, "keys.higher (\"five\") == \"four\""); + _g_free0 (_tmp85_); + _tmp86_ = entries; + _tmp87_ = map_tests_entry_for ("five", "five"); + _tmp88_ = _tmp87_; + _tmp89_ = gee_sorted_set_higher (_tmp86_, _tmp88_); + _tmp90_ = (GeeMapEntry*) _tmp89_; + map_tests_assert_entry (_tmp90_, "four", "four"); + _g_object_unref0 (_tmp90_); + _g_object_unref0 (_tmp88_); + _tmp91_ = keys; + _tmp92_ = gee_sorted_set_higher (_tmp91_, "four"); + _tmp93_ = (gchar*) _tmp92_; + _vala_assert (g_strcmp0 (_tmp93_, "one") == 0, "keys.higher (\"four\") == \"one\""); + _g_free0 (_tmp93_); + _tmp94_ = entries; + _tmp95_ = map_tests_entry_for ("four", "four"); + _tmp96_ = _tmp95_; + _tmp97_ = gee_sorted_set_higher (_tmp94_, _tmp96_); + _tmp98_ = (GeeMapEntry*) _tmp97_; + map_tests_assert_entry (_tmp98_, "one", "one"); + _g_object_unref0 (_tmp98_); + _g_object_unref0 (_tmp96_); + _tmp99_ = keys; + _tmp100_ = gee_sorted_set_higher (_tmp99_, "one"); + _tmp101_ = (gchar*) _tmp100_; + _vala_assert (g_strcmp0 (_tmp101_, "six") == 0, "keys.higher (\"one\") == \"six\""); + _g_free0 (_tmp101_); + _tmp102_ = entries; + _tmp103_ = map_tests_entry_for ("one", "one"); + _tmp104_ = _tmp103_; + _tmp105_ = gee_sorted_set_higher (_tmp102_, _tmp104_); + _tmp106_ = (GeeMapEntry*) _tmp105_; + map_tests_assert_entry (_tmp106_, "six", "six"); + _g_object_unref0 (_tmp106_); + _g_object_unref0 (_tmp104_); + _tmp107_ = keys; + _tmp108_ = gee_sorted_set_higher (_tmp107_, "six"); + _tmp109_ = (gchar*) _tmp108_; + _vala_assert (_tmp109_ == NULL, "keys.higher (\"six\") == null"); + _g_free0 (_tmp109_); + _tmp110_ = entries; + _tmp111_ = map_tests_entry_for ("six", "six"); + _tmp112_ = _tmp111_; + _tmp113_ = gee_sorted_set_higher (_tmp110_, _tmp112_); + _tmp114_ = (GeeMapEntry*) _tmp113_; + _vala_assert (_tmp114_ == NULL, "entries.higher (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp114_); + _g_object_unref0 (_tmp112_); + _tmp115_ = keys; + _tmp116_ = gee_sorted_set_higher (_tmp115_, "three"); + _tmp117_ = (gchar*) _tmp116_; + _vala_assert (_tmp117_ == NULL, "keys.higher (\"three\") == null"); + _g_free0 (_tmp117_); + _tmp118_ = entries; + _tmp119_ = map_tests_entry_for ("three", "three"); + _tmp120_ = _tmp119_; + _tmp121_ = gee_sorted_set_higher (_tmp118_, _tmp120_); + _tmp122_ = (GeeMapEntry*) _tmp121_; + _vala_assert (_tmp122_ == NULL, "entries.higher (MapTests.entry_for (\"three\", \"three\")) == null"); + _g_object_unref0 (_tmp122_); + _g_object_unref0 (_tmp120_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedSet* _tmp123_; + gpointer _tmp124_ = NULL; + gchar* _tmp125_; + GeeSortedSet* _tmp126_; + GeeMapEntry* _tmp127_ = NULL; + GeeMapEntry* _tmp128_; + gpointer _tmp129_ = NULL; + GeeMapEntry* _tmp130_; + _tmp123_ = keys; + _tmp124_ = gee_sorted_set_higher (_tmp123_, "six"); + _tmp125_ = (gchar*) _tmp124_; + _vala_assert (_tmp125_ == NULL, "keys.higher (\"six\") == null"); + _g_free0 (_tmp125_); + _tmp126_ = entries; + _tmp127_ = map_tests_entry_for ("six", "six"); + _tmp128_ = _tmp127_; + _tmp129_ = gee_sorted_set_higher (_tmp126_, _tmp128_); + _tmp130_ = (GeeMapEntry*) _tmp129_; + _vala_assert (_tmp130_ == NULL, "entries.higher (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp130_); + _g_object_unref0 (_tmp128_); + break; + } + default: + { + g_assert_not_reached (); + } + } + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_floor (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedSet* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeSortedSet* _tmp14_; + GeeMapEntry* _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + gpointer _tmp17_ = NULL; + GeeMapEntry* _tmp18_; + GeeSortedSet* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeSortedSet* _tmp22_; + GeeMapEntry* _tmp23_ = NULL; + GeeMapEntry* _tmp24_; + gpointer _tmp25_ = NULL; + GeeMapEntry* _tmp26_; + GeeSortedSet* _tmp27_; + gpointer _tmp28_ = NULL; + gchar* _tmp29_; + GeeSortedSet* _tmp30_; + GeeMapEntry* _tmp31_ = NULL; + GeeMapEntry* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + GeeSortedSet* _tmp35_; + gpointer _tmp36_ = NULL; + gchar* _tmp37_; + GeeSortedSet* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + gpointer _tmp41_ = NULL; + GeeMapEntry* _tmp42_; + _tmp11_ = keys; + _tmp12_ = gee_sorted_set_floor (_tmp11_, "a"); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (_tmp13_ == NULL, "keys.floor (\"a\") == null"); + _g_free0 (_tmp13_); + _tmp14_ = entries; + _tmp15_ = map_tests_entry_for ("a", "a"); + _tmp16_ = _tmp15_; + _tmp17_ = gee_sorted_set_floor (_tmp14_, _tmp16_); + _tmp18_ = (GeeMapEntry*) _tmp17_; + _vala_assert (_tmp18_ == NULL, "entries.floor (MapTests.entry_for (\"a\", \"a\")) == null"); + _g_object_unref0 (_tmp18_); + _g_object_unref0 (_tmp16_); + _tmp19_ = keys; + _tmp20_ = gee_sorted_set_floor (_tmp19_, "five"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "five") == 0, "keys.floor (\"five\") == \"five\""); + _g_free0 (_tmp21_); + _tmp22_ = entries; + _tmp23_ = map_tests_entry_for ("five", "fiv"); + _tmp24_ = _tmp23_; + _tmp25_ = gee_sorted_set_floor (_tmp22_, _tmp24_); + _tmp26_ = (GeeMapEntry*) _tmp25_; + map_tests_assert_entry (_tmp26_, "five", "five"); + _g_object_unref0 (_tmp26_); + _g_object_unref0 (_tmp24_); + _tmp27_ = keys; + _tmp28_ = gee_sorted_set_floor (_tmp27_, "four"); + _tmp29_ = (gchar*) _tmp28_; + _vala_assert (g_strcmp0 (_tmp29_, "four") == 0, "keys.floor (\"four\") == \"four\""); + _g_free0 (_tmp29_); + _tmp30_ = entries; + _tmp31_ = map_tests_entry_for ("four", "four"); + _tmp32_ = _tmp31_; + _tmp33_ = gee_sorted_set_floor (_tmp30_, _tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + map_tests_assert_entry (_tmp34_, "four", "four"); + _g_object_unref0 (_tmp34_); + _g_object_unref0 (_tmp32_); + _tmp35_ = keys; + _tmp36_ = gee_sorted_set_floor (_tmp35_, "six"); + _tmp37_ = (gchar*) _tmp36_; + _vala_assert (g_strcmp0 (_tmp37_, "four") == 0, "keys.floor (\"six\") == \"four\""); + _g_free0 (_tmp37_); + _tmp38_ = entries; + _tmp39_ = map_tests_entry_for ("six", "six"); + _tmp40_ = _tmp39_; + _tmp41_ = gee_sorted_set_floor (_tmp38_, _tmp40_); + _tmp42_ = (GeeMapEntry*) _tmp41_; + map_tests_assert_entry (_tmp42_, "four", "four"); + _g_object_unref0 (_tmp42_); + _g_object_unref0 (_tmp40_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedSet* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeSortedSet* _tmp46_; + GeeMapEntry* _tmp47_ = NULL; + GeeMapEntry* _tmp48_; + gpointer _tmp49_ = NULL; + GeeMapEntry* _tmp50_; + GeeSortedSet* _tmp51_; + gpointer _tmp52_ = NULL; + gchar* _tmp53_; + GeeSortedSet* _tmp54_; + GeeMapEntry* _tmp55_ = NULL; + GeeMapEntry* _tmp56_; + gpointer _tmp57_ = NULL; + GeeMapEntry* _tmp58_; + GeeSortedSet* _tmp59_; + gpointer _tmp60_ = NULL; + gchar* _tmp61_; + GeeSortedSet* _tmp62_; + GeeMapEntry* _tmp63_ = NULL; + GeeMapEntry* _tmp64_; + gpointer _tmp65_ = NULL; + GeeMapEntry* _tmp66_; + GeeSortedSet* _tmp67_; + gpointer _tmp68_ = NULL; + gchar* _tmp69_; + GeeSortedSet* _tmp70_; + GeeMapEntry* _tmp71_ = NULL; + GeeMapEntry* _tmp72_; + gpointer _tmp73_ = NULL; + GeeMapEntry* _tmp74_; + GeeSortedSet* _tmp75_; + gpointer _tmp76_ = NULL; + gchar* _tmp77_; + GeeSortedSet* _tmp78_; + GeeMapEntry* _tmp79_ = NULL; + GeeMapEntry* _tmp80_; + gpointer _tmp81_ = NULL; + GeeMapEntry* _tmp82_; + _tmp43_ = keys; + _tmp44_ = gee_sorted_set_floor (_tmp43_, "one"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (_tmp45_ == NULL, "keys.floor (\"one\") == null"); + _g_free0 (_tmp45_); + _tmp46_ = entries; + _tmp47_ = map_tests_entry_for ("one", "one"); + _tmp48_ = _tmp47_; + _tmp49_ = gee_sorted_set_floor (_tmp46_, _tmp48_); + _tmp50_ = (GeeMapEntry*) _tmp49_; + _vala_assert (_tmp50_ == NULL, "entries.floor (MapTests.entry_for (\"one\", \"one\")) == null"); + _g_object_unref0 (_tmp50_); + _g_object_unref0 (_tmp48_); + _tmp51_ = keys; + _tmp52_ = gee_sorted_set_floor (_tmp51_, "six"); + _tmp53_ = (gchar*) _tmp52_; + _vala_assert (g_strcmp0 (_tmp53_, "six") == 0, "keys.floor (\"six\") == \"six\""); + _g_free0 (_tmp53_); + _tmp54_ = entries; + _tmp55_ = map_tests_entry_for ("six", "six"); + _tmp56_ = _tmp55_; + _tmp57_ = gee_sorted_set_floor (_tmp54_, _tmp56_); + _tmp58_ = (GeeMapEntry*) _tmp57_; + map_tests_assert_entry (_tmp58_, "six", "six"); + _g_object_unref0 (_tmp58_); + _g_object_unref0 (_tmp56_); + _tmp59_ = keys; + _tmp60_ = gee_sorted_set_floor (_tmp59_, "three"); + _tmp61_ = (gchar*) _tmp60_; + _vala_assert (g_strcmp0 (_tmp61_, "three") == 0, "keys.floor (\"three\") == \"three\""); + _g_free0 (_tmp61_); + _tmp62_ = entries; + _tmp63_ = map_tests_entry_for ("three", "three"); + _tmp64_ = _tmp63_; + _tmp65_ = gee_sorted_set_floor (_tmp62_, _tmp64_); + _tmp66_ = (GeeMapEntry*) _tmp65_; + map_tests_assert_entry (_tmp66_, "three", "three"); + _g_object_unref0 (_tmp66_); + _g_object_unref0 (_tmp64_); + _tmp67_ = keys; + _tmp68_ = gee_sorted_set_floor (_tmp67_, "two"); + _tmp69_ = (gchar*) _tmp68_; + _vala_assert (g_strcmp0 (_tmp69_, "two") == 0, "keys.floor (\"two\") == \"two\""); + _g_free0 (_tmp69_); + _tmp70_ = entries; + _tmp71_ = map_tests_entry_for ("two", "two"); + _tmp72_ = _tmp71_; + _tmp73_ = gee_sorted_set_floor (_tmp70_, _tmp72_); + _tmp74_ = (GeeMapEntry*) _tmp73_; + map_tests_assert_entry (_tmp74_, "two", "two"); + _g_object_unref0 (_tmp74_); + _g_object_unref0 (_tmp72_); + _tmp75_ = keys; + _tmp76_ = gee_sorted_set_floor (_tmp75_, "z"); + _tmp77_ = (gchar*) _tmp76_; + _vala_assert (g_strcmp0 (_tmp77_, "two") == 0, "keys.floor (\"z\") == \"two\""); + _g_free0 (_tmp77_); + _tmp78_ = entries; + _tmp79_ = map_tests_entry_for ("z", "z"); + _tmp80_ = _tmp79_; + _tmp81_ = gee_sorted_set_floor (_tmp78_, _tmp80_); + _tmp82_ = (GeeMapEntry*) _tmp81_; + map_tests_assert_entry (_tmp82_, "two", "two"); + _g_object_unref0 (_tmp82_); + _g_object_unref0 (_tmp80_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedSet* _tmp83_; + gpointer _tmp84_ = NULL; + gchar* _tmp85_; + GeeSortedSet* _tmp86_; + GeeMapEntry* _tmp87_ = NULL; + GeeMapEntry* _tmp88_; + gpointer _tmp89_ = NULL; + GeeMapEntry* _tmp90_; + GeeSortedSet* _tmp91_; + gpointer _tmp92_ = NULL; + gchar* _tmp93_; + GeeSortedSet* _tmp94_; + GeeMapEntry* _tmp95_ = NULL; + GeeMapEntry* _tmp96_; + gpointer _tmp97_ = NULL; + GeeMapEntry* _tmp98_; + GeeSortedSet* _tmp99_; + gpointer _tmp100_ = NULL; + gchar* _tmp101_; + GeeSortedSet* _tmp102_; + GeeMapEntry* _tmp103_ = NULL; + GeeMapEntry* _tmp104_; + gpointer _tmp105_ = NULL; + GeeMapEntry* _tmp106_; + GeeSortedSet* _tmp107_; + gpointer _tmp108_ = NULL; + gchar* _tmp109_; + GeeSortedSet* _tmp110_; + GeeMapEntry* _tmp111_ = NULL; + GeeMapEntry* _tmp112_; + gpointer _tmp113_ = NULL; + GeeMapEntry* _tmp114_; + GeeSortedSet* _tmp115_; + gpointer _tmp116_ = NULL; + gchar* _tmp117_; + GeeSortedSet* _tmp118_; + GeeMapEntry* _tmp119_ = NULL; + GeeMapEntry* _tmp120_; + gpointer _tmp121_ = NULL; + GeeMapEntry* _tmp122_; + _tmp83_ = keys; + _tmp84_ = gee_sorted_set_floor (_tmp83_, "five"); + _tmp85_ = (gchar*) _tmp84_; + _vala_assert (_tmp85_ == NULL, "keys.floor (\"five\") == null"); + _g_free0 (_tmp85_); + _tmp86_ = entries; + _tmp87_ = map_tests_entry_for ("five", "five"); + _tmp88_ = _tmp87_; + _tmp89_ = gee_sorted_set_floor (_tmp86_, _tmp88_); + _tmp90_ = (GeeMapEntry*) _tmp89_; + _vala_assert (_tmp90_ == NULL, "entries.floor (MapTests.entry_for (\"five\", \"five\")) == null"); + _g_object_unref0 (_tmp90_); + _g_object_unref0 (_tmp88_); + _tmp91_ = keys; + _tmp92_ = gee_sorted_set_floor (_tmp91_, "four"); + _tmp93_ = (gchar*) _tmp92_; + _vala_assert (g_strcmp0 (_tmp93_, "four") == 0, "keys.floor (\"four\") == \"four\""); + _g_free0 (_tmp93_); + _tmp94_ = entries; + _tmp95_ = map_tests_entry_for ("four", "four"); + _tmp96_ = _tmp95_; + _tmp97_ = gee_sorted_set_floor (_tmp94_, _tmp96_); + _tmp98_ = (GeeMapEntry*) _tmp97_; + map_tests_assert_entry (_tmp98_, "four", "four"); + _g_object_unref0 (_tmp98_); + _g_object_unref0 (_tmp96_); + _tmp99_ = keys; + _tmp100_ = gee_sorted_set_floor (_tmp99_, "one"); + _tmp101_ = (gchar*) _tmp100_; + _vala_assert (g_strcmp0 (_tmp101_, "one") == 0, "keys.floor (\"one\") == \"one\""); + _g_free0 (_tmp101_); + _tmp102_ = entries; + _tmp103_ = map_tests_entry_for ("one", "one"); + _tmp104_ = _tmp103_; + _tmp105_ = gee_sorted_set_floor (_tmp102_, _tmp104_); + _tmp106_ = (GeeMapEntry*) _tmp105_; + map_tests_assert_entry (_tmp106_, "one", "one"); + _g_object_unref0 (_tmp106_); + _g_object_unref0 (_tmp104_); + _tmp107_ = keys; + _tmp108_ = gee_sorted_set_floor (_tmp107_, "six"); + _tmp109_ = (gchar*) _tmp108_; + _vala_assert (g_strcmp0 (_tmp109_, "six") == 0, "keys.floor (\"six\") == \"six\""); + _g_free0 (_tmp109_); + _tmp110_ = entries; + _tmp111_ = map_tests_entry_for ("six", "six"); + _tmp112_ = _tmp111_; + _tmp113_ = gee_sorted_set_floor (_tmp110_, _tmp112_); + _tmp114_ = (GeeMapEntry*) _tmp113_; + map_tests_assert_entry (_tmp114_, "six", "six"); + _g_object_unref0 (_tmp114_); + _g_object_unref0 (_tmp112_); + _tmp115_ = keys; + _tmp116_ = gee_sorted_set_floor (_tmp115_, "three"); + _tmp117_ = (gchar*) _tmp116_; + _vala_assert (g_strcmp0 (_tmp117_, "six") == 0, "keys.floor (\"three\") == \"six\""); + _g_free0 (_tmp117_); + _tmp118_ = entries; + _tmp119_ = map_tests_entry_for ("three", "three"); + _tmp120_ = _tmp119_; + _tmp121_ = gee_sorted_set_floor (_tmp118_, _tmp120_); + _tmp122_ = (GeeMapEntry*) _tmp121_; + map_tests_assert_entry (_tmp122_, "six", "six"); + _g_object_unref0 (_tmp122_); + _g_object_unref0 (_tmp120_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedSet* _tmp123_; + gpointer _tmp124_ = NULL; + gchar* _tmp125_; + GeeSortedSet* _tmp126_; + GeeMapEntry* _tmp127_ = NULL; + GeeMapEntry* _tmp128_; + gpointer _tmp129_ = NULL; + GeeMapEntry* _tmp130_; + _tmp123_ = keys; + _tmp124_ = gee_sorted_set_floor (_tmp123_, "six"); + _tmp125_ = (gchar*) _tmp124_; + _vala_assert (_tmp125_ == NULL, "keys.floor (\"six\") == null"); + _g_free0 (_tmp125_); + _tmp126_ = entries; + _tmp127_ = map_tests_entry_for ("six", "six"); + _tmp128_ = _tmp127_; + _tmp129_ = gee_sorted_set_floor (_tmp126_, _tmp128_); + _tmp130_ = (GeeMapEntry*) _tmp129_; + _vala_assert (_tmp130_ == NULL, "entries.floor (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp130_); + _g_object_unref0 (_tmp128_); + break; + } + default: + { + g_assert_not_reached (); + } + } + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_ceil (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedSet* _tmp11_; + gpointer _tmp12_ = NULL; + gchar* _tmp13_; + GeeSortedSet* _tmp14_; + GeeMapEntry* _tmp15_ = NULL; + GeeMapEntry* _tmp16_; + gpointer _tmp17_ = NULL; + GeeMapEntry* _tmp18_; + GeeSortedSet* _tmp19_; + gpointer _tmp20_ = NULL; + gchar* _tmp21_; + GeeSortedSet* _tmp22_; + GeeMapEntry* _tmp23_ = NULL; + GeeMapEntry* _tmp24_; + gpointer _tmp25_ = NULL; + GeeMapEntry* _tmp26_; + GeeSortedSet* _tmp27_; + gpointer _tmp28_ = NULL; + gchar* _tmp29_; + GeeSortedSet* _tmp30_; + GeeMapEntry* _tmp31_ = NULL; + GeeMapEntry* _tmp32_; + gpointer _tmp33_ = NULL; + GeeMapEntry* _tmp34_; + GeeSortedSet* _tmp35_; + gpointer _tmp36_ = NULL; + gchar* _tmp37_; + GeeSortedSet* _tmp38_; + GeeMapEntry* _tmp39_ = NULL; + GeeMapEntry* _tmp40_; + gpointer _tmp41_ = NULL; + GeeMapEntry* _tmp42_; + _tmp11_ = keys; + _tmp12_ = gee_sorted_set_ceil (_tmp11_, "a"); + _tmp13_ = (gchar*) _tmp12_; + _vala_assert (g_strcmp0 (_tmp13_, "five") == 0, "keys.ceil (\"a\") == \"five\""); + _g_free0 (_tmp13_); + _tmp14_ = entries; + _tmp15_ = map_tests_entry_for ("a", "a"); + _tmp16_ = _tmp15_; + _tmp17_ = gee_sorted_set_ceil (_tmp14_, _tmp16_); + _tmp18_ = (GeeMapEntry*) _tmp17_; + map_tests_assert_entry (_tmp18_, "five", "five"); + _g_object_unref0 (_tmp18_); + _g_object_unref0 (_tmp16_); + _tmp19_ = keys; + _tmp20_ = gee_sorted_set_ceil (_tmp19_, "five"); + _tmp21_ = (gchar*) _tmp20_; + _vala_assert (g_strcmp0 (_tmp21_, "five") == 0, "keys.ceil (\"five\") == \"five\""); + _g_free0 (_tmp21_); + _tmp22_ = entries; + _tmp23_ = map_tests_entry_for ("five", "five"); + _tmp24_ = _tmp23_; + _tmp25_ = gee_sorted_set_ceil (_tmp22_, _tmp24_); + _tmp26_ = (GeeMapEntry*) _tmp25_; + map_tests_assert_entry (_tmp26_, "five", "five"); + _g_object_unref0 (_tmp26_); + _g_object_unref0 (_tmp24_); + _tmp27_ = keys; + _tmp28_ = gee_sorted_set_ceil (_tmp27_, "four"); + _tmp29_ = (gchar*) _tmp28_; + _vala_assert (g_strcmp0 (_tmp29_, "four") == 0, "keys.ceil (\"four\") == \"four\""); + _g_free0 (_tmp29_); + _tmp30_ = entries; + _tmp31_ = map_tests_entry_for ("four", "four"); + _tmp32_ = _tmp31_; + _tmp33_ = gee_sorted_set_ceil (_tmp30_, _tmp32_); + _tmp34_ = (GeeMapEntry*) _tmp33_; + map_tests_assert_entry (_tmp34_, "four", "four"); + _g_object_unref0 (_tmp34_); + _g_object_unref0 (_tmp32_); + _tmp35_ = keys; + _tmp36_ = gee_sorted_set_ceil (_tmp35_, "six"); + _tmp37_ = (gchar*) _tmp36_; + _vala_assert (_tmp37_ == NULL, "keys.ceil (\"six\") == null"); + _g_free0 (_tmp37_); + _tmp38_ = entries; + _tmp39_ = map_tests_entry_for ("six", "six"); + _tmp40_ = _tmp39_; + _tmp41_ = gee_sorted_set_ceil (_tmp38_, _tmp40_); + _tmp42_ = (GeeMapEntry*) _tmp41_; + _vala_assert (_tmp42_ == NULL, "entries.ceil (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp42_); + _g_object_unref0 (_tmp40_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedSet* _tmp43_; + gpointer _tmp44_ = NULL; + gchar* _tmp45_; + GeeSortedSet* _tmp46_; + GeeMapEntry* _tmp47_ = NULL; + GeeMapEntry* _tmp48_; + gpointer _tmp49_ = NULL; + GeeMapEntry* _tmp50_; + GeeSortedSet* _tmp51_; + gpointer _tmp52_ = NULL; + gchar* _tmp53_; + GeeSortedSet* _tmp54_; + GeeMapEntry* _tmp55_ = NULL; + GeeMapEntry* _tmp56_; + gpointer _tmp57_ = NULL; + GeeMapEntry* _tmp58_; + GeeSortedSet* _tmp59_; + gpointer _tmp60_ = NULL; + gchar* _tmp61_; + GeeSortedSet* _tmp62_; + GeeMapEntry* _tmp63_ = NULL; + GeeMapEntry* _tmp64_; + gpointer _tmp65_ = NULL; + GeeMapEntry* _tmp66_; + GeeSortedSet* _tmp67_; + gpointer _tmp68_ = NULL; + gchar* _tmp69_; + GeeSortedSet* _tmp70_; + GeeMapEntry* _tmp71_ = NULL; + GeeMapEntry* _tmp72_; + gpointer _tmp73_ = NULL; + GeeMapEntry* _tmp74_; + GeeSortedSet* _tmp75_; + gpointer _tmp76_ = NULL; + gchar* _tmp77_; + GeeSortedSet* _tmp78_; + GeeMapEntry* _tmp79_ = NULL; + GeeMapEntry* _tmp80_; + gpointer _tmp81_ = NULL; + GeeMapEntry* _tmp82_; + _tmp43_ = keys; + _tmp44_ = gee_sorted_set_ceil (_tmp43_, "one"); + _tmp45_ = (gchar*) _tmp44_; + _vala_assert (g_strcmp0 (_tmp45_, "six") == 0, "keys.ceil (\"one\") == \"six\""); + _g_free0 (_tmp45_); + _tmp46_ = entries; + _tmp47_ = map_tests_entry_for ("one", "one"); + _tmp48_ = _tmp47_; + _tmp49_ = gee_sorted_set_ceil (_tmp46_, _tmp48_); + _tmp50_ = (GeeMapEntry*) _tmp49_; + map_tests_assert_entry (_tmp50_, "six", "six"); + _g_object_unref0 (_tmp50_); + _g_object_unref0 (_tmp48_); + _tmp51_ = keys; + _tmp52_ = gee_sorted_set_ceil (_tmp51_, "six"); + _tmp53_ = (gchar*) _tmp52_; + _vala_assert (g_strcmp0 (_tmp53_, "six") == 0, "keys.ceil (\"six\") == \"six\""); + _g_free0 (_tmp53_); + _tmp54_ = entries; + _tmp55_ = map_tests_entry_for ("six", "six"); + _tmp56_ = _tmp55_; + _tmp57_ = gee_sorted_set_ceil (_tmp54_, _tmp56_); + _tmp58_ = (GeeMapEntry*) _tmp57_; + map_tests_assert_entry (_tmp58_, "six", "six"); + _g_object_unref0 (_tmp58_); + _g_object_unref0 (_tmp56_); + _tmp59_ = keys; + _tmp60_ = gee_sorted_set_ceil (_tmp59_, "three"); + _tmp61_ = (gchar*) _tmp60_; + _vala_assert (g_strcmp0 (_tmp61_, "three") == 0, "keys.ceil (\"three\") == \"three\""); + _g_free0 (_tmp61_); + _tmp62_ = entries; + _tmp63_ = map_tests_entry_for ("three", "three"); + _tmp64_ = _tmp63_; + _tmp65_ = gee_sorted_set_ceil (_tmp62_, _tmp64_); + _tmp66_ = (GeeMapEntry*) _tmp65_; + map_tests_assert_entry (_tmp66_, "three", "three"); + _g_object_unref0 (_tmp66_); + _g_object_unref0 (_tmp64_); + _tmp67_ = keys; + _tmp68_ = gee_sorted_set_ceil (_tmp67_, "two"); + _tmp69_ = (gchar*) _tmp68_; + _vala_assert (g_strcmp0 (_tmp69_, "two") == 0, "keys.ceil (\"two\") == \"two\""); + _g_free0 (_tmp69_); + _tmp70_ = entries; + _tmp71_ = map_tests_entry_for ("two", "two"); + _tmp72_ = _tmp71_; + _tmp73_ = gee_sorted_set_ceil (_tmp70_, _tmp72_); + _tmp74_ = (GeeMapEntry*) _tmp73_; + map_tests_assert_entry (_tmp74_, "two", "two"); + _g_object_unref0 (_tmp74_); + _g_object_unref0 (_tmp72_); + _tmp75_ = keys; + _tmp76_ = gee_sorted_set_ceil (_tmp75_, "z"); + _tmp77_ = (gchar*) _tmp76_; + _vala_assert (_tmp77_ == NULL, "keys.ceil (\"z\") == null"); + _g_free0 (_tmp77_); + _tmp78_ = entries; + _tmp79_ = map_tests_entry_for ("z", "z"); + _tmp80_ = _tmp79_; + _tmp81_ = gee_sorted_set_ceil (_tmp78_, _tmp80_); + _tmp82_ = (GeeMapEntry*) _tmp81_; + _vala_assert (_tmp82_ == NULL, "entries.ceil (MapTests.entry_for (\"z\", \"z\")) == null"); + _g_object_unref0 (_tmp82_); + _g_object_unref0 (_tmp80_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedSet* _tmp83_; + gpointer _tmp84_ = NULL; + gchar* _tmp85_; + GeeSortedSet* _tmp86_; + GeeMapEntry* _tmp87_ = NULL; + GeeMapEntry* _tmp88_; + gpointer _tmp89_ = NULL; + GeeMapEntry* _tmp90_; + GeeSortedSet* _tmp91_; + gpointer _tmp92_ = NULL; + gchar* _tmp93_; + GeeSortedSet* _tmp94_; + GeeMapEntry* _tmp95_ = NULL; + GeeMapEntry* _tmp96_; + gpointer _tmp97_ = NULL; + GeeMapEntry* _tmp98_; + GeeSortedSet* _tmp99_; + gpointer _tmp100_ = NULL; + gchar* _tmp101_; + GeeSortedSet* _tmp102_; + GeeMapEntry* _tmp103_ = NULL; + GeeMapEntry* _tmp104_; + gpointer _tmp105_ = NULL; + GeeMapEntry* _tmp106_; + GeeSortedSet* _tmp107_; + gpointer _tmp108_ = NULL; + gchar* _tmp109_; + GeeSortedSet* _tmp110_; + GeeMapEntry* _tmp111_ = NULL; + GeeMapEntry* _tmp112_; + gpointer _tmp113_ = NULL; + GeeMapEntry* _tmp114_; + GeeSortedSet* _tmp115_; + gpointer _tmp116_ = NULL; + gchar* _tmp117_; + GeeSortedSet* _tmp118_; + GeeMapEntry* _tmp119_ = NULL; + GeeMapEntry* _tmp120_; + gpointer _tmp121_ = NULL; + GeeMapEntry* _tmp122_; + _tmp83_ = keys; + _tmp84_ = gee_sorted_set_ceil (_tmp83_, "five"); + _tmp85_ = (gchar*) _tmp84_; + _vala_assert (g_strcmp0 (_tmp85_, "four") == 0, "keys.ceil (\"five\") == \"four\""); + _g_free0 (_tmp85_); + _tmp86_ = entries; + _tmp87_ = map_tests_entry_for ("five", "five"); + _tmp88_ = _tmp87_; + _tmp89_ = gee_sorted_set_ceil (_tmp86_, _tmp88_); + _tmp90_ = (GeeMapEntry*) _tmp89_; + map_tests_assert_entry (_tmp90_, "four", "four"); + _g_object_unref0 (_tmp90_); + _g_object_unref0 (_tmp88_); + _tmp91_ = keys; + _tmp92_ = gee_sorted_set_ceil (_tmp91_, "four"); + _tmp93_ = (gchar*) _tmp92_; + _vala_assert (g_strcmp0 (_tmp93_, "four") == 0, "keys.ceil (\"four\") == \"four\""); + _g_free0 (_tmp93_); + _tmp94_ = entries; + _tmp95_ = map_tests_entry_for ("four", "four"); + _tmp96_ = _tmp95_; + _tmp97_ = gee_sorted_set_ceil (_tmp94_, _tmp96_); + _tmp98_ = (GeeMapEntry*) _tmp97_; + map_tests_assert_entry (_tmp98_, "four", "four"); + _g_object_unref0 (_tmp98_); + _g_object_unref0 (_tmp96_); + _tmp99_ = keys; + _tmp100_ = gee_sorted_set_ceil (_tmp99_, "one"); + _tmp101_ = (gchar*) _tmp100_; + _vala_assert (g_strcmp0 (_tmp101_, "one") == 0, "keys.ceil (\"one\") == \"one\""); + _g_free0 (_tmp101_); + _tmp102_ = entries; + _tmp103_ = map_tests_entry_for ("one", "one"); + _tmp104_ = _tmp103_; + _tmp105_ = gee_sorted_set_ceil (_tmp102_, _tmp104_); + _tmp106_ = (GeeMapEntry*) _tmp105_; + map_tests_assert_entry (_tmp106_, "one", "one"); + _g_object_unref0 (_tmp106_); + _g_object_unref0 (_tmp104_); + _tmp107_ = keys; + _tmp108_ = gee_sorted_set_ceil (_tmp107_, "six"); + _tmp109_ = (gchar*) _tmp108_; + _vala_assert (g_strcmp0 (_tmp109_, "six") == 0, "keys.ceil (\"six\") == \"six\""); + _g_free0 (_tmp109_); + _tmp110_ = entries; + _tmp111_ = map_tests_entry_for ("six", "six"); + _tmp112_ = _tmp111_; + _tmp113_ = gee_sorted_set_ceil (_tmp110_, _tmp112_); + _tmp114_ = (GeeMapEntry*) _tmp113_; + map_tests_assert_entry (_tmp114_, "six", "six"); + _g_object_unref0 (_tmp114_); + _g_object_unref0 (_tmp112_); + _tmp115_ = keys; + _tmp116_ = gee_sorted_set_ceil (_tmp115_, "three"); + _tmp117_ = (gchar*) _tmp116_; + _vala_assert (_tmp117_ == NULL, "keys.ceil (\"three\") == null"); + _g_free0 (_tmp117_); + _tmp118_ = entries; + _tmp119_ = map_tests_entry_for ("three", "three"); + _tmp120_ = _tmp119_; + _tmp121_ = gee_sorted_set_ceil (_tmp118_, _tmp120_); + _tmp122_ = (GeeMapEntry*) _tmp121_; + _vala_assert (_tmp122_ == NULL, "entries.ceil (MapTests.entry_for (\"three\", \"three\")) == null"); + _g_object_unref0 (_tmp122_); + _g_object_unref0 (_tmp120_); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedSet* _tmp123_; + gpointer _tmp124_ = NULL; + gchar* _tmp125_; + GeeSortedSet* _tmp126_; + GeeMapEntry* _tmp127_ = NULL; + GeeMapEntry* _tmp128_; + gpointer _tmp129_ = NULL; + GeeMapEntry* _tmp130_; + _tmp123_ = keys; + _tmp124_ = gee_sorted_set_ceil (_tmp123_, "six"); + _tmp125_ = (gchar*) _tmp124_; + _vala_assert (_tmp125_ == NULL, "keys.ceil (\"six\") == null"); + _g_free0 (_tmp125_); + _tmp126_ = entries; + _tmp127_ = map_tests_entry_for ("six", "six"); + _tmp128_ = _tmp127_; + _tmp129_ = gee_sorted_set_ceil (_tmp126_, _tmp128_); + _tmp130_ = (GeeMapEntry*) _tmp129_; + _vala_assert (_tmp130_ == NULL, "entries.ceil (MapTests.entry_for (\"six\", \"six\")) == null"); + _g_object_unref0 (_tmp130_); + _g_object_unref0 (_tmp128_); + break; + } + default: + { + g_assert_not_reached (); + } + } + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_iterator_at (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + gchar** _tmp10_; + gint _tmp10__length1; + gchar** _tmp32_; + gint _tmp32__length1; + GeeSortedSet* _tmp46_; + GeeIterator* _tmp47_ = NULL; + GeeIterator* _tmp48_; + GeeSortedSet* _tmp49_; + GeeMapEntry* _tmp50_ = NULL; + GeeMapEntry* _tmp51_; + GeeIterator* _tmp52_ = NULL; + GeeIterator* _tmp53_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = contains; + _tmp10__length1 = contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp10_; + s_collection_length1 = _tmp10__length1; + for (s_it = 0; s_it < _tmp10__length1; s_it = s_it + 1) { + gchar* _tmp11_; + gchar* s = NULL; + _tmp11_ = g_strdup (s_collection[s_it]); + s = _tmp11_; + { + GeeSortedSet* _tmp12_; + const gchar* _tmp13_; + GeeIterator* _tmp14_ = NULL; + GeeIterator* key_iter; + GeeSortedSet* _tmp15_; + const gchar* _tmp16_; + const gchar* _tmp17_; + GeeMapEntry* _tmp18_ = NULL; + GeeMapEntry* _tmp19_; + GeeIterator* _tmp20_ = NULL; + GeeIterator* _tmp21_; + GeeIterator* entry_iter; + GeeIterator* _tmp22_; + GeeIterator* _tmp23_; + gpointer _tmp24_ = NULL; + gchar* _tmp25_; + const gchar* _tmp26_; + GeeIterator* _tmp27_; + gpointer _tmp28_ = NULL; + GeeMapEntry* _tmp29_; + const gchar* _tmp30_; + const gchar* _tmp31_; + _tmp12_ = keys; + _tmp13_ = s; + _tmp14_ = gee_sorted_set_iterator_at (_tmp12_, _tmp13_); + key_iter = _tmp14_; + _tmp15_ = entries; + _tmp16_ = s; + _tmp17_ = s; + _tmp18_ = map_tests_entry_for (_tmp16_, _tmp17_); + _tmp19_ = _tmp18_; + _tmp20_ = gee_sorted_set_iterator_at (_tmp15_, _tmp19_); + _tmp21_ = _tmp20_; + _g_object_unref0 (_tmp19_); + entry_iter = _tmp21_; + _tmp22_ = key_iter; + _vala_assert (_tmp22_ != NULL, "key_iter != null"); + _tmp23_ = key_iter; + _tmp24_ = gee_iterator_get (_tmp23_); + _tmp25_ = (gchar*) _tmp24_; + _tmp26_ = s; + _vala_assert (g_strcmp0 (_tmp25_, _tmp26_) == 0, "key_iter.get () == s"); + _g_free0 (_tmp25_); + _tmp27_ = entry_iter; + _tmp28_ = gee_iterator_get (_tmp27_); + _tmp29_ = (GeeMapEntry*) _tmp28_; + _tmp30_ = s; + _tmp31_ = s; + map_tests_assert_entry (_tmp29_, _tmp30_, _tmp31_); + _g_object_unref0 (_tmp29_); + _g_object_unref0 (entry_iter); + _g_object_unref0 (key_iter); + _g_free0 (s); + } + } + } + _tmp32_ = not_contains; + _tmp32__length1 = not_contains_length1; + { + gchar** s_collection = NULL; + gint s_collection_length1 = 0; + gint _s_collection_size_ = 0; + gint s_it = 0; + s_collection = _tmp32_; + s_collection_length1 = _tmp32__length1; + for (s_it = 0; s_it < _tmp32__length1; s_it = s_it + 1) { + gchar* _tmp33_; + gchar* s = NULL; + _tmp33_ = g_strdup (s_collection[s_it]); + s = _tmp33_; + { + GeeSortedSet* _tmp34_; + const gchar* _tmp35_; + GeeIterator* _tmp36_ = NULL; + GeeIterator* key_iter; + GeeSortedSet* _tmp37_; + const gchar* _tmp38_; + const gchar* _tmp39_; + GeeMapEntry* _tmp40_ = NULL; + GeeMapEntry* _tmp41_; + GeeIterator* _tmp42_ = NULL; + GeeIterator* _tmp43_; + GeeIterator* entry_iter; + GeeIterator* _tmp44_; + GeeIterator* _tmp45_; + _tmp34_ = keys; + _tmp35_ = s; + _tmp36_ = gee_sorted_set_iterator_at (_tmp34_, _tmp35_); + key_iter = _tmp36_; + _tmp37_ = entries; + _tmp38_ = s; + _tmp39_ = s; + _tmp40_ = map_tests_entry_for (_tmp38_, _tmp39_); + _tmp41_ = _tmp40_; + _tmp42_ = gee_sorted_set_iterator_at (_tmp37_, _tmp41_); + _tmp43_ = _tmp42_; + _g_object_unref0 (_tmp41_); + entry_iter = _tmp43_; + _tmp44_ = key_iter; + _vala_assert (_tmp44_ == NULL, "key_iter == null"); + _tmp45_ = entry_iter; + _vala_assert (_tmp45_ == NULL, "entry_iter == null"); + _g_object_unref0 (entry_iter); + _g_object_unref0 (key_iter); + _g_free0 (s); + } + } + } + _tmp46_ = keys; + _tmp47_ = gee_sorted_set_iterator_at (_tmp46_, "seven"); + _tmp48_ = _tmp47_; + _vala_assert (_tmp48_ == NULL, "keys.iterator_at (\"seven\") == null"); + _g_object_unref0 (_tmp48_); + _tmp49_ = entries; + _tmp50_ = map_tests_entry_for ("seven", "seven"); + _tmp51_ = _tmp50_; + _tmp52_ = gee_sorted_set_iterator_at (_tmp49_, _tmp51_); + _tmp53_ = _tmp52_; + _vala_assert (_tmp53_ == NULL, "entries.iterator_at (MapTests.entry_for (\"seven\", \"seven\")) == null"); + _g_object_unref0 (_tmp53_); + _g_object_unref0 (_tmp51_); + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +void gee_sorted_map_tests_sub_map_tests_test_submap_and_subsets (GeeSortedMapTestsSubMapTests* self) { + gchar** contains = NULL; + gint contains_length1 = 0; + gint _contains_size_ = 0; + gchar** not_contains = NULL; + gint not_contains_length1 = 0; + gint _not_contains_size_ = 0; + GeeSortedMap* _tmp0_; + GeeSortedSet* _tmp1_; + GeeSortedSet* _tmp2_; + GeeSortedSet* keys; + GeeSortedMap* _tmp3_; + GeeSortedSet* _tmp4_; + GeeSortedSet* _tmp5_; + GeeSortedSet* entries; + gchar** _tmp6_ = NULL; + gint _tmp7_ = 0; + gchar** _tmp8_ = NULL; + gint _tmp9_ = 0; + GeeSortedMapTestsSubMapTestsType _tmp10_; + g_return_if_fail (self != NULL); + _tmp0_ = self->priv->submap; + _tmp1_ = gee_sorted_map_get_ascending_keys (_tmp0_); + _tmp2_ = _tmp1_; + keys = _tmp2_; + _tmp3_ = self->priv->submap; + _tmp4_ = gee_sorted_map_get_ascending_entries (_tmp3_); + _tmp5_ = _tmp4_; + entries = _tmp5_; + gee_sorted_map_tests_sub_map_tests_set_default_values (self, &_tmp6_, &_tmp7_, &_tmp8_, &_tmp9_); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); + contains = _tmp6_; + contains_length1 = _tmp7_; + _contains_size_ = contains_length1; + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + not_contains = _tmp8_; + not_contains_length1 = _tmp9_; + _not_contains_size_ = not_contains_length1; + _tmp10_ = self->priv->type; + switch (_tmp10_) { + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_HEAD: + { + GeeSortedMap* _tmp11_; + GeeSortedMap* _tmp12_ = NULL; + GeeSortedMap* subsubmap; + GeeSortedSet* _tmp13_; + GeeSortedSet* _tmp14_ = NULL; + GeeSortedSet* keyssubset; + GeeSortedSet* _tmp15_; + GeeMapEntry* _tmp16_ = NULL; + GeeMapEntry* _tmp17_; + GeeSortedSet* _tmp18_ = NULL; + GeeSortedSet* _tmp19_; + GeeSortedSet* entriessubset; + GeeSortedMap* _tmp20_; + gint _tmp21_; + gint _tmp22_; + GeeSortedSet* _tmp23_; + gint _tmp24_; + gint _tmp25_; + GeeSortedSet* _tmp26_; + gint _tmp27_; + gint _tmp28_; + GeeSortedMap* _tmp29_; + GeeSortedMap* _tmp30_ = NULL; + GeeSortedSet* _tmp31_; + GeeSortedSet* _tmp32_ = NULL; + GeeSortedSet* _tmp33_; + GeeMapEntry* _tmp34_ = NULL; + GeeMapEntry* _tmp35_; + GeeSortedSet* _tmp36_ = NULL; + GeeSortedMap* _tmp37_; + gint _tmp38_; + gint _tmp39_; + GeeSortedSet* _tmp40_; + gint _tmp41_; + gint _tmp42_; + GeeSortedSet* _tmp43_; + gint _tmp44_; + gint _tmp45_; + GeeSortedMap* _tmp46_; + GeeSortedMap* _tmp47_ = NULL; + GeeSortedSet* _tmp48_; + GeeSortedSet* _tmp49_ = NULL; + GeeSortedSet* _tmp50_; + GeeMapEntry* _tmp51_ = NULL; + GeeMapEntry* _tmp52_; + GeeMapEntry* _tmp53_ = NULL; + GeeMapEntry* _tmp54_; + GeeSortedSet* _tmp55_ = NULL; + GeeSortedMap* _tmp56_; + gint _tmp57_; + gint _tmp58_; + GeeSortedSet* _tmp59_; + gint _tmp60_; + gint _tmp61_; + GeeSortedSet* _tmp62_; + gint _tmp63_; + gint _tmp64_; + GeeSortedMap* _tmp65_; + GeeSortedMap* _tmp66_ = NULL; + GeeSortedSet* _tmp67_; + GeeSortedSet* _tmp68_ = NULL; + GeeSortedSet* _tmp69_; + GeeMapEntry* _tmp70_ = NULL; + GeeMapEntry* _tmp71_; + GeeMapEntry* _tmp72_ = NULL; + GeeMapEntry* _tmp73_; + GeeSortedSet* _tmp74_ = NULL; + GeeSortedMap* _tmp75_; + gint _tmp76_; + gint _tmp77_; + GeeSortedSet* _tmp78_; + gint _tmp79_; + gint _tmp80_; + GeeSortedSet* _tmp81_; + gint _tmp82_; + gint _tmp83_; + _tmp11_ = self->priv->submap; + _tmp12_ = gee_sorted_map_head_map (_tmp11_, "four"); + subsubmap = _tmp12_; + _tmp13_ = keys; + _tmp14_ = gee_sorted_set_head_set (_tmp13_, "four"); + keyssubset = _tmp14_; + _tmp15_ = entries; + _tmp16_ = map_tests_entry_for ("four", "four"); + _tmp17_ = _tmp16_; + _tmp18_ = gee_sorted_set_head_set (_tmp15_, _tmp17_); + _tmp19_ = _tmp18_; + _g_object_unref0 (_tmp17_); + entriessubset = _tmp19_; + _tmp20_ = subsubmap; + _tmp21_ = gee_map_get_size ((GeeMap*) _tmp20_); + _tmp22_ = _tmp21_; + _vala_assert (_tmp22_ == 1, "subsubmap.size == 1"); + _tmp23_ = keyssubset; + _tmp24_ = gee_collection_get_size ((GeeCollection*) _tmp23_); + _tmp25_ = _tmp24_; + _vala_assert (_tmp25_ == 1, "keyssubset.size == 1"); + _tmp26_ = entriessubset; + _tmp27_ = gee_collection_get_size ((GeeCollection*) _tmp26_); + _tmp28_ = _tmp27_; + _vala_assert (_tmp28_ == 1, "entriessubset.size == 1"); + _tmp29_ = self->priv->submap; + _tmp30_ = gee_sorted_map_tail_map (_tmp29_, "four"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp30_; + _tmp31_ = keys; + _tmp32_ = gee_sorted_set_tail_set (_tmp31_, "four"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp32_; + _tmp33_ = entries; + _tmp34_ = map_tests_entry_for ("four", "four"); + _tmp35_ = _tmp34_; + _tmp36_ = gee_sorted_set_tail_set (_tmp33_, _tmp35_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp36_; + _g_object_unref0 (_tmp35_); + _tmp37_ = subsubmap; + _tmp38_ = gee_map_get_size ((GeeMap*) _tmp37_); + _tmp39_ = _tmp38_; + _vala_assert (_tmp39_ == 1, "subsubmap.size == 1"); + _tmp40_ = keyssubset; + _tmp41_ = gee_collection_get_size ((GeeCollection*) _tmp40_); + _tmp42_ = _tmp41_; + _vala_assert (_tmp42_ == 1, "keyssubset.size == 1"); + _tmp43_ = entriessubset; + _tmp44_ = gee_collection_get_size ((GeeCollection*) _tmp43_); + _tmp45_ = _tmp44_; + _vala_assert (_tmp45_ == 1, "entriessubset.size == 1"); + _tmp46_ = self->priv->submap; + _tmp47_ = gee_sorted_map_sub_map (_tmp46_, "four", "one"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp47_; + _tmp48_ = keys; + _tmp49_ = gee_sorted_set_sub_set (_tmp48_, "four", "one"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp49_; + _tmp50_ = entries; + _tmp51_ = map_tests_entry_for ("four", "four"); + _tmp52_ = _tmp51_; + _tmp53_ = map_tests_entry_for ("one", "one"); + _tmp54_ = _tmp53_; + _tmp55_ = gee_sorted_set_sub_set (_tmp50_, _tmp52_, _tmp54_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp55_; + _g_object_unref0 (_tmp54_); + _g_object_unref0 (_tmp52_); + _tmp56_ = subsubmap; + _tmp57_ = gee_map_get_size ((GeeMap*) _tmp56_); + _tmp58_ = _tmp57_; + _vala_assert (_tmp58_ == 1, "subsubmap.size == 1"); + _tmp59_ = keyssubset; + _tmp60_ = gee_collection_get_size ((GeeCollection*) _tmp59_); + _tmp61_ = _tmp60_; + _vala_assert (_tmp61_ == 1, "keyssubset.size == 1"); + _tmp62_ = entriessubset; + _tmp63_ = gee_collection_get_size ((GeeCollection*) _tmp62_); + _tmp64_ = _tmp63_; + _vala_assert (_tmp64_ == 1, "entriessubset.size == 1"); + _tmp65_ = self->priv->submap; + _tmp66_ = gee_sorted_map_sub_map (_tmp65_, "four", "four"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp66_; + _tmp67_ = keys; + _tmp68_ = gee_sorted_set_sub_set (_tmp67_, "four", "four"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp68_; + _tmp69_ = entries; + _tmp70_ = map_tests_entry_for ("four", "four"); + _tmp71_ = _tmp70_; + _tmp72_ = map_tests_entry_for ("four", "four"); + _tmp73_ = _tmp72_; + _tmp74_ = gee_sorted_set_sub_set (_tmp69_, _tmp71_, _tmp73_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp74_; + _g_object_unref0 (_tmp73_); + _g_object_unref0 (_tmp71_); + _tmp75_ = subsubmap; + _tmp76_ = gee_map_get_size ((GeeMap*) _tmp75_); + _tmp77_ = _tmp76_; + _vala_assert (_tmp77_ == 0, "subsubmap.size == 0"); + _tmp78_ = keyssubset; + _tmp79_ = gee_collection_get_size ((GeeCollection*) _tmp78_); + _tmp80_ = _tmp79_; + _vala_assert (_tmp80_ == 0, "keyssubset.size == 0"); + _tmp81_ = entriessubset; + _tmp82_ = gee_collection_get_size ((GeeCollection*) _tmp81_); + _tmp83_ = _tmp82_; + _vala_assert (_tmp83_ == 0, "entriessubset.size == 0"); + _g_object_unref0 (entriessubset); + _g_object_unref0 (keyssubset); + _g_object_unref0 (subsubmap); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_TAIL: + { + GeeSortedMap* _tmp84_; + GeeSortedMap* _tmp85_ = NULL; + GeeSortedMap* subsubmap; + GeeSortedSet* _tmp86_; + GeeSortedSet* _tmp87_ = NULL; + GeeSortedSet* keyssubset; + GeeSortedSet* _tmp88_; + GeeMapEntry* _tmp89_ = NULL; + GeeMapEntry* _tmp90_; + GeeSortedSet* _tmp91_ = NULL; + GeeSortedSet* _tmp92_; + GeeSortedSet* entriessubset; + GeeSortedMap* _tmp93_; + gint _tmp94_; + gint _tmp95_; + GeeSortedSet* _tmp96_; + gint _tmp97_; + gint _tmp98_; + GeeSortedSet* _tmp99_; + gint _tmp100_; + gint _tmp101_; + GeeSortedMap* _tmp102_; + GeeSortedMap* _tmp103_ = NULL; + GeeSortedSet* _tmp104_; + GeeSortedSet* _tmp105_ = NULL; + GeeSortedSet* _tmp106_; + GeeMapEntry* _tmp107_ = NULL; + GeeMapEntry* _tmp108_; + GeeSortedSet* _tmp109_ = NULL; + GeeSortedMap* _tmp110_; + gint _tmp111_; + gint _tmp112_; + GeeSortedSet* _tmp113_; + gint _tmp114_; + gint _tmp115_; + GeeSortedSet* _tmp116_; + gint _tmp117_; + gint _tmp118_; + GeeSortedMap* _tmp119_; + GeeSortedMap* _tmp120_ = NULL; + GeeSortedSet* _tmp121_; + GeeSortedSet* _tmp122_ = NULL; + GeeSortedSet* _tmp123_; + GeeMapEntry* _tmp124_ = NULL; + GeeMapEntry* _tmp125_; + GeeMapEntry* _tmp126_ = NULL; + GeeMapEntry* _tmp127_; + GeeSortedSet* _tmp128_ = NULL; + GeeSortedMap* _tmp129_; + gint _tmp130_; + gint _tmp131_; + GeeSortedSet* _tmp132_; + gint _tmp133_; + gint _tmp134_; + GeeSortedSet* _tmp135_; + gint _tmp136_; + gint _tmp137_; + _tmp84_ = self->priv->submap; + _tmp85_ = gee_sorted_map_head_map (_tmp84_, "two"); + subsubmap = _tmp85_; + _tmp86_ = keys; + _tmp87_ = gee_sorted_set_head_set (_tmp86_, "two"); + keyssubset = _tmp87_; + _tmp88_ = entries; + _tmp89_ = map_tests_entry_for ("two", "two"); + _tmp90_ = _tmp89_; + _tmp91_ = gee_sorted_set_head_set (_tmp88_, _tmp90_); + _tmp92_ = _tmp91_; + _g_object_unref0 (_tmp90_); + entriessubset = _tmp92_; + _tmp93_ = subsubmap; + _tmp94_ = gee_map_get_size ((GeeMap*) _tmp93_); + _tmp95_ = _tmp94_; + _vala_assert (_tmp95_ == 2, "subsubmap.size == 2"); + _tmp96_ = keyssubset; + _tmp97_ = gee_collection_get_size ((GeeCollection*) _tmp96_); + _tmp98_ = _tmp97_; + _vala_assert (_tmp98_ == 2, "keyssubset.size == 2"); + _tmp99_ = entriessubset; + _tmp100_ = gee_collection_get_size ((GeeCollection*) _tmp99_); + _tmp101_ = _tmp100_; + _vala_assert (_tmp101_ == 2, "entriessubset.size == 2"); + _tmp102_ = self->priv->submap; + _tmp103_ = gee_sorted_map_tail_map (_tmp102_, "three"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp103_; + _tmp104_ = keys; + _tmp105_ = gee_sorted_set_tail_set (_tmp104_, "three"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp105_; + _tmp106_ = entries; + _tmp107_ = map_tests_entry_for ("three", "three"); + _tmp108_ = _tmp107_; + _tmp109_ = gee_sorted_set_tail_set (_tmp106_, _tmp108_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp109_; + _g_object_unref0 (_tmp108_); + _tmp110_ = subsubmap; + _tmp111_ = gee_map_get_size ((GeeMap*) _tmp110_); + _tmp112_ = _tmp111_; + _vala_assert (_tmp112_ == 2, "subsubmap.size == 2"); + _tmp113_ = keyssubset; + _tmp114_ = gee_collection_get_size ((GeeCollection*) _tmp113_); + _tmp115_ = _tmp114_; + _vala_assert (_tmp115_ == 2, "keyssubset.size == 2"); + _tmp116_ = entriessubset; + _tmp117_ = gee_collection_get_size ((GeeCollection*) _tmp116_); + _tmp118_ = _tmp117_; + _vala_assert (_tmp118_ == 2, "entriessubset.size == 2"); + _tmp119_ = self->priv->submap; + _tmp120_ = gee_sorted_map_sub_map (_tmp119_, "three", "two"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp120_; + _tmp121_ = keys; + _tmp122_ = gee_sorted_set_sub_set (_tmp121_, "three", "two"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp122_; + _tmp123_ = entries; + _tmp124_ = map_tests_entry_for ("three", "three"); + _tmp125_ = _tmp124_; + _tmp126_ = map_tests_entry_for ("two", "two"); + _tmp127_ = _tmp126_; + _tmp128_ = gee_sorted_set_sub_set (_tmp123_, _tmp125_, _tmp127_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp128_; + _g_object_unref0 (_tmp127_); + _g_object_unref0 (_tmp125_); + _tmp129_ = subsubmap; + _tmp130_ = gee_map_get_size ((GeeMap*) _tmp129_); + _tmp131_ = _tmp130_; + _vala_assert (_tmp131_ == 1, "subsubmap.size == 1"); + _tmp132_ = keyssubset; + _tmp133_ = gee_collection_get_size ((GeeCollection*) _tmp132_); + _tmp134_ = _tmp133_; + _vala_assert (_tmp134_ == 1, "keyssubset.size == 1"); + _tmp135_ = entriessubset; + _tmp136_ = gee_collection_get_size ((GeeCollection*) _tmp135_); + _tmp137_ = _tmp136_; + _vala_assert (_tmp137_ == 1, "entriessubset.size == 1"); + _g_object_unref0 (entriessubset); + _g_object_unref0 (keyssubset); + _g_object_unref0 (subsubmap); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_SUB: + { + GeeSortedMap* _tmp138_; + GeeSortedMap* _tmp139_ = NULL; + GeeSortedMap* subsubmap; + GeeSortedSet* _tmp140_; + GeeSortedSet* _tmp141_ = NULL; + GeeSortedSet* keyssubset; + GeeSortedSet* _tmp142_; + GeeMapEntry* _tmp143_ = NULL; + GeeMapEntry* _tmp144_; + GeeSortedSet* _tmp145_ = NULL; + GeeSortedSet* _tmp146_; + GeeSortedSet* entriessubset; + GeeSortedMap* _tmp147_; + gint _tmp148_; + gint _tmp149_; + GeeSortedSet* _tmp150_; + gint _tmp151_; + gint _tmp152_; + GeeSortedSet* _tmp153_; + gint _tmp154_; + gint _tmp155_; + GeeSortedMap* _tmp156_; + GeeSortedMap* _tmp157_ = NULL; + GeeSortedSet* _tmp158_; + GeeSortedSet* _tmp159_ = NULL; + GeeSortedSet* _tmp160_; + GeeMapEntry* _tmp161_ = NULL; + GeeMapEntry* _tmp162_; + GeeSortedSet* _tmp163_ = NULL; + GeeSortedMap* _tmp164_; + gint _tmp165_; + gint _tmp166_; + GeeSortedSet* _tmp167_; + gint _tmp168_; + gint _tmp169_; + GeeSortedSet* _tmp170_; + gint _tmp171_; + gint _tmp172_; + GeeSortedMap* _tmp173_; + GeeSortedMap* _tmp174_ = NULL; + GeeSortedSet* _tmp175_; + GeeSortedSet* _tmp176_ = NULL; + GeeSortedSet* _tmp177_; + GeeMapEntry* _tmp178_ = NULL; + GeeMapEntry* _tmp179_; + GeeMapEntry* _tmp180_ = NULL; + GeeMapEntry* _tmp181_; + GeeSortedSet* _tmp182_ = NULL; + GeeSortedMap* _tmp183_; + gint _tmp184_; + gint _tmp185_; + GeeSortedSet* _tmp186_; + gint _tmp187_; + gint _tmp188_; + GeeSortedSet* _tmp189_; + gint _tmp190_; + gint _tmp191_; + GeeSortedMap* _tmp192_; + GeeSortedMap* _tmp193_ = NULL; + GeeSortedSet* _tmp194_; + GeeSortedSet* _tmp195_ = NULL; + GeeSortedSet* _tmp196_; + GeeMapEntry* _tmp197_ = NULL; + GeeMapEntry* _tmp198_; + GeeMapEntry* _tmp199_ = NULL; + GeeMapEntry* _tmp200_; + GeeSortedSet* _tmp201_ = NULL; + GeeSortedMap* _tmp202_; + gint _tmp203_; + gint _tmp204_; + GeeSortedSet* _tmp205_; + gint _tmp206_; + gint _tmp207_; + GeeSortedSet* _tmp208_; + gint _tmp209_; + gint _tmp210_; + _tmp138_ = self->priv->submap; + _tmp139_ = gee_sorted_map_head_map (_tmp138_, "six"); + subsubmap = _tmp139_; + _tmp140_ = keys; + _tmp141_ = gee_sorted_set_head_set (_tmp140_, "six"); + keyssubset = _tmp141_; + _tmp142_ = entries; + _tmp143_ = map_tests_entry_for ("six", "six"); + _tmp144_ = _tmp143_; + _tmp145_ = gee_sorted_set_head_set (_tmp142_, _tmp144_); + _tmp146_ = _tmp145_; + _g_object_unref0 (_tmp144_); + entriessubset = _tmp146_; + _tmp147_ = subsubmap; + _tmp148_ = gee_map_get_size ((GeeMap*) _tmp147_); + _tmp149_ = _tmp148_; + _vala_assert (_tmp149_ == 2, "subsubmap.size == 2"); + _tmp150_ = keyssubset; + _tmp151_ = gee_collection_get_size ((GeeCollection*) _tmp150_); + _tmp152_ = _tmp151_; + _vala_assert (_tmp152_ == 2, "keyssubset.size == 2"); + _tmp153_ = entriessubset; + _tmp154_ = gee_collection_get_size ((GeeCollection*) _tmp153_); + _tmp155_ = _tmp154_; + _vala_assert (_tmp155_ == 2, "entriessubset.size == 2"); + _tmp156_ = self->priv->submap; + _tmp157_ = gee_sorted_map_tail_map (_tmp156_, "one"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp157_; + _tmp158_ = keys; + _tmp159_ = gee_sorted_set_tail_set (_tmp158_, "one"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp159_; + _tmp160_ = entries; + _tmp161_ = map_tests_entry_for ("one", "one"); + _tmp162_ = _tmp161_; + _tmp163_ = gee_sorted_set_tail_set (_tmp160_, _tmp162_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp163_; + _g_object_unref0 (_tmp162_); + _tmp164_ = subsubmap; + _tmp165_ = gee_map_get_size ((GeeMap*) _tmp164_); + _tmp166_ = _tmp165_; + _vala_assert (_tmp166_ == 2, "subsubmap.size == 2"); + _tmp167_ = keyssubset; + _tmp168_ = gee_collection_get_size ((GeeCollection*) _tmp167_); + _tmp169_ = _tmp168_; + _vala_assert (_tmp169_ == 2, "keyssubset.size == 2"); + _tmp170_ = entriessubset; + _tmp171_ = gee_collection_get_size ((GeeCollection*) _tmp170_); + _tmp172_ = _tmp171_; + _vala_assert (_tmp172_ == 2, "entriessubset.size == 2"); + _tmp173_ = self->priv->submap; + _tmp174_ = gee_sorted_map_sub_map (_tmp173_, "one", "six"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp174_; + _tmp175_ = keys; + _tmp176_ = gee_sorted_set_sub_set (_tmp175_, "one", "six"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp176_; + _tmp177_ = entries; + _tmp178_ = map_tests_entry_for ("one", "one"); + _tmp179_ = _tmp178_; + _tmp180_ = map_tests_entry_for ("six", "six"); + _tmp181_ = _tmp180_; + _tmp182_ = gee_sorted_set_sub_set (_tmp177_, _tmp179_, _tmp181_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp182_; + _g_object_unref0 (_tmp181_); + _g_object_unref0 (_tmp179_); + _tmp183_ = subsubmap; + _tmp184_ = gee_map_get_size ((GeeMap*) _tmp183_); + _tmp185_ = _tmp184_; + _vala_assert (_tmp185_ == 1, "subsubmap.size == 1"); + _tmp186_ = keyssubset; + _tmp187_ = gee_collection_get_size ((GeeCollection*) _tmp186_); + _tmp188_ = _tmp187_; + _vala_assert (_tmp188_ == 1, "keyssubset.size == 1"); + _tmp189_ = entriessubset; + _tmp190_ = gee_collection_get_size ((GeeCollection*) _tmp189_); + _tmp191_ = _tmp190_; + _vala_assert (_tmp191_ == 1, "entriessubset.size == 1"); + _tmp192_ = self->priv->submap; + _tmp193_ = gee_sorted_map_sub_map (_tmp192_, "five", "two"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp193_; + _tmp194_ = keys; + _tmp195_ = gee_sorted_set_sub_set (_tmp194_, "five", "two"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp195_; + _tmp196_ = entries; + _tmp197_ = map_tests_entry_for ("five", "five"); + _tmp198_ = _tmp197_; + _tmp199_ = map_tests_entry_for ("two", "two"); + _tmp200_ = _tmp199_; + _tmp201_ = gee_sorted_set_sub_set (_tmp196_, _tmp198_, _tmp200_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp201_; + _g_object_unref0 (_tmp200_); + _g_object_unref0 (_tmp198_); + _tmp202_ = subsubmap; + _tmp203_ = gee_map_get_size ((GeeMap*) _tmp202_); + _tmp204_ = _tmp203_; + _vala_assert (_tmp204_ == 3, "subsubmap.size == 3"); + _tmp205_ = keyssubset; + _tmp206_ = gee_collection_get_size ((GeeCollection*) _tmp205_); + _tmp207_ = _tmp206_; + _vala_assert (_tmp207_ == 3, "keyssubset.size == 3"); + _tmp208_ = entriessubset; + _tmp209_ = gee_collection_get_size ((GeeCollection*) _tmp208_); + _tmp210_ = _tmp209_; + _vala_assert (_tmp210_ == 3, "entriessubset.size == 3"); + _g_object_unref0 (entriessubset); + _g_object_unref0 (keyssubset); + _g_object_unref0 (subsubmap); + break; + } + case GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_TYPE_EMPTY: + { + GeeSortedMap* _tmp211_; + GeeSortedMap* _tmp212_ = NULL; + GeeSortedMap* subsubmap; + GeeSortedSet* _tmp213_; + GeeSortedSet* _tmp214_ = NULL; + GeeSortedSet* keyssubset; + GeeSortedSet* _tmp215_; + GeeMapEntry* _tmp216_ = NULL; + GeeMapEntry* _tmp217_; + GeeSortedSet* _tmp218_ = NULL; + GeeSortedSet* _tmp219_; + GeeSortedSet* entriessubset; + GeeSortedMap* _tmp220_; + gint _tmp221_; + gint _tmp222_; + GeeSortedSet* _tmp223_; + gint _tmp224_; + gint _tmp225_; + GeeSortedSet* _tmp226_; + gint _tmp227_; + gint _tmp228_; + GeeSortedMap* _tmp229_; + GeeSortedMap* _tmp230_ = NULL; + GeeSortedSet* _tmp231_; + GeeSortedSet* _tmp232_ = NULL; + GeeSortedSet* _tmp233_; + GeeMapEntry* _tmp234_ = NULL; + GeeMapEntry* _tmp235_; + GeeSortedSet* _tmp236_ = NULL; + GeeSortedMap* _tmp237_; + gint _tmp238_; + gint _tmp239_; + GeeSortedSet* _tmp240_; + gint _tmp241_; + gint _tmp242_; + GeeSortedSet* _tmp243_; + gint _tmp244_; + gint _tmp245_; + GeeSortedMap* _tmp246_; + GeeSortedMap* _tmp247_ = NULL; + GeeSortedSet* _tmp248_; + GeeSortedSet* _tmp249_ = NULL; + GeeSortedSet* _tmp250_; + GeeMapEntry* _tmp251_ = NULL; + GeeMapEntry* _tmp252_; + GeeMapEntry* _tmp253_ = NULL; + GeeMapEntry* _tmp254_; + GeeSortedSet* _tmp255_ = NULL; + GeeSortedMap* _tmp256_; + gint _tmp257_; + gint _tmp258_; + GeeSortedSet* _tmp259_; + gint _tmp260_; + gint _tmp261_; + GeeSortedSet* _tmp262_; + gint _tmp263_; + gint _tmp264_; + _tmp211_ = self->priv->submap; + _tmp212_ = gee_sorted_map_head_map (_tmp211_, "six"); + subsubmap = _tmp212_; + _tmp213_ = keys; + _tmp214_ = gee_sorted_set_head_set (_tmp213_, "six"); + keyssubset = _tmp214_; + _tmp215_ = entries; + _tmp216_ = map_tests_entry_for ("six", "six"); + _tmp217_ = _tmp216_; + _tmp218_ = gee_sorted_set_head_set (_tmp215_, _tmp217_); + _tmp219_ = _tmp218_; + _g_object_unref0 (_tmp217_); + entriessubset = _tmp219_; + _tmp220_ = subsubmap; + _tmp221_ = gee_map_get_size ((GeeMap*) _tmp220_); + _tmp222_ = _tmp221_; + _vala_assert (_tmp222_ == 0, "subsubmap.size == 0"); + _tmp223_ = keyssubset; + _tmp224_ = gee_collection_get_size ((GeeCollection*) _tmp223_); + _tmp225_ = _tmp224_; + _vala_assert (_tmp225_ == 0, "keyssubset.size == 0"); + _tmp226_ = entriessubset; + _tmp227_ = gee_collection_get_size ((GeeCollection*) _tmp226_); + _tmp228_ = _tmp227_; + _vala_assert (_tmp228_ == 0, "entriessubset.size == 0"); + _tmp229_ = self->priv->submap; + _tmp230_ = gee_sorted_map_tail_map (_tmp229_, "three"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp230_; + _tmp231_ = keys; + _tmp232_ = gee_sorted_set_tail_set (_tmp231_, "three"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp232_; + _tmp233_ = entries; + _tmp234_ = map_tests_entry_for ("three", "three"); + _tmp235_ = _tmp234_; + _tmp236_ = gee_sorted_set_tail_set (_tmp233_, _tmp235_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp236_; + _g_object_unref0 (_tmp235_); + _tmp237_ = subsubmap; + _tmp238_ = gee_map_get_size ((GeeMap*) _tmp237_); + _tmp239_ = _tmp238_; + _vala_assert (_tmp239_ == 0, "subsubmap.size == 0"); + _tmp240_ = keyssubset; + _tmp241_ = gee_collection_get_size ((GeeCollection*) _tmp240_); + _tmp242_ = _tmp241_; + _vala_assert (_tmp242_ == 0, "keyssubset.size == 0"); + _tmp243_ = entriessubset; + _tmp244_ = gee_collection_get_size ((GeeCollection*) _tmp243_); + _tmp245_ = _tmp244_; + _vala_assert (_tmp245_ == 0, "entriessubset.size == 0"); + _tmp246_ = self->priv->submap; + _tmp247_ = gee_sorted_map_sub_map (_tmp246_, "one", "six"); + _g_object_unref0 (subsubmap); + subsubmap = _tmp247_; + _tmp248_ = keys; + _tmp249_ = gee_sorted_set_sub_set (_tmp248_, "one", "six"); + _g_object_unref0 (keyssubset); + keyssubset = _tmp249_; + _tmp250_ = entries; + _tmp251_ = map_tests_entry_for ("one", "one"); + _tmp252_ = _tmp251_; + _tmp253_ = map_tests_entry_for ("six", "six"); + _tmp254_ = _tmp253_; + _tmp255_ = gee_sorted_set_sub_set (_tmp250_, _tmp252_, _tmp254_); + _g_object_unref0 (entriessubset); + entriessubset = _tmp255_; + _g_object_unref0 (_tmp254_); + _g_object_unref0 (_tmp252_); + _tmp256_ = subsubmap; + _tmp257_ = gee_map_get_size ((GeeMap*) _tmp256_); + _tmp258_ = _tmp257_; + _vala_assert (_tmp258_ == 0, "subsubmap.size == 0"); + _tmp259_ = keyssubset; + _tmp260_ = gee_collection_get_size ((GeeCollection*) _tmp259_); + _tmp261_ = _tmp260_; + _vala_assert (_tmp261_ == 0, "keyssubset.size == 0"); + _tmp262_ = entriessubset; + _tmp263_ = gee_collection_get_size ((GeeCollection*) _tmp262_); + _tmp264_ = _tmp263_; + _vala_assert (_tmp264_ == 0, "entriessubset.size == 0"); + _g_object_unref0 (entriessubset); + _g_object_unref0 (keyssubset); + _g_object_unref0 (subsubmap); + break; + } + default: + { + g_assert_not_reached (); + } + } + _g_object_unref0 (entries); + _g_object_unref0 (keys); + not_contains = (_vala_array_free (not_contains, not_contains_length1, (GDestroyNotify) g_free), NULL); + contains = (_vala_array_free (contains, contains_length1, (GDestroyNotify) g_free), NULL); +} + + +static void gee_sorted_map_tests_sub_map_tests_class_init (GeeSortedMapTestsSubMapTestsClass * klass) { + gee_sorted_map_tests_sub_map_tests_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (GeeSortedMapTestsSubMapTestsPrivate)); + GEE_TEST_CASE_CLASS (klass)->set_up = gee_sorted_map_tests_sub_map_tests_real_set_up; + GEE_TEST_CASE_CLASS (klass)->tear_down = gee_sorted_map_tests_sub_map_tests_real_tear_down; + G_OBJECT_CLASS (klass)->finalize = gee_sorted_map_tests_sub_map_tests_finalize; +} + + +static void gee_sorted_map_tests_sub_map_tests_instance_init (GeeSortedMapTestsSubMapTests * self) { + self->priv = GEE_SORTED_MAP_TESTS_SUB_MAP_TESTS_GET_PRIVATE (self); +} + + +static void gee_sorted_map_tests_sub_map_tests_finalize (GObject* obj) { + GeeSortedMapTestsSubMapTests * self; + self = G_TYPE_CHECK_INSTANCE_CAST (obj, GEE_SORTED_MAP_TESTS_TYPE_SUB_MAP_TESTS, GeeSortedMapTestsSubMapTests); + _g_object_unref0 (self->priv->master); + _g_object_unref0 (self->priv->submap); + _g_object_unref0 (self->priv->test); + G_OBJECT_CLASS (gee_sorted_map_tests_sub_map_tests_parent_class)->finalize (obj); +} + + +GType gee_sorted_map_tests_sub_map_tests_get_type (void) { + static volatile gsize gee_sorted_map_tests_sub_map_tests_type_id__volatile = 0; + if (g_once_init_enter (&gee_sorted_map_tests_sub_map_tests_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (GeeSortedMapTestsSubMapTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) gee_sorted_map_tests_sub_map_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (GeeSortedMapTestsSubMapTests), 0, (GInstanceInitFunc) gee_sorted_map_tests_sub_map_tests_instance_init, NULL }; + GType gee_sorted_map_tests_sub_map_tests_type_id; + gee_sorted_map_tests_sub_map_tests_type_id = g_type_register_static (GEE_TYPE_TEST_CASE, "GeeSortedMapTestsSubMapTests", &g_define_type_info, 0); + g_once_init_leave (&gee_sorted_map_tests_sub_map_tests_type_id__volatile, gee_sorted_map_tests_sub_map_tests_type_id); + } + return gee_sorted_map_tests_sub_map_tests_type_id__volatile; +} + + +static void gee_sorted_map_tests_class_init (GeeSortedMapTestsClass * klass) { + gee_sorted_map_tests_parent_class = g_type_class_peek_parent (klass); +} + + +static void gee_sorted_map_tests_instance_init (GeeSortedMapTests * self) { +} + + +GType gee_sorted_map_tests_get_type (void) { + static volatile gsize gee_sorted_map_tests_type_id__volatile = 0; + if (g_once_init_enter (&gee_sorted_map_tests_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (GeeSortedMapTestsClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) gee_sorted_map_tests_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (GeeSortedMapTests), 0, (GInstanceInitFunc) gee_sorted_map_tests_instance_init, NULL }; + GType gee_sorted_map_tests_type_id; + gee_sorted_map_tests_type_id = g_type_register_static (TYPE_MAP_TESTS, "GeeSortedMapTests", &g_define_type_info, G_TYPE_FLAG_ABSTRACT); + g_once_init_leave (&gee_sorted_map_tests_type_id__volatile, gee_sorted_map_tests_type_id); + } + return gee_sorted_map_tests_type_id__volatile; +} + + +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); +} + + + |