paths_test.py 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. # Copyright (C) 2016 YouCompleteMe contributors
  2. #
  3. # This file is part of YouCompleteMe.
  4. #
  5. # YouCompleteMe is free software: you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation, either version 3 of the License, or
  8. # (at your option) any later version.
  9. #
  10. # YouCompleteMe is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. # GNU General Public License for more details.
  14. #
  15. # You should have received a copy of the GNU General Public License
  16. # along with YouCompleteMe. If not, see <http://www.gnu.org/licenses/>.
  17. from __future__ import unicode_literals
  18. from __future__ import print_function
  19. from __future__ import division
  20. from __future__ import absolute_import
  21. from future import standard_library
  22. standard_library.install_aliases()
  23. from builtins import * # noqa
  24. from ycm.test_utils import MockVimModule
  25. MockVimModule()
  26. from nose.tools import ok_
  27. from ycm.paths import EndsWithPython
  28. def EndsWithPython_Good( path ):
  29. ok_( EndsWithPython( path ) )
  30. def EndsWithPython_Bad( path ):
  31. ok_( not EndsWithPython( path ) )
  32. def EndsWithPython_Python2Paths_test():
  33. python_paths = [
  34. 'python',
  35. 'python2',
  36. '/usr/bin/python2.6',
  37. '/home/user/.pyenv/shims/python2.7',
  38. r'C:\Python26\python.exe'
  39. ]
  40. for path in python_paths:
  41. yield EndsWithPython_Good, path
  42. def EndsWithPython_Python3Paths_test():
  43. python_paths = [
  44. 'python3',
  45. '/usr/bin/python3.3',
  46. '/home/user/.pyenv/shims/python3.3',
  47. r'C:\Python33\python.exe'
  48. ]
  49. for path in python_paths:
  50. yield EndsWithPython_Good, path
  51. def EndsWithPython_BadPaths_test():
  52. not_python_paths = [
  53. None,
  54. '',
  55. '/opt/local/bin/vim',
  56. r'C:\Program Files\Vim\vim74\gvim.exe',
  57. '/usr/bin/python2.5',
  58. '/home/user/.pyenv/shims/python3.2',
  59. ]
  60. for path in not_python_paths:
  61. yield EndsWithPython_Bad, path