Ubuntu Pastebin

Paste from Michael Foord at Mon, 23 Mar 2015 16:10:13 +0000

Download as text
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
                                                          
type releaser interface {                                                       
        // ReleaseAddress has the same signature as the same method in the      
        // NetworkingEnviron.                                                   
        ReleaseAddress(instance.Id, network.Id, network.Address) error          
}                    

                                                                                
type ReleaseCall struct {                                                       
        instId   instance.Id                                                    
        subnetId network.Id                                                     
        addr     network.Address                                                
}                                                                               
                                                                                
type mockReleaser struct {                                                      
        calls   []ReleaseCall                                                   
        returns []error                                                         
}                                                                               
                                                                                
func (m *mockReleaser) ReleaseAddress(instId instance.Id, subnetId network.Id, addr network.Address) error {
        m.calls = append(m.calls, ReleaseCall{instId, subnetId, addr})          
        toReturn := m.returns[0]                                                
        m.returns = m.returns[1:]                                               
        return toReturn                                                         
}                                                                               
                                                                                
func NewMockReleaser(returns []error) mockReleaser {                            
        r := mockReleaser{                                                      
                calls:   []ReleaseCall{},                                       
                returns: returns,                                               
        }                                                                       
        return r                                                                
}            
Download as text