Back to skills
extension
Category: Development & EngineeringNo API key required

libharness

libharness - Test harness and mock infrastructure. createMockStorage, createMockConfig, createMockLogger provide framework mocks. createMockMemoryClient, createMockLlmClient, createMockAgentClient provide service client mocks. createMockGrpcCall for gRPC testing. Use for unit testing services and packages with isolated dependencies.

personAuthor: jakexiaohubgithub

libharness Skill

When to Use

  • Writing unit tests for services and packages
  • Mocking external dependencies (storage, config, logging)
  • Creating isolated test environments
  • Testing gRPC service implementations

Key Concepts

Framework mocks: createMockStorage, createMockConfig, createMockLogger provide test doubles for core infrastructure.

Client mocks: createMockMemoryClient, createMockLlmClient, etc. provide test doubles for gRPC service clients.

Fixtures: Pre-configured test data and assertion helpers.

Usage Patterns

Pattern 1: Mock infrastructure

import {
  createMockConfig,
  createMockStorage,
  createMockLogger,
} from "@copilot-ld/libharness";

const config = createMockConfig("test-service");
const storage = createMockStorage();
const logger = createMockLogger();

Pattern 2: Mock service clients

import { createMockLlmClient } from "@copilot-ld/libharness";

const llmClient = createMockLlmClient({
  completionResponse: { content: "Hello" },
});

Integration

Used across all test files. Requires libtype for generated type mocks.