class SmtpSMSTestCase(MyTestCase): missing_config = {"MAILSERVER": "localhost:25"} simple_config = { "MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**" } wrong_config = { "MAILSERVER": "this.server.does.not.exist", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**" } auth_config = { "MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**", "MAILUSER": "******", "MAILPASSWORD": "******" } identifier_config = { "MAILTO": "*****@*****.**", "IDENTIFIER": "myServer" } def setUp(self): self.missing_provider = SmtpSMSProvider() self.missing_provider.load_config(self.missing_config) self.simple_provider = SmtpSMSProvider() self.simple_provider.load_config(self.simple_config) self.wrong_provider = SmtpSMSProvider() self.wrong_provider.load_config(self.wrong_config) self.auth_provider = SmtpSMSProvider() self.auth_provider.load_config(self.auth_config) self.identifier_provider = SmtpSMSProvider() self.identifier_provider.load_config(self.identifier_config) def test_01_missing_config(self): self.assertRaises(SMSError, self.missing_provider.submit_message, "1234356", "Hello") @smtpmock.activate def test_02_simple_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.simple_provider.submit_message("123456", "Hello") self.assertRaises(r) @smtpmock.activate def test_03_simple_config_fail(self): smtpmock.setdata( response={"*****@*****.**": (550, "mailbox unavailable")}) self.assertRaises(SMSError, self.simple_provider.submit_message, "123456", "Hello") def test_04_generic_exception(self): self.assertRaises(Exception, self.wrong_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_05_auth_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.auth_provider.submit_message("123456", "Hello") self.assertTrue(r) @smtpmock.activate def test_06_auth_config_fail(self): smtpmock.setdata(response={}, authenticated=False, config=self.auth_config) self.assertRaises(SMSError, self.auth_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_07_identifier_config_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.identifier_provider.submit_message("123456", "Halo") self.assertTrue(r)
class SmtpSMSTestCase(MyTestCase): missing_config = {"MAILSERVER": "localhost:25"} simple_config = {"MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**"} wrong_config = {"MAILSERVER": "this.server.does.not.exist", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**"} auth_config = {"MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**", "MAILUSER": "******", "MAILPASSWORD": "******"} identifier_config = {"MAILTO": "*****@*****.**", "IDENTIFIER": "myServer"} def setUp(self): self.missing_provider = SmtpSMSProvider() self.missing_provider.load_config(self.missing_config) self.simple_provider = SmtpSMSProvider() self.simple_provider.load_config(self.simple_config) self.wrong_provider = SmtpSMSProvider() self.wrong_provider.load_config(self.wrong_config) self.auth_provider = SmtpSMSProvider() self.auth_provider.load_config(self.auth_config) self.identifier_provider = SmtpSMSProvider() self.identifier_provider.load_config(self.identifier_config) def test_01_missing_config(self): self.assertRaises(SMSError, self.missing_provider.submit_message, "1234356", "Hello") @smtpmock.activate def test_02_simple_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.simple_provider.submit_message("123456", "Hello") self.assertRaises(r) @smtpmock.activate def test_03_simple_config_fail(self): smtpmock.setdata(response={"*****@*****.**": (550, "mailbox unavailable")}) self.assertRaises(SMSError, self.simple_provider.submit_message, "123456", "Hello") def test_04_generic_exception(self): self.assertRaises(Exception, self.wrong_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_05_auth_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.auth_provider.submit_message("123456", "Hello") self.assertTrue(r) @smtpmock.activate def test_06_auth_config_fail(self): smtpmock.setdata(response={}, authenticated=False, config=self.auth_config) self.assertRaises(SMSError, self.auth_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_07_identifier_config_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.identifier_provider.submit_message("123456", "Halo") self.assertTrue(r) @smtpmock.activate def test_08_smsgateway_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) identifier = "myMail" provider_module = "privacyidea.lib.smsprovider.SmtpSMSProvider" \ ".SmtpSMSProvider" id = set_smsgateway(identifier, provider_module, description="test", options={"SMTPIDENTIFIER": "myServer", "MAILTO": "*****@*****.**", "SUBJECT": "{phone}", "BODY": "{otp}"}) self.assertTrue(id > 0) sms = create_sms_instance(identifier) r = sms.submit_message("123456", "Halo") self.assertTrue(r)
class SmtpSMSTestCase(MyTestCase): missing_config = {"MAILSERVER": "localhost:25"} simple_config = { "MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**" } wrong_config = { "MAILSERVER": "this.server.does.not.exist", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**" } auth_config = { "MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**", "MAILUSER": "******", "MAILPASSWORD": "******" } identifier_config = { "MAILTO": "*****@*****.**", "IDENTIFIER": "myServer" } def setUp(self): self.missing_provider = SmtpSMSProvider() self.missing_provider.load_config(self.missing_config) self.simple_provider = SmtpSMSProvider() self.simple_provider.load_config(self.simple_config) self.wrong_provider = SmtpSMSProvider() self.wrong_provider.load_config(self.wrong_config) self.auth_provider = SmtpSMSProvider() self.auth_provider.load_config(self.auth_config) self.identifier_provider = SmtpSMSProvider() self.identifier_provider.load_config(self.identifier_config) def test_01_missing_config(self): self.assertRaises(SMSError, self.missing_provider.submit_message, "1234356", "Hello") @smtpmock.activate def test_02_simple_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.simple_provider.submit_message("123456", "Hello") self.assertTrue(r) @smtpmock.activate def test_03_simple_config_fail(self): smtpmock.setdata( response={"*****@*****.**": (550, "mailbox unavailable")}) self.assertRaises(SMSError, self.simple_provider.submit_message, "123456", "Hello") def test_04_generic_exception(self): self.assertRaises(Exception, self.wrong_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_05_auth_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.auth_provider.submit_message("123456", "Hello") self.assertTrue(r) @smtpmock.activate def test_06_auth_config_fail(self): smtpmock.setdata(response={}, authenticated=False, config=self.auth_config) self.assertRaises(SMSError, self.auth_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_07_identifier_config_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.identifier_provider.submit_message("123456", "Halo") self.assertTrue(r) @smtpmock.activate def test_08_smsgateway_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) identifier = "myMail" provider_module = "privacyidea.lib.smsprovider.SmtpSMSProvider" \ ".SmtpSMSProvider" id = set_smsgateway(identifier, provider_module, description="test", options={ "SMTPIDENTIFIER": "myServer", "MAILTO": "*****@*****.**", "SUBJECT": "{phone}", "BODY": "{otp}" }) self.assertTrue(id > 0) sms = create_sms_instance(identifier) r = sms.submit_message("123456", "Halo") self.assertTrue(r)
class SmtpSMSTestCase(MyTestCase): missing_config = {"MAILSERVER": "localhost:25"} simple_config = {"MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**"} wrong_config = {"MAILSERVER": "this.server.does.not.exist", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**"} auth_config = {"MAILSERVER": "localhost:25", "MAILTO": "*****@*****.**", "MAILSENDER": "*****@*****.**", "MAILUSER": "******", "MAILPASSWORD": "******"} identifier_config = {"MAILTO": "*****@*****.**", "IDENTIFIER": "myServer"} def setUp(self): self.missing_provider = SmtpSMSProvider() self.missing_provider.load_config(self.missing_config) self.simple_provider = SmtpSMSProvider() self.simple_provider.load_config(self.simple_config) self.wrong_provider = SmtpSMSProvider() self.wrong_provider.load_config(self.wrong_config) self.auth_provider = SmtpSMSProvider() self.auth_provider.load_config(self.auth_config) self.identifier_provider = SmtpSMSProvider() self.identifier_provider.load_config(self.identifier_config) def test_01_missing_config(self): self.assertRaises(SMSError, self.missing_provider.submit_message, "1234356", "Hello") @smtpmock.activate def test_02_simple_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.simple_provider.submit_message("123456", "Hello") self.assertRaises(r) @smtpmock.activate def test_03_simple_config_fail(self): smtpmock.setdata(response={"*****@*****.**": (550, "mailbox unavailable")}) self.assertRaises(SMSError, self.simple_provider.submit_message, "123456", "Hello") def test_04_generic_exception(self): self.assertRaises(Exception, self.wrong_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_05_auth_config_success(self): smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.auth_provider.submit_message("123456", "Hello") self.assertTrue(r) @smtpmock.activate def test_06_auth_config_fail(self): smtpmock.setdata(response={}, authenticated=False, config=self.auth_config) self.assertRaises(SMSError, self.auth_provider.submit_message, "123456", "Hello") @smtpmock.activate def test_07_identifier_config_success(self): r = add_smtpserver("myServer", "1.2.3.4", sender="*****@*****.**") self.assertTrue(r > 0) smtpmock.setdata(response={"*****@*****.**": (200, "OK")}) r = self.identifier_provider.submit_message("123456", "Halo") self.assertTrue(r)