github.com/juju/juju@v0.0.0-20240430160146-1752b71fcf00/worker/uniter/runner/jujuc/jujuctesting/payloads.go (about) 1 // Copyright 2022 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package jujuctesting 5 6 import "github.com/juju/juju/core/payloads" 7 8 // ContextPayloads is a test double for jujuc.ContextResources. 9 type ContextPayloads struct { 10 contextBase 11 } 12 13 // GetPayload implements jujuc.ContextPayloads. 14 func (c *ContextPayloads) GetPayload(class, id string) (*payloads.Payload, error) { 15 c.stub.AddCall("GetPayload", class, id) 16 return &payloads.Payload{}, nil 17 } 18 19 // TrackPayload implements jujuc.ContextPayloads. 20 func (c *ContextPayloads) TrackPayload(payload payloads.Payload) error { 21 c.stub.AddCall("TrackPayload", payload) 22 return nil 23 } 24 25 // UntrackPayload implements jujuc.ContextPayloads. 26 func (c *ContextPayloads) UntrackPayload(class, id string) error { 27 c.stub.AddCall("UntrackPayload", class, id) 28 return nil 29 } 30 31 // SetPayloadStatus implements jujuc.ContextPayloads. 32 func (c *ContextPayloads) SetPayloadStatus(class, id, status string) error { 33 c.stub.AddCall("SetPayloadStatus", class, id, status) 34 return nil 35 } 36 37 // ListPayloads implements jujuc.ContextPayloads. 38 func (c *ContextPayloads) ListPayloads() ([]string, error) { 39 c.stub.AddCall("ListPayloads") 40 return nil, nil 41 } 42 43 // FlushPayloads implements jujuc.ContextPayloads. 44 func (c *ContextPayloads) FlushPayloads() error { 45 c.stub.AddCall("FlushPayloads") 46 return nil 47 }