// +build experimental

package main

import (
	"github.com/docker/docker/api/types"
	"github.com/go-check/check"
)

func (s *DockerSuite) TestInspectNamedMountPoint(c *check.C) {
	testRequires(c, DaemonIsLinux)
	dockerCmd(c, "run", "-d", "--name", "test", "-v", "data:/data", "busybox", "cat")

	vol, err := inspectFieldJSON("test", "Mounts")
	c.Assert(err, check.IsNil)

	var mp []types.MountPoint
	err = unmarshalJSON([]byte(vol), &mp)
	c.Assert(err, check.IsNil)

	if len(mp) != 1 {
		c.Fatalf("Expected 1 mount point, was %v\n", len(mp))
	}

	m := mp[0]
	if m.Name != "data" {
		c.Fatalf("Expected name data, was %s\n", m.Name)
	}

	if m.Driver != "local" {
		c.Fatalf("Expected driver local, was %s\n", m.Driver)
	}

	if m.Source == "" {
		c.Fatalf("Expected source to not be empty")
	}

	if m.RW != true {
		c.Fatalf("Expected rw to be true")
	}

	if m.Destination != "/data" {
		c.Fatalf("Expected destination /data, was %s\n", m.Destination)
	}
}