Files
picard/test/test_util_astrcmp.py
Laurent Monin 5329e3592a Clean up and sort imports using isort
Add a config for isort (https://github.com/timothycrosley/isort)
Run isort -rc . and make import style consistent across files
Add a note about `isort` in CONTRIBUTING.md
2018-08-22 08:51:25 +02:00

37 lines
1.0 KiB
Python

# -*- coding: utf-8 -*-
import unittest
from picard.util.astrcmp import astrcmp_py
try:
from picard.util.astrcmp import astrcmp_c
except ImportError:
astrcmp_c = None
class AstrcmpBase(object):
func = None
def test_astrcmp(self):
astrcmp = self.__class__.func
self.assertAlmostEqual(0.0, astrcmp(u"", u""))
self.assertAlmostEqual(0.0, astrcmp(u"a", u""))
self.assertAlmostEqual(0.0, astrcmp(u"", u"a"))
self.assertAlmostEqual(1.0, astrcmp(u"a", u"a"))
self.assertAlmostEqual(0.0, astrcmp(u"a", u"b"))
self.assertAlmostEqual(0.0, astrcmp(u"ab", u"ba"))
self.assertAlmostEqual(0.7083333333333333, astrcmp(u"The Great Gig in the Sky", u"Great Gig In The sky"))
class AstrcmpCTest(AstrcmpBase, unittest.TestCase):
func = astrcmp_c
@unittest.skipIf(astrcmp_c is None, "The _astrcmp C extension module has not been compiled")
def test_astrcmp(self):
super()
class AstrcmpPyTest(AstrcmpBase, unittest.TestCase):
func = astrcmp_py