From dcd042d9282fa391c057ffbc126773f015606881 Mon Sep 17 00:00:00 2001 From: Jean Felder Date: Thu, 6 Jun 2019 23:48:11 +0200 Subject: GLib overrides: Add support for DateTime.compare Closes: #334 --- gi/overrides/GLib.py | 18 ++++++++++++++++++ tests/test_overrides_glib.py | 8 ++++++++ 2 files changed, 26 insertions(+) diff --git a/gi/overrides/GLib.py b/gi/overrides/GLib.py index 186902e8..e613ed1e 100644 --- a/gi/overrides/GLib.py +++ b/gi/overrides/GLib.py @@ -876,3 +876,21 @@ deprecated_attr("GLib", "glib_version", pyglib_version = version_info __all__.append('pyglib_version') deprecated_attr("GLib", "pyglib_version", "gi.version_info") + + +@override +class DateTime(GLib.DateTime): + + @classmethod + def compare(cls, dt1, dt2): + difference = GLib.DateTime.difference(dt1, dt2) + + if (difference < 0): + return -1 + elif (difference > 0): + return 1 + else: + return 0 + + +__all__.append('DateTime') diff --git a/tests/test_overrides_glib.py b/tests/test_overrides_glib.py index ac19ccd9..d39c685b 100644 --- a/tests/test_overrides_glib.py +++ b/tests/test_overrides_glib.py @@ -121,6 +121,14 @@ def test_iochannel_win32(): os.remove(fn) +def test_datetime_compare(): + dt100 = GLib.DateTime.new_from_unix_utc(100) + dt1000 = GLib.DateTime.new_from_unix_utc(1000) + assert GLib.DateTime.compare(dt100, dt1000) == -1 + assert GLib.DateTime.compare(dt1000, dt100) == 1 + assert GLib.DateTime.compare(dt100, dt100) == 0 + + class TestGVariant(unittest.TestCase): def test_create_simple(self): variant = GLib.Variant('i', 42) -- cgit v1.2.1