oneshot_warning.py 1014 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!/usr/bin/env python3
  2. from mmgen.common import *
  3. cmd_args = opts.init()
  4. class foo(oneshot_warning):
  5. color = 'purple'
  6. message = 'foo variant {} selected'
  7. class bar(oneshot_warning):
  8. color = 'yellow'
  9. message = 'bar is experimental software'
  10. class wg(oneshot_warning_group):
  11. class foo:
  12. color = 'yellow'
  13. message = 'foo is experimental software. Proceed at your own risk'
  14. class bar:
  15. color = 'red'
  16. message = 'The bar command is {} and can break your {}!!!'
  17. class baz:
  18. color = 'orange'
  19. message = 'baz variant {} selected'
  20. for i in (1,2,3):
  21. msg('\npw')
  22. for k in ('A','B'):
  23. ret = pwfile_reuse_warning(k).warning_shown
  24. assert ret == (i != 1), 'warning_shown incorrect'
  25. msg('wg1')
  26. wg('foo')
  27. msg('wg2')
  28. wg('bar',fmt_args=['dangerous','computer'])
  29. msg('wg3')
  30. wg('baz',div='alpha',fmt_args=['alpha'])
  31. msg('wg4')
  32. wg('baz',div='beta',fmt_args=['beta'])
  33. msg('w1')
  34. foo(div='alpha',fmt_args=['alpha'])
  35. msg('w2')
  36. foo(div='beta',fmt_args=['beta'])
  37. msg('w3')
  38. bar()
  39. msg('bottom')