Esempio n. 1
0
def ClangdCompleter_GetClangdCommand_NoCustomBinary_test():
    user_options = DefaultOptions()

    # Supported binary in third_party.
    THIRD_PARTY = '/third_party/clangd'
    clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
    with patch('ycmd.completers.cpp.clangd_completer.GetThirdPartyClangd',
               return_value=THIRD_PARTY):
        eq_(clangd_completer.GetClangdCommand(user_options)[0], THIRD_PARTY)
        # With args
        clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
        CLANGD_ARGS = ["1", "2", "3"]
        user_options['clangd_args'] = CLANGD_ARGS
        eq_(clangd_completer.GetClangdCommand(user_options)[1:4], CLANGD_ARGS)

    # No supported binary in third_party.
    clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
    with patch('ycmd.completers.cpp.clangd_completer.GetThirdPartyClangd',
               return_value=None):
        eq_(clangd_completer.GetClangdCommand(user_options), None)

    clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
Esempio n. 2
0
def ClangdCompleter_GetClangdCommand_CustomBinary_test():
    CLANGD_PATH = '/test/clangd'
    user_options = DefaultOptions()
    user_options['clangd_binary_path'] = CLANGD_PATH
    # Supported version.
    with patch('ycmd.completers.cpp.clangd_completer.CheckClangdVersion',
               return_value=True):
        clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
        eq_(clangd_completer.GetClangdCommand(user_options)[0], CLANGD_PATH)

        # No Clangd binary in the given path.
        with patch('ycmd.completers.cpp.clangd_completer.FindExecutable',
                   return_value=None):
            clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
            eq_(clangd_completer.GetClangdCommand(user_options), None)

    # Unsupported version.
    with patch('ycmd.completers.cpp.clangd_completer.CheckClangdVersion',
               return_value=False):
        # Never fall back to the third-party Clangd.
        clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED
        eq_(clangd_completer.GetClangdCommand(user_options), None)

    clangd_completer.CLANGD_COMMAND = clangd_completer.NOT_CACHED