#!/usr/bin/python
import os,sys,string
unimplementedError = 'Dbmail unimplemented'
configError = 'Dbmail configuration error'
from dbmail.lib.DbmailConfig import DbmailConfig
from dbmail.lib.Dbmail import Dbmail, DbmailSmtp, DbmailUser, DbmailAlias
from dbmail.lib.DbmailAutoreply import DbmailAutoreply
if __name__=='__main__':
import unittest
class testDbmailConfig(unittest.TestCase):
def setUp(self):
self.o=DbmailConfig()
def testParse(self):
self.failUnless(type(self.o._config)==type({}))
self.failUnless(self.o._config.has_key('SMTP'))
def testGetConfig(self):
self.failUnless(self.o.getConfig())
self.failUnless(self.o.getConfig('SMTP','SENDMAIL'))
self.failUnless(type(int(self.o.getConfig('IMAP','NCHILDREN')))==type(1))
class testDbmail(unittest.TestCase):
def setUp(self):
self.o=Dbmail()
def testGetConfig(self):
self.failUnless(self.o.getConfig().has_key('db'))
def testSetCursor(self):
self.o.setCursor()
class testDbmailAlias(unittest.TestCase):
def setUp(self):
self.o=DbmailAlias()
def testGet(self):
self.o.set('testget','testget')
self.failUnless(self.o.get('testget','testget'))
def testSet(self):
self.o.set('foo@bar','foo2@bar')
self.failUnless(self.o.get('foo@bar'))
def testDelete(self):
self.o.set('foo2','bar2')
self.o.delete('foo2','bar2')
self.failIf(self.o.get('foo2','bar2'))
class testDbmailUser(unittest.TestCase):
def setUp(self):
self.o = DbmailUser('testuser1')
def testGet(self):
self.failUnless(self.o.getUserdict())
def testGetUidNumber(self):
self.failUnless(self.o.getUidNumber())
def testGetGidNumber(self):
self.failUnless(self.o.getGidNumber() >= 0)
class testDbmailAutoreply(unittest.TestCase):
def setUp(self):
self.o = DbmailAutoreply('testuser1')
def testSet(self):
raw=u"""test '' \0 reply message"""
self.failIf(self.o.set(raw))
self.failUnless(self.o.get())
self.o.delete()
def testGet(self):
self.o.set("test reply message")
self.failUnless(self.o.get())
self.failIf(DbmailAutoreply('testuser2').get())
self.failIf(DbmailAutoreply('nosuchuser').get())
def tearDown(self):
try:
self.o.delete()
except:
pass
unittest.main()
syntax highlighted by Code2HTML, v. 0.9.1