def expandProjectPath(project, fileName):
    paths = project.getSources() \
        + project.getPathList(project.debugSources) \
        + project.getTestSources()

    minIndex = 4294967295
    foundPath = None
    for source in paths:
        sourcePath = os.path.join(project.path, source)
        index = sourcePath.find(fileName)
        if index >= 0 and index < minIndex:
            minIndex = index
            foundPath = sourcePath
    
    if foundPath:
        return foundPath
            
    for child in project.getChildProjects():
        fullPath = expandProjectPath(child, fileName)
        if fullPath:
            return fullPath
dataset/ETHPy150Open joehewitt/devon/devon/jump.py/expandProjectPath/original