type fakeCsiDriverClient … func newFakeCsiDriverClient(t *testing.T, stagingCapable bool) *fakeCsiDriverClient { … } func newFakeCsiDriverClientWithExpansion(t *testing.T, stagingCapable bool, expansionSet bool) *fakeCsiDriverClient { … } func newFakeCsiDriverClientWithVolumeStats(t *testing.T, volumeStatsSet bool) *fakeCsiDriverClient { … } func newFakeCsiDriverClientWithVolumeStatsAndCondition(t *testing.T, volumeStatsSet, volumeConditionSet, setVolumeStat, setVolumeCondition bool) *fakeCsiDriverClient { … } func newFakeCsiDriverClientWithVolumeMountGroup(t *testing.T, stagingCapable, volumeMountGroupSet bool) *fakeCsiDriverClient { … } func (c *fakeCsiDriverClient) NodeGetInfo(ctx context.Context) ( nodeID string, maxVolumePerNode int64, accessibleTopology map[string]string, err error) { … } func (c *fakeCsiDriverClient) NodeGetVolumeStats(ctx context.Context, volID string, targetPath string) ( usageCountMap *volume.Metrics, err error) { … } func (c *fakeCsiDriverClient) NodeSupportsVolumeStats(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) NodePublishVolume( ctx context.Context, volID string, readOnly bool, stagingTargetPath string, targetPath string, accessMode api.PersistentVolumeAccessMode, publishContext map[string]string, volumeContext map[string]string, secrets map[string]string, fsType string, mountOptions []string, fsGroup *int64, ) error { … } func (c *fakeCsiDriverClient) NodeUnpublishVolume(ctx context.Context, volID string, targetPath string) error { … } func (c *fakeCsiDriverClient) NodeStageVolume(ctx context.Context, volID string, publishContext map[string]string, stagingTargetPath string, fsType string, accessMode api.PersistentVolumeAccessMode, secrets map[string]string, volumeContext map[string]string, mountOptions []string, fsGroup *int64, ) error { … } func (c *fakeCsiDriverClient) NodeUnstageVolume(ctx context.Context, volID, stagingTargetPath string) error { … } func (c *fakeCsiDriverClient) NodeSupportsNodeExpand(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) NodeSupportsStageUnstage(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) NodeSupportsVolumeMountGroup(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) NodeExpandVolume(ctx context.Context, opts csiResizeOptions) (resource.Quantity, error) { … } func (c *fakeCsiDriverClient) nodeSupportsVolumeCondition(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) NodeSupportsSingleNodeMultiWriterAccessMode(ctx context.Context) (bool, error) { … } func (c *fakeCsiDriverClient) nodeSupportsCapability(ctx context.Context, capabilityType csipbv1.NodeServiceCapability_RPC_Type) (bool, error) { … } func (c *fakeCsiDriverClient) nodeGetCapabilities(ctx context.Context) ([]*csipbv1.NodeServiceCapability, error) { … } func setupClient(t *testing.T, stageUnstageSet bool) csiClient { … } func setupClientWithExpansion(t *testing.T, stageUnstageSet bool, expansionSet bool) csiClient { … } func setupClientWithVolumeStatsAndCondition(t *testing.T, volumeStatsSet, volumeConditionSet, setVolumeStat, setVolumecondition bool) csiClient { … } func setupClientWithVolumeStats(t *testing.T, volumeStatsSet bool) csiClient { … } func setupClientWithVolumeMountGroup(t *testing.T, stageUnstageSet bool, volumeMountGroupSet bool) csiClient { … } func checkErr(t *testing.T, expectedAnError bool, actualError error) { … } func TestClientNodeGetInfo(t *testing.T) { … } func TestClientNodePublishVolume(t *testing.T) { … } func TestClientNodeUnpublishVolume(t *testing.T) { … } func TestClientNodeStageVolume(t *testing.T) { … } func TestClientNodeUnstageVolume(t *testing.T) { … } func TestClientNodeSupportsStageUnstage(t *testing.T) { … } func TestClientNodeSupportsNodeExpand(t *testing.T) { … } func TestClientNodeSupportsVolumeStats(t *testing.T) { … } func TestClientNodeSupportsVolumeMountGroup(t *testing.T) { … } func testClientNodeSupportsCapabilities( t *testing.T, capabilityMethodToTest func(*csiDriverClient) (bool, error), nodeClientGenerator func(bool) *fake.NodeClient) { … } func TestNodeExpandVolume(t *testing.T) { … } type VolumeStatsOptions … func TestVolumeHealthEnable(t *testing.T) { … } func TestVolumeHealthDisable(t *testing.T) { … } func TestVolumeStats(t *testing.T) { … } func TestAccessModeMapping(t *testing.T) { … }