This repository has been archived by the owner on May 12, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 373
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
virtcontainers: storage: Add a noop version of filesystem
This noop implementation of resourceStorage will allow for easier unit testing of some sandbox functions. Fixes #632 Signed-off-by: Sebastien Boeuf <[email protected]>
- Loading branch information
Sebastien Boeuf
committed
Aug 23, 2018
1 parent
3f45818
commit 26f0430
Showing
2 changed files
with
300 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
// Copyright (c) 2018 Intel Corporation | ||
// | ||
// SPDX-License-Identifier: Apache-2.0 | ||
// | ||
|
||
package virtcontainers | ||
|
||
import ( | ||
"github.com/kata-containers/runtime/virtcontainers/device/api" | ||
) | ||
|
||
type noopResourceStorage struct{} | ||
|
||
func (n *noopResourceStorage) createAllResources(sandbox *Sandbox) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) containerURI(sandboxID, containerID string, resource sandboxResource) (string, string, error) { | ||
return "", "", nil | ||
} | ||
|
||
func (n *noopResourceStorage) sandboxURI(sandboxID string, resource sandboxResource) (string, string, error) { | ||
return "", "", nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeSandboxResource(sandboxID string, resource sandboxResource, data interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) deleteSandboxResources(sandboxID string, resources []sandboxResource) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchSandboxConfig(sandboxID string) (SandboxConfig, error) { | ||
return SandboxConfig{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchSandboxState(sandboxID string) (State, error) { | ||
return State{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchSandboxNetwork(sandboxID string) (NetworkNamespace, error) { | ||
return NetworkNamespace{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeSandboxNetwork(sandboxID string, networkNS NetworkNamespace) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchSandboxDevices(sandboxID string) ([]api.Device, error) { | ||
return []api.Device{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeSandboxDevices(sandboxID string, devices []api.Device) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchHypervisorState(sandboxID string, state interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeHypervisorState(sandboxID string, state interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchAgentState(sandboxID string, state interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeAgentState(sandboxID string, state interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeContainerResource(sandboxID, containerID string, resource sandboxResource, data interface{}) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) deleteContainerResources(sandboxID, containerID string, resources []sandboxResource) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchContainerConfig(sandboxID, containerID string) (ContainerConfig, error) { | ||
return ContainerConfig{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchContainerState(sandboxID, containerID string) (State, error) { | ||
return State{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchContainerProcess(sandboxID, containerID string) (Process, error) { | ||
return Process{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeContainerProcess(sandboxID, containerID string, process Process) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchContainerMounts(sandboxID, containerID string) ([]Mount, error) { | ||
return []Mount{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeContainerMounts(sandboxID, containerID string, mounts []Mount) error { | ||
return nil | ||
} | ||
|
||
func (n *noopResourceStorage) fetchContainerDevices(sandboxID, containerID string) ([]ContainerDevice, error) { | ||
return []ContainerDevice{}, nil | ||
} | ||
|
||
func (n *noopResourceStorage) storeContainerDevices(sandboxID, containerID string, devices []ContainerDevice) error { | ||
return nil | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,188 @@ | ||
// Copyright (c) 2018 Intel Corporation | ||
// | ||
// SPDX-License-Identifier: Apache-2.0 | ||
// | ||
|
||
package virtcontainers | ||
|
||
import ( | ||
"testing" | ||
|
||
"github.com/kata-containers/runtime/virtcontainers/device/api" | ||
"github.com/stretchr/testify/assert" | ||
) | ||
|
||
func TestNoopCreateAllResources(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.createAllResources(nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopContainerURI(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, _, err := n.containerURI("", "", 0) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopSandboxURI(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, _, err := n.sandboxURI("", 0) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreSandboxResource(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeSandboxResource("", 0, nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopDeleteSandboxResources(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.deleteSandboxResources("", []sandboxResource{0}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchSandboxConfig(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchSandboxConfig("") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchSandboxState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchSandboxState("") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchSandboxNetwork(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchSandboxNetwork("") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreSandboxNetwork(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeSandboxNetwork("", NetworkNamespace{}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchSandboxDevices(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchSandboxDevices("") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreSandboxDevices(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeSandboxDevices("", []api.Device{}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchHypervisorState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.fetchHypervisorState("", nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreHypervisorState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeHypervisorState("", nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchAgentState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.fetchAgentState("", nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreAgentState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeAgentState("", nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreContainerResource(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeContainerResource("", "", 0, nil) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopDeleteContainerResources(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.deleteContainerResources("", "", []sandboxResource{0}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchContainerConfig(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchContainerConfig("", "") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchContainerState(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchContainerState("", "") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchContainerProcess(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchContainerProcess("", "") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreContainerProcess(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeContainerProcess("", "", Process{}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchContainerMounts(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchContainerMounts("", "") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreContainerMounts(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeContainerMounts("", "", []Mount{}) | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopFetchContainerDevices(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
_, err := n.fetchContainerDevices("", "") | ||
assert.Nil(t, err) | ||
} | ||
|
||
func TestNoopStoreContainerDevices(t *testing.T) { | ||
n := &noopResourceStorage{} | ||
|
||
err := n.storeContainerDevices("", "", []ContainerDevice{}) | ||
assert.Nil(t, err) | ||
} |