github.com/cloudbase/juju-core@v0.0.0-20140504232958-a7271ac7912f/testing/attrs.go (about)

     1  package testing
     2  
     3  // Attrs is a convenience type for messing
     4  // around with configuration attributes.
     5  type Attrs map[string]interface{}
     6  
     7  func (a Attrs) Merge(with Attrs) Attrs {
     8  	new := make(Attrs)
     9  	for attr, val := range a {
    10  		new[attr] = val
    11  	}
    12  	for attr, val := range with {
    13  		new[attr] = val
    14  	}
    15  	return new
    16  }
    17  
    18  func (a Attrs) Delete(attrNames ...string) Attrs {
    19  	new := make(Attrs)
    20  	for attr, val := range a {
    21  		new[attr] = val
    22  	}
    23  	for _, attr := range attrNames {
    24  		delete(new, attr)
    25  	}
    26  	return new
    27  }