52 lines
2.1 KiB
Go
52 lines
2.1 KiB
Go
/*
|
|
* Copyright 2024 CloudWeGo Authors
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
// Package mock provides mock implementations for testing purposes.
|
|
//
|
|
// This package aims to provide mock implementations for interfaces in the components package,
|
|
// making it easier to use in testing environments. It includes mock implementations for
|
|
// various core components such as retrievers, tools, message handlers, and graph runners.
|
|
//
|
|
// Directory Structure:
|
|
// - components/: Contains mock implementations for various components
|
|
// - retriever/: Provides mock implementation for the Retriever interface
|
|
// - retriever_mock.go: Mock implementation for document retrieval
|
|
// - tool/: Mock implementations for tool-related interfaces
|
|
// - message/: Mock implementations for message handling components
|
|
// - graph/: Mock implementations for graph execution components
|
|
// - stream/: Mock implementations for streaming components
|
|
//
|
|
// Usage:
|
|
// These mock implementations are primarily used in unit tests and integration tests,
|
|
// allowing developers to conduct tests without depending on actual external services.
|
|
// Each mock component strictly follows the contract of its corresponding interface
|
|
// while providing controllable behaviors and results.
|
|
//
|
|
// Examples:
|
|
//
|
|
// - Using mock retriever:
|
|
// retriever := mock.NewMockRetriever()
|
|
// // Configure retriever behavior
|
|
//
|
|
// - Using mock tool:
|
|
// tool := mock.NewMockTool()
|
|
// // Configure tool behavior
|
|
//
|
|
// - Using mock graph runner:
|
|
// runner := mock.NewMockGraphRunner()
|
|
// // Configure runner behavior
|
|
package mock
|