← run

bcb-0019

1.000
6/6 tests· lib-knowledge

Proposed solution

```python
import os
import glob
import zipfile

def task_func(directory):
    """
    Zips all files (not including subdirectories) located in the specified directory and returns the path to the created zip file.
    
    Parameters:
    directory (str): The directory path containing the files to be zipped.
    
    Returns:
    str: The path to the generated zip file. Returns None if the directory does not contain any files.
    
    Raises:
    FileNotFoundError: if the specified directory does not exist

    Requirements:
    - os
    - glob
    - zipfile
    
    Notes:
    - The zip name is always 'files.zip'

    Example:
    >>> path = task_func('/path/to/files')
    >>> isinstance(path, str)
    True
    """
    # Check if directory exists
    if not os.path.exists(directory):
        raise FileNotFoundError(f"Directory '{directory}' does not exist")
    
    # Get all files in the directory (not including subdirectories)
    files = glob.glob(os.path.join(directory, '*'))
    files = [f for f in files if os.path.isfile(f)]
    
    # Return None if no files found
    if not files:
        return None
    
    # Create zip file path
    zip_path = os.path.join(directory, 'files.zip')
    
    # Create zip file and add all files
    with zipfile.ZipFile(zip_path, 'w') as zipf:
        for file in files:
            # Add file to zip with just the filename (not full path)
            zipf.write(file, os.path.basename(file))
    
    return zip_path
```

Test output (stdout)

......                                                                   [100%]
6 passed in 0.02s
System prompt
You are an expert programmer. Solve the task exactly as specified. Output your solution as fenced code blocks using the required file name(s) and the exact function/type signatures requested. Prefer correctness; do not include prose outside code unless asked.