Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(584)

Side by Side Diff: testutil/zk.go

Issue 5786051: Move ZK test server setup into its own package
Patch Set: Created 5 years, 10 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « state/state_test.go ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 package testutil
2
3 import (
4 "fmt"
5 "io/ioutil"
6 "launchpad.net/gocheck"
7 "launchpad.net/gozk/zookeeper"
8 "os"
9 "testing"
10 )
11
12 func ZkTestingT(t *testing.T, zkAddr *string) {
13 srv, dir, addr := ZkSetUpEnvironment(t)
14 defer ZkTearDownEnvironment(t, srv, dir)
15 *zkAddr = addr
16 gocheck.TestingT(t)
17 }
18
19 // ZkSetUpEnvironment initializes the ZooKeeper test environment.
20 func ZkSetUpEnvironment(t *testing.T) (*zookeeper.Server, string, string) {
21 dir, err := ioutil.TempDir("", "statetest")
22 if err != nil {
23 t.Fatalf("cannot create temporary directory: %v", err)
24 }
25 testRoot := dir + "/zookeeper"
26 testPort := 21812
27 srv, err := zookeeper.CreateServer(testPort, testRoot, "")
28 if err != nil {
29 t.Fatalf("cannot create ZooKeeper server: %v", err)
30 }
31 err = srv.Start()
32 if err != nil {
33 t.Fatalf("cannot start ZooKeeper server: %v", err)
34 }
35 return srv, dir, fmt.Sprint("localhost:", testPort)
36 }
37
38 // ZkTearDownEnvironment destroys the ZooKeeper test environment.
39 func ZkTearDownEnvironment(t *testing.T, srv *zookeeper.Server, dir string) {
40 srv.Destroy()
41 if err := os.RemoveAll(dir); err != nil {
42 t.Fatal("cannot remove temporary directory: %v", err)
43 }
44 }
OLDNEW
« no previous file with comments | « state/state_test.go ('k') | no next file » | no next file with comments »

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld 204d58d