You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

logging_tests.py 952B

12345678910111213141516171819202122232425262728
  1. from logging import LogRecord
  2. import nose.tools
  3. from oscar.core.logging.formatters import PciFormatter
  4. data = [
  5. ('some string', 'some string'),
  6. ('here is my bankcard 1000010000000007', 'here is my bankcard XXXX-XXXX-XXXX-XXXX'),
  7. ('here is my bankcard 1000-0100-0000-0007', 'here is my bankcard XXXX-XXXX-XXXX-XXXX'),
  8. ('here is my bankcard 1000 0100 0000 0007', 'here is my bankcard XXXX-XXXX-XXXX-XXXX'),
  9. ('here is my bankcard 10 00 01-00 0-000-0007', 'here is my bankcard XXXX-XXXX-XXXX-XXXX'),
  10. ]
  11. def assert_message_filtered_correctly(string, expected):
  12. formatter = PciFormatter()
  13. record = LogRecord(
  14. name=None, level=None, pathname='', lineno=0,
  15. msg=string, args=None, exc_info=None)
  16. nose.tools.eq_(formatter.format(record), expected)
  17. def test_pci_formatter():
  18. """PCI logging formatter """
  19. for string, expected in data:
  20. yield assert_message_filtered_correctly, string, expected