|
|
@@ -46,6 +46,8 @@ func TestNodeLifeCycle(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Ensure that a stopped node can be stopped again
|
|
|
for i := 0; i < 3; i++ {
|
|
|
if err := stack.Stop(); err != ErrNodeStopped {
|
|
|
@@ -88,6 +90,8 @@ func TestNodeUsedDataDir(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create original protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer original.Close()
|
|
|
+
|
|
|
if err := original.Start(); err != nil {
|
|
|
t.Fatalf("failed to start original protocol stack: %v", err)
|
|
|
}
|
|
|
@@ -98,6 +102,8 @@ func TestNodeUsedDataDir(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create duplicate protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer duplicate.Close()
|
|
|
+
|
|
|
if err := duplicate.Start(); err != ErrDatadirUsed {
|
|
|
t.Fatalf("duplicate datadir failure mismatch: have %v, want %v", err, ErrDatadirUsed)
|
|
|
}
|
|
|
@@ -109,6 +115,8 @@ func TestServiceRegistry(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of unique services and ensure they start successfully
|
|
|
services := []ServiceConstructor{NewNoopServiceA, NewNoopServiceB, NewNoopServiceC}
|
|
|
for i, constructor := range services {
|
|
|
@@ -141,6 +149,8 @@ func TestServiceLifeCycle(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of life-cycle instrumented services
|
|
|
services := map[string]InstrumentingWrapper{
|
|
|
"A": InstrumentedServiceMakerA,
|
|
|
@@ -191,6 +201,8 @@ func TestServiceRestarts(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Define a service that does not support restarts
|
|
|
var (
|
|
|
running bool
|
|
|
@@ -239,6 +251,8 @@ func TestServiceConstructionAbortion(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Define a batch of good services
|
|
|
services := map[string]InstrumentingWrapper{
|
|
|
"A": InstrumentedServiceMakerA,
|
|
|
@@ -286,6 +300,8 @@ func TestServiceStartupAbortion(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of good services
|
|
|
services := map[string]InstrumentingWrapper{
|
|
|
"A": InstrumentedServiceMakerA,
|
|
|
@@ -339,6 +355,8 @@ func TestServiceTerminationGuarantee(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of good services
|
|
|
services := map[string]InstrumentingWrapper{
|
|
|
"A": InstrumentedServiceMakerA,
|
|
|
@@ -414,6 +432,8 @@ func TestServiceRetrieval(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
if err := stack.Register(NewNoopService); err != nil {
|
|
|
t.Fatalf("noop service registration failed: %v", err)
|
|
|
}
|
|
|
@@ -449,6 +469,8 @@ func TestProtocolGather(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of services with some configured number of protocols
|
|
|
services := map[string]struct {
|
|
|
Count int
|
|
|
@@ -505,6 +527,8 @@ func TestAPIGather(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("failed to create protocol stack: %v", err)
|
|
|
}
|
|
|
+ defer stack.Close()
|
|
|
+
|
|
|
// Register a batch of services with some configured APIs
|
|
|
calls := make(chan string, 1)
|
|
|
makeAPI := func(result string) *OneMethodAPI {
|