test_audiogen_randomdir.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. from pathlib import Path
  2. from larigira.audiogen_randomdir import candidates
  3. def P(pypathlocal):
  4. return Path(str(pypathlocal))
  5. def test_txt_files_are_excluded(tmpdir):
  6. p = tmpdir.join("foo.txt")
  7. p.write("")
  8. assert len(candidates([P(p)])) == 0
  9. assert len(candidates([P(tmpdir)])) == 0
  10. def test_nested_txt_files_are_excluded(tmpdir):
  11. p = tmpdir.mkdir("one").mkdir("two").join("foo.txt")
  12. p.write("")
  13. assert len(candidates([P(p)])) == 0
  14. assert len(candidates([P(tmpdir)])) == 0
  15. def test_mp3_files_are_considered(tmpdir):
  16. p = tmpdir.join("foo.mp3")
  17. p.write("")
  18. assert len(candidates([P(p)])) == 1
  19. assert len(candidates([P(tmpdir)])) == 1
  20. def test_nested_mp3_files_are_considered(tmpdir):
  21. p = tmpdir.mkdir("one").mkdir("two").join("foo.mp3")
  22. p.write("")
  23. assert len(candidates([P(p)])) == 1
  24. assert len(candidates([P(tmpdir)])) == 1
  25. def test_same_name(tmpdir):
  26. """file with same name on different dir should not be confused"""
  27. p = tmpdir.mkdir("one").mkdir("two").join("foo.mp3")
  28. p.write("")
  29. p = tmpdir.join("foo.mp3")
  30. p.write("")
  31. assert len(candidates([P(tmpdir)])) == 2
  32. def test_unknown_mime_ignore(tmpdir):
  33. p = tmpdir.join("foo.???")
  34. p.write("")
  35. assert len(candidates([P(tmpdir)])) == 0
  36. def test_unknown_mime_nocrash(tmpdir):
  37. p = tmpdir.join("foo.???")
  38. p.write("")
  39. p = tmpdir.join("foo.ogg")
  40. p.write("")
  41. assert len(candidates([P(tmpdir)])) == 1