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

Side by Side Diff: state/internal_test.go

Issue 5671055: Implementation of the charm state. (Closed)
Patch Set: Implementation of the charm state. Created 13 years, 1 month 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/export_test.go ('k') | state/service.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // launchpad.net/juju/go/state 1 // launchpad.net/juju/go/state
2 // 2 //
3 // Copyright (c) 2011-2012 Canonical Ltd. 3 // Copyright (c) 2011-2012 Canonical Ltd.
4
5 package state 4 package state
6 5
7 import ( 6 import (
8 "fmt"
9 . "launchpad.net/gocheck" 7 . "launchpad.net/gocheck"
10 "launchpad.net/goyaml" 8 "launchpad.net/goyaml"
11 "launchpad.net/gozk/zookeeper" 9 "launchpad.net/gozk/zookeeper"
12 "testing"
13 ) 10 )
14 11
15 // TestPackage integrates the tests into gotest.
16 func TestPackage(t *testing.T) {
17 TestingT(t)
18 }
19
20 type TopologySuite struct { 12 type TopologySuite struct {
21 zkServer *zookeeper.Server 13 zkServer *zookeeper.Server
22 zkTestRoot string 14 zkTestRoot string
23 zkTestPort int 15 zkTestPort int
24 zkAddr string 16 zkAddr string
25 zkConn *zookeeper.Conn 17 zkConn *zookeeper.Conn
26 t *topology 18 t *topology
27 } 19 }
28 20
29 var _ = Suite(&TopologySuite{}) 21 var _ = Suite(&TopologySuite{})
30 22
31 func (s *TopologySuite) SetUpSuite(c *C) {
32 var err error
33 s.zkTestRoot = c.MkDir() + "/zookeeper"
34 s.zkTestPort = 21812
35 s.zkAddr = fmt.Sprint("localhost:", s.zkTestPort)
36
37 s.zkServer, err = zookeeper.CreateServer(s.zkTestPort, s.zkTestRoot, "")
38 if err != nil {
39 c.Fatal("Cannot set up ZooKeeper server environment: ", err)
40 }
41 err = s.zkServer.Start()
42 if err != nil {
43 c.Fatal("Cannot start ZooKeeper server: ", err)
44 }
45 }
46
47 func (s *TopologySuite) TearDownSuite(c *C) {
48 if s.zkServer != nil {
49 s.zkServer.Destroy()
50 }
51 }
52
53 func (s *TopologySuite) SetUpTest(c *C) { 23 func (s *TopologySuite) SetUpTest(c *C) {
54 // Connect the server. 24 // Connect the server.
55 » _, s.zkConn = OpenAddr(c, s.zkAddr) 25 » st, err := Open(&Info{
26 » » Addrs: []string{ZkAddr},
27 » })
28 » c.Assert(err, IsNil)
29 » s.zkConn = ZkConn(st)
56 // Read the toplogy. 30 // Read the toplogy.
57 var err error
58 s.t, err = readTopology(s.zkConn) 31 s.t, err = readTopology(s.zkConn)
59 c.Assert(err, IsNil) 32 c.Assert(err, IsNil)
60 } 33 }
61 34
62 func (s *TopologySuite) TearDownTest(c *C) { 35 func (s *TopologySuite) TearDownTest(c *C) {
63 // Delete possible nodes, ignore errors. 36 // Delete possible nodes, ignore errors.
64 zkRemoveTree(s.zkConn, "/topology") 37 zkRemoveTree(s.zkConn, "/topology")
65 s.zkConn.Close() 38 s.zkConn.Close()
66 } 39 }
67 40
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 zkTestRoot string 448 zkTestRoot string
476 zkTestPort int 449 zkTestPort int
477 zkAddr string 450 zkAddr string
478 zkConn *zookeeper.Conn 451 zkConn *zookeeper.Conn
479 path string 452 path string
480 } 453 }
481 454
482 var _ = Suite(&ConfigNodeSuite{}) 455 var _ = Suite(&ConfigNodeSuite{})
483 456
484 func (s *ConfigNodeSuite) SetUpSuite(c *C) { 457 func (s *ConfigNodeSuite) SetUpSuite(c *C) {
485 var err error
486 s.zkTestRoot = c.MkDir() + "/zookeeper"
487 s.zkTestPort = 21812
488 s.zkAddr = fmt.Sprint("localhost:", s.zkTestPort)
489 s.path = "/config" 458 s.path = "/config"
490
491 s.zkServer, err = zookeeper.CreateServer(s.zkTestPort, s.zkTestRoot, "")
492 if err != nil {
493 c.Fatal("Cannot set up ZooKeeper server environment: ", err)
494 }
495 err = s.zkServer.Start()
496 if err != nil {
497 c.Fatal("Cannot start ZooKeeper server: ", err)
498 }
499 }
500
501 func (s *ConfigNodeSuite) TearDownSuite(c *C) {
502 if s.zkServer != nil {
503 s.zkServer.Destroy()
504 }
505 } 459 }
506 460
507 func (s *ConfigNodeSuite) SetUpTest(c *C) { 461 func (s *ConfigNodeSuite) SetUpTest(c *C) {
508 » _, s.zkConn = OpenAddr(c, s.zkAddr) 462 » // Connect the server.
463 » st, err := Open(&Info{
464 » » Addrs: []string{ZkAddr},
465 » })
466 » c.Assert(err, IsNil)
467 » s.zkConn = ZkConn(st)
509 } 468 }
510 469
511 func (s *ConfigNodeSuite) TearDownTest(c *C) { 470 func (s *ConfigNodeSuite) TearDownTest(c *C) {
512 // Delete possible nodes, ignore errors. 471 // Delete possible nodes, ignore errors.
513 zkRemoveTree(s.zkConn, s.path) 472 zkRemoveTree(s.zkConn, s.path)
514 s.zkConn.Close() 473 s.zkConn.Close()
515 } 474 }
516 475
517 func (s ConfigNodeSuite) TestCreateEmptyConfigNode(c *C) { 476 func (s ConfigNodeSuite) TestCreateEmptyConfigNode(c *C) {
518 // Check that creating an empty node works correctly. 477 // Check that creating an empty node works correctly.
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after
812 // Shouldn't write again. Changes were already 771 // Shouldn't write again. Changes were already
813 // flushed and acted upon by other parties. 772 // flushed and acted upon by other parties.
814 changes, err = nodeOne.Write() 773 changes, err = nodeOne.Write()
815 c.Assert(err, IsNil) 774 c.Assert(err, IsNil)
816 c.Assert(changes, Equals, []ItemChange{}) 775 c.Assert(changes, Equals, []ItemChange{})
817 776
818 err = nodeOne.Read() 777 err = nodeOne.Read()
819 c.Assert(err, IsNil) 778 c.Assert(err, IsNil)
820 c.Assert(nodeOne, Equals, nodeTwo) 779 c.Assert(nodeOne, Equals, nodeTwo)
821 } 780 }
781
782 type QuoteSuite struct{}
783
784 var _ = Suite(&QuoteSuite{})
785
786 func (s QuoteSuite) TestUnmodified(c *C) {
787 // Check that a string containig only valid
788 // chars stays unmodified.
789 in := "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-"
790 out := Quote(in)
791 c.Assert(out, Equals, in)
792 }
793
794 func (s QuoteSuite) TestQuote(c *C) {
795 // Check that invalid chars are translated correctly.
796 in := "hello_there/how'are~you-today.sir"
797 out := Quote(in)
798 c.Assert(out, Equals, "hello_5f_there_2f_how_27_are_7e_you-today.sir")
799 }
OLDNEW
« no previous file with comments | « state/export_test.go ('k') | state/service.go » ('j') | no next file with comments »

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