Documentation
¶
Index ¶
- func CreateTestFile(t *testing.T, filename string, content string) string
- func CreateTestJSONFile(t *testing.T, filename string, data interface{}) string
- func LoadTestData(t *testing.T, filename string) []byte
- func LoadTestDataAsString(t *testing.T, filename string) string
- func NewMockTask(taskID contract.TaskID, commandID contract.TaskCommandID, ...) *provider.Base
- func NewMockTaskConfig(taskID contract.TaskID, commandID contract.TaskCommandID) *provider.TaskConfig
- func NewMockTaskConfigWithSnapshot(taskID contract.TaskID, commandID contract.TaskCommandID, snapshot interface{}) *provider.TaskConfig
- func RegisterMockTask(storage *contractmocks.MockTaskResultStore, taskID contract.TaskID, ...)
- type StubIDGenerator
- type StubTask
- func (s *StubTask) Cancel()
- func (s *StubTask) CommandID() contract.TaskCommandID
- func (s *StubTask) Elapsed() time.Duration
- func (s *StubTask) ID() contract.TaskID
- func (s *StubTask) InstanceID() contract.TaskInstanceID
- func (s *StubTask) IsCanceled() bool
- func (s *StubTask) NotifierID() contract.NotifierID
- func (s *StubTask) Run(ctx context.Context, ns contract.NotificationSender)
- func (s *StubTask) RunCount() int64
- func (s *StubTask) WaitCanceled() <-chan struct{}
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateTestFile ¶
CreateTestFile 임시 디렉토리에 파일을 생성하고 경로를 반환합니다.
func CreateTestJSONFile ¶
CreateTestJSONFile 임의의 데이터를 JSON으로 변환하여 임시 파일로 저장하고 경로를 반환합니다.
func LoadTestData ¶
LoadTestData testdata 디렉토리에서 파일을 읽어옵니다. 실패 시 t.Fatalf로 테스트를 중단합니다.
func LoadTestDataAsString ¶
LoadTestDataAsString testdata 디렉토리에서 파일을 읽어 문자열로 반환합니다.
func NewMockTask ¶
func NewMockTask(taskID contract.TaskID, commandID contract.TaskCommandID, instanceID contract.TaskInstanceID, notifierID contract.NotifierID, runBy contract.TaskRunBy, storage contract.TaskResultStore, f fetcher.Fetcher, newSnapshot provider.NewSnapshotFunc) *provider.Base
NewMockTask 테스트를 위한 Task 인스턴스를 생성하고 Mock Storage를 연결하여 반환합니다.
func NewMockTaskConfig ¶
func NewMockTaskConfig(taskID contract.TaskID, commandID contract.TaskCommandID) *provider.TaskConfig
NewMockTaskConfig 테스트를 위한 기본 Task Config 인스턴스를 생성합니다.
func NewMockTaskConfigWithSnapshot ¶
func NewMockTaskConfigWithSnapshot(taskID contract.TaskID, commandID contract.TaskCommandID, snapshot interface{}) *provider.TaskConfig
NewMockTaskConfigWithSnapshot 테스트를 위한 Task Config 인스턴스를 스냅샷과 함께 생성합니다.
func RegisterMockTask ¶
func RegisterMockTask(storage *contractmocks.MockTaskResultStore, taskID contract.TaskID, commandID contract.TaskCommandID, snapshot interface{})
RegisterMockTask Mock TaskResultStore에 특정 작업 결과를 미리 등록합니다.
Types ¶
type StubIDGenerator ¶
type StubIDGenerator struct {
// Prefix 생성된 ID 앞에 붙을 접두사입니다. (기본값: "stub-id-")
Prefix string
// FixedID 설정된 경우 항상 이 ID를 반환합니다.
FixedID contract.TaskInstanceID
// contains filtered or unexported fields
}
StubIDGenerator 테스트용 단순 ID 생성기 (매번 고유 ID 반환)
func (*StubIDGenerator) New ¶
func (s *StubIDGenerator) New() contract.TaskInstanceID
type StubTask ¶
type StubTask struct {
// NotifierIDValue 설정된 경우 NotifierID() 메서드가 이 값을 반환합니다.
// 기본값: "test-notifier"
NotifierIDValue contract.NotifierID
// RunFunc 설정된 경우 Run() 메서드 호출 시 실행됩니다.
// 설정되지 않은 경우 기본적으로 블로킹(대기) 동작을 수행합니다.
RunFunc func(ctx context.Context, ns contract.NotificationSender)
// FixedElapsed 설정된 경우 Elapsed() 메서드가 항상 이 값을 반환합니다.
FixedElapsed time.Duration
// contains filtered or unexported fields
}
StubTask는 테스트용 Task (Shell/Stub) 구현체입니다. 실제 로직 없이 실행 요청을 대기하거나 취소 신호를 처리하는 용도로 사용됩니다.
func NewStubTask ¶
func NewStubTask(id contract.TaskID, cmdID contract.TaskCommandID, instID contract.TaskInstanceID) *StubTask
func (*StubTask) CommandID ¶
func (s *StubTask) CommandID() contract.TaskCommandID
func (*StubTask) InstanceID ¶
func (s *StubTask) InstanceID() contract.TaskInstanceID
func (*StubTask) IsCanceled ¶
func (*StubTask) NotifierID ¶
func (s *StubTask) NotifierID() contract.NotifierID
func (*StubTask) WaitCanceled ¶
func (s *StubTask) WaitCanceled() <-chan struct{}
WaitCanceled Task가 취소될 때 (Cancel 호출 시) 닫히는 채널을 반환합니다. RunFunc 등 사용자 정의 테스트 동작에서 취소를 감지하고 종료하는 데 사용됩니다.