Merge pull request #9928 from jlowdermilk/version-negotiate-tests

Unittest for #9762
This commit is contained in:
Alex Robinson
2015-06-29 13:34:13 -07:00
3 changed files with 100 additions and 12 deletions

View File

@@ -36,6 +36,7 @@ type clientCache struct {
clients map[string]*client.Client
configs map[string]*client.Config
defaultConfig *client.Config
defaultClient *client.Client
matchVersion bool
}
@@ -48,7 +49,7 @@ func (c *clientCache) ClientConfigForVersion(version string) (*client.Config, er
}
c.defaultConfig = config
if c.matchVersion {
if err := client.MatchesServerVersion(config); err != nil {
if err := client.MatchesServerVersion(c.defaultClient, config); err != nil {
return nil, err
}
}
@@ -58,7 +59,7 @@ func (c *clientCache) ClientConfigForVersion(version string) (*client.Config, er
}
// TODO: have a better config copy method
config := *c.defaultConfig
negotiatedVersion, err := client.NegotiateVersion(&config, version)
negotiatedVersion, err := client.NegotiateVersion(c.defaultClient, &config, version)
if err != nil {
return nil, err
}