FreeCAD
1# SPDX-License-Identifier: LGPL-2.1-or-later
2
3# ***************************************************************************
4# * Copyright (c) 2023 Mario Passaglia <mpassaglia[at]cbc.uba.ar> *
5# * *
6# * This file is part of FreeCAD. *
7# * *
8# * FreeCAD is free software: you can redistribute it and/or modify it *
9# * under the terms of the GNU Lesser General Public License as *
10# * published by the Free Software Foundation, either version 2.1 of the *
11# * License, or (at your option) any later version. *
12# * *
13# * FreeCAD is distributed in the hope that it will be useful, but *
14# * WITHOUT ANY WARRANTY; without even the implied warranty of *
15# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
16# * Lesser General Public License for more details. *
17# * *
18# * You should have received a copy of the GNU Lesser General Public *
19# * License along with FreeCAD. If not, see *
20# * <https://www.gnu.org/licenses/>. *
21# * *
22# **************************************************************************/
23
24import FreeCAD25import unittest26
27
28class TestStringHasher(unittest.TestCase):29def setUp(self):30self.strHash = FreeCAD.StringHasher()31self.strID = self.strHash.getID("A")32
33def testInit(self):34with self.assertRaises(TypeError):35FreeCAD.StringHasher(0)36
37def testGetID(self):38with self.assertRaises(ValueError):39self.strHash.getID(0)40
41def testStringHasherIsSame(self):42with self.assertRaises(TypeError):43self.strHash.isSame(0)44
45def testStringIDIsSame(self):46with self.assertRaises(TypeError):47self.strID.isSame(0)48