Home / File/ zip-repository.test.ts — mcp Source File

zip-repository.test.ts — mcp Source File

Architecture documentation for zip-repository.test.ts, a typescript file in the mcp codebase. 9 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  ec9e4497_2111_ae78_c449_98d39f784d20["zip-repository.test.ts"]
  b00e0b6e_8e66_44d2_f709_c8c6bbb476c9["zip-repository.ts"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> b00e0b6e_8e66_44d2_f709_c8c6bbb476c9
  bbbd3356_722d_4bf8_09d2_706412487d25["zipRepository"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> bbbd3356_722d_4bf8_09d2_706412487d25
  4ac071e8_cf9e_8aff_e8f4_ae8e57382223["cleanupOldZips"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> 4ac071e8_cf9e_8aff_e8f4_ae8e57382223
  edd355c9_0b41_8de8_063a_3f09fe890315["ZipOptions"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> edd355c9_0b41_8de8_063a_3f09fe890315
  9304f204_de38_9fc9_faf0_8f287591dc52["globals"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> 9304f204_de38_9fc9_faf0_8f287591dc52
  222b60e9_a6a9_f11c_deba_8f76f9527fbc["fs"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> 222b60e9_a6a9_f11c_deba_8f76f9527fbc
  326b2a40_61be_c67e_3a48_e7ce3411f260["path"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> 326b2a40_61be_c67e_3a48_e7ce3411f260
  70624398_825e_285a_418a_9ee41ac17b82["os"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> 70624398_825e_285a_418a_9ee41ac17b82
  b45e6fad_5556_b868_9218_a5f18595c9e0["crypto"]
  ec9e4497_2111_ae78_c449_98d39f784d20 --> b45e6fad_5556_b868_9218_a5f18595c9e0
  style ec9e4497_2111_ae78_c449_98d39f784d20 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { describe, it, expect, beforeEach, afterEach, jest } from '@jest/globals';
import { promises as fs } from 'fs';
import { join, resolve } from 'path';
import { tmpdir } from 'os';
import { zipRepository, cleanupOldZips, ZipOptions } from './zip-repository';
import { randomBytes } from 'crypto';

describe('zip-repository', () => {
  let testDir: string;

  beforeEach(async () => {
    // Create a temporary test directory
    testDir = join(tmpdir(), `test-zip-${randomBytes(8).toString('hex')}`);
    await fs.mkdir(testDir, { recursive: true });
  });

  afterEach(async () => {
    // Cleanup test directory
    try {
      await fs.rm(testDir, { recursive: true, force: true });
    } catch (error) {
      // Ignore cleanup errors
    }
  });

  describe('zipRepository', () => {
    describe('basic functionality', () => {
      it('should create a ZIP file for a valid directory', async () => {
        // Create a simple file structure
        await fs.writeFile(join(testDir, 'test.txt'), 'Hello World');
        await fs.writeFile(join(testDir, 'test2.txt'), 'Hello Again');

        const result = await zipRepository(testDir);

        expect(result.path).toBeTruthy();
        expect(result.fileCount).toBeGreaterThan(0);
        expect(result.sizeBytes).toBeGreaterThan(0);
        expect(typeof result.cleanup).toBe('function');

        // Verify ZIP file exists
        const stats = await fs.stat(result.path);
        expect(stats.isFile()).toBe(true);

        // Cleanup
        await result.cleanup();
      });

      it('should include file count in results', async () => {
        // Create 3 files
        await fs.writeFile(join(testDir, 'file1.txt'), 'content1');
        await fs.writeFile(join(testDir, 'file2.txt'), 'content2');
        await fs.writeFile(join(testDir, 'file3.txt'), 'content3');

        const result = await zipRepository(testDir);

        expect(result.fileCount).toBe(3);

        await result.cleanup();
      });

// ... (292 more lines)

Dependencies

Frequently Asked Questions

What does zip-repository.test.ts do?
zip-repository.test.ts is a source file in the mcp codebase, written in typescript. It belongs to the UtilityLibrary domain.
What does zip-repository.test.ts depend on?
zip-repository.test.ts imports 9 module(s): ZipOptions, cleanupOldZips, crypto, fs, globals, os, path, zip-repository.ts, and 1 more.
Where is zip-repository.test.ts in the architecture?
zip-repository.test.ts is located at src/utils/zip-repository.test.ts (domain: UtilityLibrary, directory: src/utils).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free