Here's a possible implementation using Python's built-in `unittest` module:

```
import unittest
import re

class TestEmailValidation(unittest.TestCase):
    def test_valid_email(self):
        self.assertTrue(is_valid_email('example@example.com'))
        self.assertTrue(is_valid_email('example+test@example.com'))
        self.assertTrue(is_valid_email('example123@example.com'))
        self.assertTrue(is_valid_email('example@example.co.uk'))
        
    def test_invalid_email(self):
        self.assertFalse(is_valid_email('example.com'))
        self.assertFalse(is_valid_email('example@com'))
        self.assertFalse(is_valid_email('example@.com'))
        self.assertFalse(is_valid_email('example@ example.com'))
        self.assertFalse(is_valid_email('example@example.'))
        self.assertFalse(is_valid_email('example@.'))
        self.assertFalse(is_valid_email('example@-example.com'))

def is_valid_email(email: str) -> bool:
    pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
    return bool(re.match(pattern, email))

if __name__ == '__main__':
    unittest.main()
```

This test suite defines two test cases: one for valid email addresses and another one for invalid ones. The `is_valid_email` function uses a regular expression pattern to validate the email address format. The `unittest` module is used to run the test suite and report any failures.
Crea una suite di test in Python per verificare se una stringa di input è un indirizzo email valido.