#!/usr/bin/env python """Unittest for FunInputClient moduile""" import unittest import FunInputClient class FunInputClientUnitTest(unittest.TestCase): def setUp(self): self._strings1 = '33,foobar,0,1,1,1' self._strings2 = '44,barfoo,1,1,1,1' self._strings3 = '33,barfoo,0,1,1,1' def testInitWordObject(self): word = FunInputClient.Word(self._strings1) self.assertEquals(word._code, '33') self.assertEquals(word._string, 'foobar') self.assertEquals(word._hit, 0) self.assertEquals(word._freq, 1) self.assertEquals(word._isNew, 1) self.assertEquals(word._wordId, 1) def testInitWordObjectWithParts(self): word = FunInputClient.Word('foobar', '33', 0, 1, 1, 1) self.assertEquals(word._code, '33') self.assertEquals(word._string, 'foobar') self.assertEquals(word._hit, 0) self.assertEquals(word._freq, 1) self.assertEquals(word._isNew, 1) self.assertEquals(word._wordId, 1) def testWordStringPresent(self): word = FunInputClient.Word(self._strings1) self.assertEquals('%s' % word, self._strings1) def testWordCodePresent(self): word = FunInputClient.Word(self._strings1) self.assertEquals(repr(word), '33 foobar') def testCompareWords(self): w1 = FunInputClient.Word(self._strings1) w2 = FunInputClient.Word(self._strings2) w3 = FunInputClient.Word(self._strings3) w4 = lambda:'abc' self.assertEquals(cmp(w1, w4), -1) self.assertEquals(cmp(w2, w1), 1) self.assertEquals(cmp(w1, w3), 0) if __name__ == '__main__': unittest.main()