Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
18e0516f
Commit
18e0516f
authored
Nov 20, 2015
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #17559 from wojtek-t/remove_etcdclient_from_master_test
Auto commit by PR queue bot
parents
f14e64f7
846356d4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
35 deletions
+27
-35
master_test.go
pkg/master/master_test.go
+27
-35
No files found.
pkg/master/master_test.go
View file @
18e0516f
...
...
@@ -44,15 +44,17 @@ import (
"k8s.io/kubernetes/pkg/registry/namespace"
"k8s.io/kubernetes/pkg/registry/registrytest"
thirdpartyresourcedatastorage
"k8s.io/kubernetes/pkg/registry/thirdpartyresourcedata/etcd"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/storage"
etcdstorage
"k8s.io/kubernetes/pkg/storage/etcd"
"k8s.io/kubernetes/pkg/storage/etcd/etcdtest"
etcdtesting
"k8s.io/kubernetes/pkg/storage/etcd/testing"
"k8s.io/kubernetes/pkg/tools"
"k8s.io/kubernetes/pkg/util"
"k8s.io/kubernetes/pkg/util/intstr"
"github.com/emicklei/go-restful"
"github.com/stretchr/testify/assert"
"golang.org/x/net/context"
)
// setUp is a convience function for setting up for (most) tests.
...
...
@@ -527,13 +529,12 @@ func testInstallThirdPartyAPIListVersion(t *testing.T, version string) {
}
for
_
,
test
:=
range
tests
{
func
()
{
_
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
master
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
defer
server
.
Close
()
defer
etcdserver
.
Terminate
(
t
)
client
:=
etcdserver
.
Client
if
test
.
items
!=
nil
{
s
etupEtcdList
(
client
,
"/ThirdPartyResourceData/company.com/foos/default"
,
test
.
items
)
s
toreThirdPartyList
(
master
.
thirdPartyStorage
,
"/ThirdPartyResourceData/company.com/foos/default"
,
test
.
items
)
}
resp
,
err
:=
http
.
Get
(
server
.
URL
+
"/apis/company.com/"
+
version
+
"/namespaces/default/foos"
)
...
...
@@ -587,7 +588,7 @@ func testInstallThirdPartyAPIListVersion(t *testing.T, version string) {
}
}
func
encodeToThirdParty
(
name
string
,
obj
interface
{})
(
[]
byte
,
error
)
{
func
encodeToThirdParty
(
name
string
,
obj
interface
{})
(
runtime
.
Object
,
error
)
{
serial
,
err
:=
json
.
Marshal
(
obj
)
if
err
!=
nil
{
return
nil
,
err
...
...
@@ -596,23 +597,20 @@ func encodeToThirdParty(name string, obj interface{}) ([]byte, error) {
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
name
},
Data
:
serial
,
}
return
testapi
.
Extensions
.
Codec
()
.
Encode
(
&
thirdPartyData
)
return
&
thirdPartyData
,
nil
}
// TODO: Convert to storage.Interface.
func
storeToEtcd
(
client
tools
.
EtcdClient
,
path
,
name
string
,
obj
interface
{})
error
{
func
storeThirdPartyObject
(
s
storage
.
Interface
,
path
,
name
string
,
obj
interface
{})
error
{
data
,
err
:=
encodeToThirdParty
(
name
,
obj
)
if
err
!=
nil
{
return
err
}
_
,
err
=
client
.
Set
(
etcdtest
.
PathPrefix
()
+
path
,
string
(
data
),
0
)
return
err
return
s
.
Set
(
context
.
TODO
(),
etcdtest
.
AddPrefix
(
path
),
data
,
nil
,
0
)
}
// TODO: Convert to storage.Interface.
func
setupEtcdList
(
client
tools
.
EtcdClient
,
path
string
,
list
[]
Foo
)
error
{
func
storeThirdPartyList
(
s
storage
.
Interface
,
path
string
,
list
[]
Foo
)
error
{
for
_
,
obj
:=
range
list
{
if
err
:=
storeT
oEtcd
(
client
,
path
+
"/"
+
obj
.
Name
,
obj
.
Name
,
obj
);
err
!=
nil
{
if
err
:=
storeT
hirdPartyObject
(
s
,
path
+
"/"
+
obj
.
Name
,
obj
.
Name
,
obj
);
err
!=
nil
{
return
err
}
}
...
...
@@ -640,11 +638,10 @@ func TestInstallThirdPartyAPIGet(t *testing.T) {
}
func
testInstallThirdPartyAPIGetVersion
(
t
*
testing
.
T
,
version
string
)
{
_
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
master
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
defer
server
.
Close
()
defer
etcdserver
.
Terminate
(
t
)
client
:=
etcdserver
.
Client
expectedObj
:=
Foo
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
"test"
,
...
...
@@ -656,7 +653,7 @@ func testInstallThirdPartyAPIGetVersion(t *testing.T, version string) {
SomeField
:
"test field"
,
OtherField
:
10
,
}
if
!
assert
.
NoError
(
storeT
oEtcd
(
client
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
if
!
assert
.
NoError
(
storeT
hirdPartyObject
(
master
.
thirdPartyStorage
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
t
.
FailNow
()
return
}
...
...
@@ -688,11 +685,10 @@ func TestInstallThirdPartyAPIPost(t *testing.T) {
}
func
testInstallThirdPartyAPIPostForVersion
(
t
*
testing
.
T
,
version
string
)
{
_
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
master
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
defer
server
.
Close
()
defer
etcdserver
.
Terminate
(
t
)
client
:=
etcdserver
.
Client
inputObj
:=
Foo
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
"test"
,
...
...
@@ -731,19 +727,14 @@ func testInstallThirdPartyAPIPostForVersion(t *testing.T, version string) {
t
.
Errorf
(
"expected:
\n
%v
\n
saw:
\n
%v
\n
"
,
expectedObj
,
item
)
}
etcdResp
,
err
:=
client
.
Get
(
etcdtest
.
PathPrefix
()
+
"/ThirdPartyResourceData/company.com/foos/default/test"
,
false
,
false
)
thirdPartyObj
:=
extensions
.
ThirdPartyResourceData
{}
err
=
master
.
thirdPartyStorage
.
Get
(
context
.
TODO
(),
etcdtest
.
AddPrefix
(
"/ThirdPartyResourceData/company.com/foos/default/test"
),
&
thirdPartyObj
,
false
)
if
!
assert
.
NoError
(
err
)
{
t
.
FailNow
()
}
obj
,
err
:=
testapi
.
Extensions
.
Codec
()
.
Decode
([]
byte
(
etcdResp
.
Node
.
Value
))
if
err
!=
nil
{
t
.
Errorf
(
"unexpected error: %v"
,
err
)
}
thirdPartyObj
,
ok
:=
obj
.
(
*
extensions
.
ThirdPartyResourceData
)
if
!
ok
{
t
.
Errorf
(
"unexpected object: %v"
,
obj
)
}
item
=
Foo
{}
assert
.
NoError
(
json
.
Unmarshal
(
thirdPartyObj
.
Data
,
&
item
))
...
...
@@ -759,11 +750,10 @@ func TestInstallThirdPartyAPIDelete(t *testing.T) {
}
func
testInstallThirdPartyAPIDeleteVersion
(
t
*
testing
.
T
,
version
string
)
{
_
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
master
,
etcdserver
,
server
,
assert
:=
initThirdParty
(
t
,
version
)
defer
server
.
Close
()
defer
etcdserver
.
Terminate
(
t
)
client
:=
etcdserver
.
Client
expectedObj
:=
Foo
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
"test"
,
...
...
@@ -775,7 +765,7 @@ func testInstallThirdPartyAPIDeleteVersion(t *testing.T, version string) {
SomeField
:
"test field"
,
OtherField
:
10
,
}
if
!
assert
.
NoError
(
storeT
oEtcd
(
client
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
if
!
assert
.
NoError
(
storeT
hirdPartyObject
(
master
.
thirdPartyStorage
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
t
.
FailNow
()
return
}
...
...
@@ -813,7 +803,9 @@ func testInstallThirdPartyAPIDeleteVersion(t *testing.T, version string) {
assert
.
Equal
(
http
.
StatusNotFound
,
resp
.
StatusCode
)
expectedDeletedKey
:=
etcdtest
.
AddPrefix
(
"ThirdPartyResourceData/company.com/foos/default/test"
)
_
,
err
=
client
.
Get
(
expectedDeletedKey
,
false
,
false
)
thirdPartyObj
:=
extensions
.
ThirdPartyResourceData
{}
err
=
master
.
thirdPartyStorage
.
Get
(
context
.
TODO
(),
expectedDeletedKey
,
&
thirdPartyObj
,
false
)
if
!
etcdstorage
.
IsEtcdNotFound
(
err
)
{
t
.
Errorf
(
"expected deletion didn't happen: %v"
,
err
)
}
...
...
@@ -839,7 +831,6 @@ func testInstallThirdPartyResourceRemove(t *testing.T, version string) {
defer
server
.
Close
()
defer
etcdserver
.
Terminate
(
t
)
client
:=
etcdserver
.
Client
expectedObj
:=
Foo
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
"test"
,
...
...
@@ -850,13 +841,13 @@ func testInstallThirdPartyResourceRemove(t *testing.T, version string) {
SomeField
:
"test field"
,
OtherField
:
10
,
}
if
!
assert
.
NoError
(
storeT
oEtcd
(
client
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
if
!
assert
.
NoError
(
storeT
hirdPartyObject
(
master
.
thirdPartyStorage
,
"/ThirdPartyResourceData/company.com/foos/default/test"
,
"test"
,
expectedObj
))
{
t
.
FailNow
()
return
}
secondObj
:=
expectedObj
secondObj
.
Name
=
"bar"
if
!
assert
.
NoError
(
storeT
oEtcd
(
client
,
"/ThirdPartyResourceData/company.com/foos/default/bar"
,
"bar"
,
secondObj
))
{
if
!
assert
.
NoError
(
storeT
hirdPartyObject
(
master
.
thirdPartyStorage
,
"/ThirdPartyResourceData/company.com/foos/default/bar"
,
"bar"
,
secondObj
))
{
t
.
FailNow
()
return
}
...
...
@@ -900,7 +891,8 @@ func testInstallThirdPartyResourceRemove(t *testing.T, version string) {
etcdtest
.
AddPrefix
(
"/ThirdPartyResourceData/company.com/foos/default/bar"
),
}
for
_
,
key
:=
range
expectedDeletedKeys
{
_
,
err
:=
client
.
Get
(
key
,
false
,
false
)
thirdPartyObj
:=
extensions
.
ThirdPartyResourceData
{}
err
:=
master
.
thirdPartyStorage
.
Get
(
context
.
TODO
(),
key
,
&
thirdPartyObj
,
false
)
if
!
etcdstorage
.
IsEtcdNotFound
(
err
)
{
t
.
Errorf
(
"expected deletion didn't happen: %v"
,
err
)
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment