Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
provision/provisiontest: add method to get pool from node
  • Loading branch information
andrewsmedina committed Jul 26, 2016
1 parent a8a43e2 commit 5537700
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 1 deletion.
2 changes: 1 addition & 1 deletion provision/provision.go
Expand Up @@ -366,7 +366,7 @@ type NodeProvisioner interface {
// SetNodeStatus changes the status of a node and all its units.
SetNodeStatus(NodeStatusData) error
// GetPoolByNode returns pool name by node address
GetPoolByNode(address string) string
GetPoolByNode(address string) (string, error)
}

type NodeStatusData struct {
Expand Down
6 changes: 6 additions & 0 deletions provision/provisiontest/fake_provisioner.go
Expand Up @@ -385,10 +385,16 @@ func (p *FakeProvisioner) getError(method string) error {
return nil
}

// AddNode adds a node
func (p *FakeProvisioner) AddNode(name, pool string) {
p.nodes[name] = pool
}

// GetPoolByNode returns a pool by node address
func (p *FakeProvisioner) GetPoolByNode(address string) (string, error) {
return p.nodes[address], nil
}

// MetricEnvs returns the metric envs for the app
func (p *FakeProvisioner) MetricEnvs(app provision.App) map[string]string {
return map[string]string{
Expand Down
8 changes: 8 additions & 0 deletions provision/provisiontest/fake_provisioner_test.go
Expand Up @@ -1231,6 +1231,14 @@ func (s *S) TestFakeProvisionerAddNode(c *check.C) {
c.Assert(p.nodes, check.DeepEquals, map[string]string{"mynode": "mypool"})
}

func (s *S) TestFakeProvisionerGetPoolByNode(c *check.C) {
p := NewFakeProvisioner()
p.AddNode("mynode", "mypool")
poolName, err := p.GetPoolByNode("mynode")
c.Assert(err, check.IsNil)
c.Assert(poolName, check.Equals, "mypool")
}

func (s *S) TestFakeProvisionerFilterAppsByUnitStatus(c *check.C) {
app1 := NewFakeApp("fairy-tale", "shaman", 1)
app2 := NewFakeApp("unfairy-tale", "shaman", 1)
Expand Down

0 comments on commit 5537700

Please sign in to comment.