test_sort_stronger_modules.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. from tools.mypy_helpers.sort_stronger_modules import main
  2. def test_sort_stronger_modules(tmp_path):
  3. src = """\
  4. # before
  5. # begin: stronger typing
  6. [[tool.mypy.overrides]]
  7. module = [
  8. "mod2",
  9. "mod1",
  10. "mod3",
  11. ]
  12. some_setting = true
  13. # end: stronger typing
  14. # after
  15. """
  16. expected = """\
  17. # before
  18. # begin: stronger typing
  19. [[tool.mypy.overrides]]
  20. module = [
  21. "mod1",
  22. "mod2",
  23. "mod3",
  24. ]
  25. some_setting = true
  26. # end: stronger typing
  27. # after
  28. """
  29. f = tmp_path.joinpath("f")
  30. f.write_text(src)
  31. assert main((str(f),)) == 1
  32. assert f.read_text() == expected
  33. assert main((str(f),)) == 0
  34. def test_removes_duplicates(tmp_path):
  35. src = """\
  36. # begin: stronger typing
  37. [[tool.mypy.overrides]]
  38. module = [
  39. "mod1",
  40. "mod1",
  41. ]
  42. some_setting = true
  43. # end: stronger typing
  44. """
  45. expected = """\
  46. # begin: stronger typing
  47. [[tool.mypy.overrides]]
  48. module = [
  49. "mod1",
  50. ]
  51. some_setting = true
  52. # end: stronger typing
  53. """
  54. f = tmp_path.joinpath("f")
  55. f.write_text(src)
  56. assert main((str(f),)) == 1
  57. assert f.read_text() == expected