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)
Domain
Dependencies
- ZipOptions
- cleanupOldZips
- crypto
- fs
- globals
- os
- path
- zip-repository.ts
- zipRepository
Source
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