From 1622a212d72fd300e5bbadfff85e7f9dc45e2d3c Mon Sep 17 00:00:00 2001 From: Conner Fromknecht Date: Tue, 23 Apr 2019 20:07:12 -0700 Subject: [PATCH] watchtower/wtserver: add NoAckCreateSession for testing --- watchtower/wtserver/create_session.go | 7 +++++++ watchtower/wtserver/server.go | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/watchtower/wtserver/create_session.go b/watchtower/wtserver/create_session.go index 3d5c93611..411742e0a 100644 --- a/watchtower/wtserver/create_session.go +++ b/watchtower/wtserver/create_session.go @@ -122,6 +122,13 @@ func (s *Server) handleCreateSession(peer Peer, id *wtdb.SessionID, func (s *Server) replyCreateSession(peer Peer, id *wtdb.SessionID, code wtwire.ErrorCode, lastApplied uint16, data []byte) error { + if s.cfg.NoAckCreateSession { + return &connFailure{ + ID: *id, + Code: code, + } + } + msg := &wtwire.CreateSessionReply{ Code: code, LastApplied: lastApplied, diff --git a/watchtower/wtserver/server.go b/watchtower/wtserver/server.go index 940b41cd2..d4ee88741 100644 --- a/watchtower/wtserver/server.go +++ b/watchtower/wtserver/server.go @@ -56,6 +56,10 @@ type Config struct { // ChainHash identifies the network that the server is watching. ChainHash chainhash.Hash + // NoAckCreateSession causes the server to not reply to create session + // requests, this should only be used for testing. + NoAckCreateSession bool + // NoAckUpdates causes the server to not acknowledge state updates, this // should only be used for testing. NoAckUpdates bool