def run_func(): component = MailComponent(jid=self.service_jid, secret=self.secret, server=self.server, port=self.port, lang=Lang(self.language), config=self.config, config_file=self.config_file) component.version = self.component_version if self.enable_smtp_default_account: component.account_manager.account_classes += (GlobalSMTPAccount,) MailAccount.default_encoding = self.mail_default_encoding component.disco_identity.set_category("gateway") component.disco_identity.set_type("smtp") return component.run()
def setUp(self, tables=[]): tables += [POP3Account, IMAPAccount, GlobalSMTPAccount, AbstractSMTPAccount, SMTPAccount, MailAccount, MockIMAPAccount, User, Account, PresenceAccount] JCLTestCase.setUp(self, tables=tables) self.config_file = tempfile.mktemp(".conf", "jmctest", jcl.tests.DB_DIR) self.config = ConfigParser() self.config.read(self.config_file) self.comp = MailComponent("jmc.test.com", "password", "localhost", "5347", self.config, self.config_file) self.comp.set_admins(["*****@*****.**"]) self.command_manager = MailCommandManager(self.comp, self.comp.account_manager) self.comp.account_manager.account_classes = (POP3Account, IMAPAccount, GlobalSMTPAccount, AbstractSMTPAccount, SMTPAccount, MockIMAPAccount) self.user1 = User(jid="*****@*****.**") self.account11 = MockIMAPAccount(user=self.user1, name="account11", jid="account11@" + unicode(self.comp.jid)) self.account12 = MockIMAPAccount(user=self.user1, name="account12", jid="account12@" + unicode(self.comp.jid)) self.user2 = User(jid="*****@*****.**") self.account21 = MockIMAPAccount(user=self.user2, name="account21", jid="account21@" + unicode(self.comp.jid)) self.account22 = MockIMAPAccount(user=self.user2, name="account11", jid="account11@" + unicode(self.comp.jid)) self.user3 = User(jid="*****@*****.**") self.account31 = MockIMAPAccount(user=self.user3, name="account31", jid="account31@" + unicode(self.comp.jid)) self.account32 = MockIMAPAccount(user=self.user3, name="account32", jid="account32@" + unicode(self.comp.jid)) self.info_query = Iq(stanza_type="set", from_jid="*****@*****.**", to_jid=self.comp.jid) self.command_node = self.info_query.set_new_content(command.COMMAND_NS, "command") class MockFeederHandler(Feeder): def __init__(self, component): Feeder.__init__(self, component) self.checked_accounts = [] def feed(self, _account): self.checked_accounts.append(_account) assert((int(time.time()) - _account.lastcheck \ >= (_account.interval * self.component.time_unit))) return [] self.comp.tick_handlers[0].feeder = MockFeederHandler(self.comp)