You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2022/05/25 20:07:46 UTC

[qpid-proton-dotnet] branch main updated: PROTON-2548 Fix warnings from Roslyn code analysis tooling

This is an automated email from the ASF dual-hosted git repository.

tabish pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/qpid-proton-dotnet.git


The following commit(s) were added to refs/heads/main by this push:
     new 05fe814  PROTON-2548 Fix warnings from Roslyn code analysis tooling
05fe814 is described below

commit 05fe814e0a68585d6527a1d9be4e8d06bab42947
Author: Timothy Bish <ta...@gmail.com>
AuthorDate: Wed May 25 16:06:41 2022 -0400

    PROTON-2548 Fix warnings from Roslyn code analysis tooling
    
    Fix spelling errors, unused imports and other code related updates
    as exposed from the roslyn code analysis tools.
---
 .../Implementation/ClientConversionSupport.cs      | 18 ++++----
 .../Client/Implementation/ClientDeliveryState.cs   |  8 ++--
 .../ClientLocalTransactionContext.cs               |  6 +--
 .../Client/Implementation/ClientMessage.cs         |  9 ++--
 .../Client/Implementation/ClientRemoteSource.cs    |  2 +-
 .../Client/Implementation/ClientStreamReceiver.cs  |  2 +-
 .../Client/Implementation/ClientStreamSender.cs    |  4 +-
 .../Implementation/ClientStreamSenderMessage.cs    | 13 +++---
 src/Proton.Client/Client/Utilities/Objects.cs      |  2 +-
 .../Client/Utilities/ReconnectLocationPool.cs      |  2 +-
 .../Actions/AbstractPerformativeInjectAction.cs    |  5 +--
 .../AbstractSaslPerformativeInjectAction.cs        |  1 -
 src/Proton.TestPeer/Actions/AttachInjectAction.cs  |  4 +-
 src/Proton.TestPeer/Actions/BeginIjectAction.cs    |  3 +-
 src/Proton.TestPeer/Actions/CloseInjectAction.cs   |  3 +-
 .../Actions/ConnectionDropAction.cs                |  6 ---
 src/Proton.TestPeer/Actions/DetachInjectAction.cs  |  3 +-
 .../Actions/DetachLastCoordinatorInjectAction.cs   |  2 +-
 .../Actions/DischargeInjectAction.cs               |  2 +-
 .../Actions/DispositionInjectAction.cs             | 19 ++++-----
 src/Proton.TestPeer/Actions/EndInjectAction.cs     |  3 +-
 .../Actions/ExecuteUserCodeAction.cs               |  4 +-
 src/Proton.TestPeer/Actions/FlowInjectAction.cs    |  2 +-
 src/Proton.TestPeer/Actions/OpenInjectAction.cs    |  2 +-
 .../Actions/ProxyDelayedScriptedAction.cs          |  2 +-
 .../Actions/SaslChallengeInjectAction.cs           |  2 +-
 .../Actions/SaslInitInjectAction.cs                |  2 +-
 .../Actions/SaslMechanismsInjectAction.cs          |  2 +-
 .../Actions/SaslOutcomeInjectAction.cs             |  2 +-
 .../Actions/SaslResponseInjectAction.cs            |  2 +-
 .../Actions/ScriptCompleteAction.cs                |  6 +--
 .../Actions/TransferInjectAction.cs                | 20 ++++-----
 src/Proton.TestPeer/Codec/Impl/AbstractElement.cs  |  1 -
 src/Proton.TestPeer/Codec/Impl/ArrayElement.cs     | 48 +++++++++++-----------
 .../Codec/Impl/DescribedTypeElement.cs             |  8 ++--
 src/Proton.TestPeer/Codec/Impl/IntegerElement.cs   |  4 +-
 src/Proton.TestPeer/Codec/Impl/ListElement.cs      |  6 +--
 src/Proton.TestPeer/Codec/Impl/LongElement.cs      |  4 +-
 src/Proton.TestPeer/Codec/Impl/MapElement.cs       |  5 +--
 src/Proton.TestPeer/Codec/Impl/StreamExtensions.cs |  8 ++--
 src/Proton.TestPeer/Codec/Impl/StringElement.cs    |  2 +-
 src/Proton.TestPeer/Codec/Impl/TimestampElement.cs |  2 +-
 src/Proton.TestPeer/Codec/Impl/TypeDecoder.cs      |  6 +--
 .../Codec/Impl/UnsignedIntegerElement.cs           |  4 +-
 .../Codec/Impl/UnsignedLongElement.cs              |  4 +-
 src/Proton.TestPeer/Codec/Messaging/Accepted.cs    |  5 +--
 .../Codec/Messaging/AmqpSequence.cs                |  2 +-
 src/Proton.TestPeer/Codec/Messaging/AmqpValue.cs   |  4 +-
 .../Codec/Messaging/ApplicationProperties.cs       |  3 +-
 src/Proton.TestPeer/Codec/Messaging/Data.cs        |  2 +-
 .../Codec/Messaging/DeleteOnClose.cs               |  2 +-
 .../Codec/Messaging/DeleteOnNoLinks.cs             |  2 +-
 .../Codec/Messaging/DeleteOnNoLinksOrMessages.cs   |  2 +-
 .../Codec/Messaging/DeleteOnNoMessages.cs          |  2 +-
 .../Codec/Messaging/DeliveryAnnotations.cs         |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Footer.cs      |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Header.cs      |  2 +-
 .../Codec/Messaging/MessageAnnotations.cs          |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Modified.cs    |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Properties.cs  |  8 ++--
 src/Proton.TestPeer/Codec/Messaging/Received.cs    |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Rejected.cs    |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Released.cs    |  5 +--
 src/Proton.TestPeer/Codec/Messaging/Source.cs      |  2 +-
 src/Proton.TestPeer/Codec/Messaging/Target.cs      |  2 +-
 .../Codec/Messaging/TerminusExpiryPolicy.cs        |  8 ++--
 src/Proton.TestPeer/Codec/Primitives/Binary.cs     |  1 -
 src/Proton.TestPeer/Codec/Primitives/Decimal32.cs  |  4 +-
 src/Proton.TestPeer/Codec/Primitives/Symbol.cs     |  2 +-
 .../Codec/Security/ISaslPerformativeHandler.cs     |  2 -
 .../Codec/Security/SaslChallenge.cs                |  6 +--
 .../Codec/Security/SaslDescribedType.cs            |  1 -
 src/Proton.TestPeer/Codec/Security/SaslInit.cs     |  4 +-
 .../Codec/Security/SaslMechanisms.cs               |  2 +-
 src/Proton.TestPeer/Codec/Security/SaslOutcome.cs  |  2 +-
 src/Proton.TestPeer/Codec/Security/SaslResponse.cs |  4 +-
 .../Codec/Transactions/Coordinator.cs              |  2 +-
 src/Proton.TestPeer/Codec/Transactions/Declare.cs  |  2 +-
 src/Proton.TestPeer/Codec/Transactions/Declared.cs |  2 +-
 .../Codec/Transactions/Discharge.cs                |  2 +-
 .../Codec/Transactions/TransactionalState.cs       |  2 +-
 src/Proton.TestPeer/Codec/Transport/Open.cs        |  6 +--
 .../Codec/Transport/SenderSettleMode.cs            |  2 +-
 src/Proton.TestPeer/Codec/Utilities/TypeMapper.cs  |  4 +-
 src/Proton.TestPeer/Driver/AMQPTestDriver.cs       | 10 ++---
 src/Proton.TestPeer/Driver/DriverTaskScheduler.cs  |  7 ++--
 src/Proton.TestPeer/Driver/FrameDecoder.cs         |  4 +-
 src/Proton.TestPeer/Driver/IFrameHandler.cs        |  2 +-
 src/Proton.TestPeer/Driver/IScriptedElement.cs     |  2 +-
 .../Driver/ProtonNetworkPeerOptions.cs             |  4 +-
 src/Proton.TestPeer/Driver/ProtonTestClient.cs     |  4 +-
 src/Proton.TestPeer/Driver/ScriptWriter.cs         | 44 ++++++++++----------
 src/Proton.TestPeer/Driver/ScriptedAction.cs       |  4 +-
 src/Proton.TestPeer/Driver/ScriptedExpectation.cs  |  2 +-
 src/Proton.TestPeer/Driver/SessionTracker.cs       |  4 +-
 .../Expectations/AMQPHeaderExpectation.cs          |  6 +--
 .../Expectations/AttachExpectation.cs              | 18 ++++----
 .../Expectations/BeginExpectation.cs               |  4 +-
 .../Expectations/CloseExpectation.cs               |  3 +-
 .../Expectations/DeclareExpectation.cs             |  8 ++--
 .../Expectations/DetachExpectation.cs              |  3 +-
 .../Expectations/DischargeExpectation.cs           |  2 +-
 .../Expectations/DispositionExpectation.cs         |  6 +--
 .../Expectations/EmptyFrameExpectation.cs          |  4 +-
 src/Proton.TestPeer/Expectations/EndExpectation.cs |  3 +-
 .../Expectations/FlowExpectation.cs                |  3 +-
 .../Expectations/OpenExpectation.cs                |  5 +--
 .../Expectations/SaslChallengeExpectation.cs       |  2 +-
 .../Expectations/SaslInitExpectation.cs            |  2 +-
 .../Expectations/SaslMechanismsExpectation.cs      |  2 +-
 .../Expectations/SaslOutcomeExpectation.cs         |  2 +-
 .../Expectations/SaslResponseExpectation.cs        |  2 +-
 .../Expectations/TransferExpectation.cs            |  6 +--
 .../Matchers/Comparators/ArrayComparator.cs        |  8 ++--
 .../Matchers/Comparators/CharacterComparator.cs    |  6 ++-
 .../Matchers/Comparators/DictionaryComparator.cs   |  7 ++--
 .../Comparators/DictionaryEntryComparator.cs       |  4 +-
 .../Matchers/Comparators/EnumerableComparator.cs   |  4 +-
 .../Matchers/Comparators/ILinkedComparator.cs      |  4 +-
 .../Matchers/Comparators/KeyValuePairComparator.cs |  5 +--
 .../Matchers/Comparators/NumberComparator.cs       |  6 ++-
 .../Matchers/Comparators/PeerEqualityComparator.cs | 24 +++++------
 .../Matchers/Comparators/StringComparator.cs       |  6 ++-
 .../Matchers/Comparators/SymbolComparator.cs       |  6 ++-
 src/Proton.TestPeer/Matchers/Core/AllOfMatcher.cs  |  2 +-
 src/Proton.TestPeer/Matchers/Core/AnyOfMatcher.cs  |  6 +--
 .../Matchers/Core/IsEqualMatcher.cs                |  4 +-
 src/Proton.TestPeer/Matchers/Core/IsInstanceOf.cs  |  4 +-
 src/Proton.TestPeer/Matchers/Core/IsMatcher.cs     |  2 +-
 .../Matchers/Core/ShortcutCombination.cs           |  2 +-
 src/Proton.TestPeer/Matchers/IDescription.cs       |  2 +-
 src/Proton.TestPeer/Matchers/IMatcher.cs           |  2 +-
 src/Proton.TestPeer/Matchers/MatcherAssert.cs      |  1 -
 src/Proton.TestPeer/Matchers/Matches.cs            | 14 +++----
 .../Matchers/TypeSafeDiagnosingMatcher.cs          |  4 +-
 src/Proton.TestPeer/Matchers/TypeSafeMatcher.cs    |  4 +-
 .../Types/Messaging/AbstractBodySectionMatcher.cs  |  1 -
 .../Types/Messaging/AbstractMapSectionMatcher.cs   |  3 +-
 .../Messaging/AbstractMessageSectionMatcher.cs     |  2 +-
 .../Messaging/CompositingDataSectionMatcher.cs     |  4 +-
 .../Types/Messaging/PartialDataSectionMatcher.cs   |  4 +-
 .../Matchers/Types/Messaging/TargetMatcher.cs      |  4 +-
 .../Matchers/Types/Transport/AttachMatcher.cs      |  8 ++--
 .../Matchers/Types/Transport/DispositionMatcher.cs |  3 --
 .../Matchers/Types/Transport/OpenMatcher.cs        |  2 +-
 .../Transport/TransferPayloadCompositeMatcher.cs   |  4 +-
 src/Proton.TestPeer/Network/PeerTcpClient.cs       |  7 +---
 src/Proton.TestPeer/Network/PeerTcpServer.cs       |  6 +--
 src/Proton.TestPeer/Network/PeerTcpTransport.cs    |  2 +-
 src/Proton.TestPeer/Utilities/Eventloop.cs         |  4 +-
 .../Utilities/RejectedExecutionException.cs        |  2 +-
 src/Proton.TestPeer/Utilities/Statics.cs           | 10 ++---
 src/Proton/Buffer/IProtonBuffer.cs                 |  2 +-
 src/Proton/Buffer/IProtonCompositeBuffer.cs        | 16 ++++----
 src/Proton/Buffer/ProtonBufferSupport.cs           |  2 +-
 src/Proton/Buffer/ProtonByteBuffer.cs              | 10 ++---
 src/Proton/Buffer/ProtonCompositeBuffer.cs         |  6 +--
 .../Codec/Decoders/Messaging/DataTypeDecoder.cs    |  2 +-
 .../Codec/Decoders/Primitives/ByteTypeDecoder.cs   |  2 +-
 .../Decoders/Primitives/Decimal128TypeDecoder.cs   |  1 -
 .../Codec/Decoders/Primitives/List8TypeDecoder.cs  |  6 +--
 .../Codec/Decoders/Primitives/Long8TypeDecoder.cs  |  4 +-
 .../Codec/Decoders/Primitives/Map32TypeDecoder.cs  |  2 +-
 .../Codec/Decoders/Primitives/Map8TypeDecoder.cs   |  4 +-
 .../Primitives/UnsignedInteger8TypeDecoder.cs      |  4 +-
 .../Primitives/UnsignedLong8TypeDecoder.cs         |  4 +-
 src/Proton/Codec/Decoders/ProtonStreamDecoder.cs   | 14 +++----
 .../Codec/Decoders/Transport/DetachTypeDecoder.cs  |  2 +-
 .../Encoders/Primitives/BooleanTypeEncoder.cs      |  2 +-
 src/Proton/Codec/IDecoder.cs                       |  2 +-
 src/Proton/Engine/AmqpPerformativeEnvelopePool.cs  |  2 +-
 src/Proton/Engine/EmptyEnvelope.cs                 |  4 +-
 .../Exceptions/ProtocolViolationException.cs       |  8 ++--
 src/Proton/Engine/Exceptions/ProtonIOException.cs  |  2 +-
 src/Proton/Engine/HeaderEnvelope.cs                |  8 ++--
 src/Proton/Engine/ILink.cs                         |  2 +-
 src/Proton/Engine/ITransactionController.cs        |  2 +-
 src/Proton/Engine/ITransactionManager.cs           |  2 +-
 src/Proton/Engine/Implementation/ProtonLink.cs     |  4 +-
 src/Proton/Engine/Implementation/ProtonSender.cs   |  3 +-
 .../Implementation/ProtonSessionIncomingWindow.cs  |  6 +--
 .../Implementation/ProtonSessionOutgoingWindow.cs  |  3 +-
 .../Implementation/ProtonTransactionController.cs  |  4 +-
 .../Implementation/ProtonTransactionManager.cs     |  5 +--
 src/Proton/Engine/IncomingAmqpEnvelope.cs          |  2 +-
 src/Proton/Engine/LinkState.cs                     |  4 +-
 .../Sasl/Client/AbstractScramSHAMechanism.cs       |  4 +-
 .../Engine/Sasl/Client/ISaslCredentialsProvider.cs |  8 ++--
 src/Proton/Engine/Sasl/Client/XOauth2Mechanism.cs  |  2 +-
 src/Proton/Engine/TransactionState.cs              |  2 +-
 src/Proton/Types/Decimal32.cs                      |  4 +-
 src/Proton/Types/Messaging/Accepted.cs             |  2 +-
 src/Proton/Types/Messaging/AmqpSequence.cs         |  3 +-
 src/Proton/Types/Messaging/AmqpValue.cs            |  4 +-
 .../Types/Messaging/ApplicationProperties.cs       |  2 +-
 src/Proton/Types/Messaging/DeleteOnClose.cs        |  2 +-
 src/Proton/Types/Messaging/DeleteOnNoLinks.cs      |  2 +-
 .../Types/Messaging/DeleteOnNoLinksOrMessages.cs   |  2 +-
 src/Proton/Types/Messaging/DeleteOnNoMessages.cs   |  2 +-
 src/Proton/Types/Messaging/Modified.cs             |  4 +-
 src/Proton/Types/Messaging/Rejected.cs             |  2 +-
 src/Proton/Types/Messaging/Released.cs             |  2 +-
 src/Proton/Types/Messaging/Source.cs               |  2 +-
 src/Proton/Types/Transport/AmqpError.cs            |  2 +-
 src/Proton/Types/Transport/AmqpHeader.cs           |  2 +-
 src/Proton/Types/Transport/Begin.cs                | 22 +++++-----
 src/Proton/Types/Transport/IHeaderHandler.cs       |  4 +-
 src/Proton/Types/Transport/IPerformative.cs        |  2 +-
 src/Proton/Types/Transport/PerformativeType.cs     | 18 ++++----
 src/Proton/Types/UnknownDescribedType.cs           |  2 +-
 src/Proton/Utilities/IDeque.cs                     |  2 +-
 src/Proton/Utilities/SplayedDictionary.cs          |  2 +-
 src/Proton/Utilities/Statics.cs                    | 10 ++---
 src/Proton/Utilities/StringUtils.cs                |  4 +-
 .../Client/Implementation/ClientConnectionTest.cs  |  4 +-
 .../Client/Implementation/ClientReceiverTest.cs    |  4 +-
 .../Client/Implementation/ClientReconnectTest.cs   |  4 +-
 .../Implementation/ClientStreamSenderTest.cs       |  2 +-
 .../Proton.Client.Tests/Client/TestSupport/Wait.cs | 24 +++++------
 .../ProtonTransactionControllerTest.cs             |  4 +-
 220 files changed, 507 insertions(+), 539 deletions(-)

diff --git a/src/Proton.Client/Client/Implementation/ClientConversionSupport.cs b/src/Proton.Client/Client/Implementation/ClientConversionSupport.cs
index 0180e73..31b7c21 100644
--- a/src/Proton.Client/Client/Implementation/ClientConversionSupport.cs
+++ b/src/Proton.Client/Client/Implementation/ClientConversionSupport.cs
@@ -189,25 +189,25 @@ namespace Apache.Qpid.Proton.Client.Implementation
          };
       }
 
-      public static Types.Messaging.TerminusDurability AsProtonType(this DurabilityMode mode)
+      public static TerminusDurability AsProtonType(this DurabilityMode mode)
       {
          return mode switch
          {
-            DurabilityMode.Configuration => Types.Messaging.TerminusDurability.Configuration,
-            DurabilityMode.None => Types.Messaging.TerminusDurability.None,
-            DurabilityMode.UnsettledState => Types.Messaging.TerminusDurability.UnsettledState,
+            DurabilityMode.Configuration => TerminusDurability.Configuration,
+            DurabilityMode.None => TerminusDurability.None,
+            DurabilityMode.UnsettledState => TerminusDurability.UnsettledState,
             _ => throw new ArgumentException("Cannot convert unknown durability mode: " + mode),
          };
       }
 
-      public static Types.Messaging.TerminusExpiryPolicy AsProtonType(this ExpiryPolicy policy)
+      public static TerminusExpiryPolicy AsProtonType(this ExpiryPolicy policy)
       {
          return policy switch
          {
-            ExpiryPolicy.ConnectionClose => Types.Messaging.TerminusExpiryPolicy.ConnectionClose,
-            ExpiryPolicy.LinkClose => Types.Messaging.TerminusExpiryPolicy.LinkDetach,
-            ExpiryPolicy.Never => Types.Messaging.TerminusExpiryPolicy.Never,
-            ExpiryPolicy.SessionClose => Types.Messaging.TerminusExpiryPolicy.SessionEnd,
+            ExpiryPolicy.ConnectionClose => TerminusExpiryPolicy.ConnectionClose,
+            ExpiryPolicy.LinkClose => TerminusExpiryPolicy.LinkDetach,
+            ExpiryPolicy.Never => TerminusExpiryPolicy.Never,
+            ExpiryPolicy.SessionClose => TerminusExpiryPolicy.SessionEnd,
             _ => throw new ArgumentException("Cannot convert unknown expiry policy: " + policy),
          };
       }
diff --git a/src/Proton.Client/Client/Implementation/ClientDeliveryState.cs b/src/Proton.Client/Client/Implementation/ClientDeliveryState.cs
index 251ced7..8df2ce7 100644
--- a/src/Proton.Client/Client/Implementation/ClientDeliveryState.cs
+++ b/src/Proton.Client/Client/Implementation/ClientDeliveryState.cs
@@ -41,13 +41,13 @@ namespace Apache.Qpid.Proton.Client.Implementation
    /// </summary>
    public sealed class ClientAccepted : ClientDeliveryState
    {
-      public static readonly ClientAccepted Instance = new ClientAccepted();
+      public static readonly ClientAccepted Instance = new();
 
       private ClientAccepted() { }
 
       public override DeliveryStateType Type => DeliveryStateType.Accepted;
 
-      public override Types.Transport.IDeliveryState ProtonDeliveryState => Types.Messaging.Accepted.Instance;
+      public override Types.Transport.IDeliveryState ProtonDeliveryState => Accepted.Instance;
 
    }
 
@@ -110,7 +110,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
    }
 
    /// <summary>
-   /// Client version of the proton Modifed delivery state
+   /// Client version of the proton Modified delivery state
    /// </summary>
    public sealed class ClientModified : ClientDeliveryState
    {
@@ -154,7 +154,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
    }
 
    /// <summary>
-   /// Client version of the proton Modifed delivery state
+   /// Client version of the proton Transactional delivery state
    /// </summary>
    public sealed class ClientTransactional : ClientDeliveryState
    {
diff --git a/src/Proton.Client/Client/Implementation/ClientLocalTransactionContext.cs b/src/Proton.Client/Client/Implementation/ClientLocalTransactionContext.cs
index ad742bb..59eff8e 100644
--- a/src/Proton.Client/Client/Implementation/ClientLocalTransactionContext.cs
+++ b/src/Proton.Client/Client/Implementation/ClientLocalTransactionContext.cs
@@ -342,7 +342,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             {
                case TransactionState.Discharged:
                case TransactionState.DischargeFailed:
-               case TransactionState.DelcareFailed:
+               case TransactionState.DeclareFailed:
                   break;
                case TransactionState.Declaring:
                   throw new ClientIllegalStateException("A transaction is already in the process of being started");
@@ -372,7 +372,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
                   throw new ClientIllegalStateException("Commit called before transaction declare completed.");
                case TransactionState.Discharging:
                   throw new ClientIllegalStateException("Commit called before transaction discharge completed.");
-               case TransactionState.DelcareFailed:
+               case TransactionState.DeclareFailed:
                   throw new ClientTransactionNotActiveException("Commit called on a transaction that has failed due to an error during declare.");
                case TransactionState.DischargeFailed:
                   throw new ClientTransactionNotActiveException("Commit called on a transaction that has failed due to an error during discharge.");
@@ -400,7 +400,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
                   throw new ClientIllegalStateException("Rollback called before transaction declare completed.");
                case TransactionState.Discharging:
                   throw new ClientIllegalStateException("Rollback called before transaction discharge completed.");
-               case TransactionState.DelcareFailed:
+               case TransactionState.DeclareFailed:
                   throw new ClientTransactionNotActiveException("Rollback called on a transaction that has failed due to an error during declare.");
                case TransactionState.DischargeFailed:
                   throw new ClientTransactionNotActiveException("Rollback called on a transaction that has failed due to an error during discharge.");
diff --git a/src/Proton.Client/Client/Implementation/ClientMessage.cs b/src/Proton.Client/Client/Implementation/ClientMessage.cs
index 802ec82..4742268 100644
--- a/src/Proton.Client/Client/Implementation/ClientMessage.cs
+++ b/src/Proton.Client/Client/Implementation/ClientMessage.cs
@@ -54,15 +54,18 @@ namespace Apache.Qpid.Proton.Client.Implementation
 
       #region Static ClientMessage factory methods
 
-      public static ClientMessage<T> Create() {
+      public static ClientMessage<T> Create()
+      {
          return new ClientMessage<T>();
       }
 
-      public static ClientMessage<T> Create(ISection body) {
+      public static ClientMessage<T> Create(ISection body)
+      {
          return new ClientMessage<T>(body);
       }
 
-      public static ClientMessage<T> CreateAdvancedMessage() {
+      public static ClientMessage<T> CreateAdvancedMessage()
+      {
          return new ClientMessage<T>();
       }
 
diff --git a/src/Proton.Client/Client/Implementation/ClientRemoteSource.cs b/src/Proton.Client/Client/Implementation/ClientRemoteSource.cs
index c07dae6..64f98ab 100644
--- a/src/Proton.Client/Client/Implementation/ClientRemoteSource.cs
+++ b/src/Proton.Client/Client/Implementation/ClientRemoteSource.cs
@@ -138,7 +138,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
          {
             if (cachedOutcomes == null && remoteSource.Outcomes != null)
             {
-               List<DeliveryStateType> result = new List<DeliveryStateType>(
+               List<DeliveryStateType> result = new(
                   System.Array.ConvertAll(remoteSource.Outcomes, (outcome) => outcome.ToDeliveryStateType()));
                cachedOutcomes = result;
             }
diff --git a/src/Proton.Client/Client/Implementation/ClientStreamReceiver.cs b/src/Proton.Client/Client/Implementation/ClientStreamReceiver.cs
index 9f65dbb..81bb138 100644
--- a/src/Proton.Client/Client/Implementation/ClientStreamReceiver.cs
+++ b/src/Proton.Client/Client/Implementation/ClientStreamReceiver.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
    /// Implements the streaming message receiver which allows for reading of large
    /// messages in smaller chunks. The API allows for multiple calls to receiver but
    /// any call that happens after a large message receives begins will be blocked
-   /// until the previous large messsage is fully read and the next arrives.
+   /// until the previous large message is fully read and the next arrives.
    /// </summary>
    public sealed class ClientStreamReceiver : ClientReceiverLinkType<IStreamReceiver>, IStreamReceiver
    {
diff --git a/src/Proton.Client/Client/Implementation/ClientStreamSender.cs b/src/Proton.Client/Client/Implementation/ClientStreamSender.cs
index fad16f5..e755109 100644
--- a/src/Proton.Client/Client/Implementation/ClientStreamSender.cs
+++ b/src/Proton.Client/Client/Implementation/ClientStreamSender.cs
@@ -423,7 +423,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
 
       #endregion
 
-      #region Proton Sender lifecycle envent handlers
+      #region Proton Sender lifecycle event handlers
 
       private void HandleLocalOpen(Engine.ISender sender)
       {
@@ -651,7 +651,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
          /// <summary>
          /// Indicates if the delivery contained within this envelope is aborted. This does
          /// not transmit the actual aborted status to the remote, the sender must transmit
-         /// the contents of the envelope in order to convery the abort.
+         /// the contents of the envelope in order to convey the abort.
          /// </summary>
          public bool Aborted => delivery?.IsAborted ?? false;
 
diff --git a/src/Proton.Client/Client/Implementation/ClientStreamSenderMessage.cs b/src/Proton.Client/Client/Implementation/ClientStreamSenderMessage.cs
index 58798da..7391c16 100644
--- a/src/Proton.Client/Client/Implementation/ClientStreamSenderMessage.cs
+++ b/src/Proton.Client/Client/Implementation/ClientStreamSenderMessage.cs
@@ -64,8 +64,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
          }
          else
          {
-            writeBufferSize = Math.Max(StreamSenderOptions.MIN_BUFFER_SIZE_LIMIT,
-                                       (uint)sender.ProtonSender.Connection.MaxFrameSize);
+            writeBufferSize = Math.Max(StreamSenderOptions.MIN_BUFFER_SIZE_LIMIT, sender.ProtonSender.Connection.MaxFrameSize);
          }
       }
 
@@ -160,7 +159,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             throw new ClientIllegalStateException("Cannot create an Stream from a aborted send context");
          }
 
-         if (currentState == StreamState.BODY_WRITTING)
+         if (currentState == StreamState.BODY_WRITING)
          {
             throw new ClientIllegalStateException("Cannot add more body sections while an Stream is active");
          }
@@ -529,7 +528,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             throw new ClientIllegalStateException("Cannot add more body sections to an aborted message");
          }
 
-         if (currentState == StreamState.BODY_WRITTING)
+         if (currentState == StreamState.BODY_WRITING)
          {
             throw new ClientIllegalStateException("Cannot add more body sections while an OutputStream is active");
          }
@@ -578,7 +577,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             throw new ClientIllegalStateException("Cannot create an OutputStream from a aborted send context");
          }
 
-         if (currentState == StreamState.BODY_WRITTING)
+         if (currentState == StreamState.BODY_WRITING)
          {
             throw new ClientIllegalStateException("Cannot add more body sections while an OutputStream is active");
          }
@@ -605,7 +604,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
       {
          PREAMBLE,
          BODY_WRITABLE,
-         BODY_WRITTING,
+         BODY_WRITING,
          COMPLETE,
          ABORTED
       }
@@ -779,7 +778,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             this.message = message;
 
             // Stream takes control of state until closed.
-            this.message.currentState = StreamState.BODY_WRITTING;
+            this.message.currentState = StreamState.BODY_WRITING;
          }
 
          #region Stream API implementation
diff --git a/src/Proton.Client/Client/Utilities/Objects.cs b/src/Proton.Client/Client/Utilities/Objects.cs
index 397aa77..de60349 100644
--- a/src/Proton.Client/Client/Utilities/Objects.cs
+++ b/src/Proton.Client/Client/Utilities/Objects.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Client.Utilities
       /// <summary>
       /// Used to check for a method argument being null when the precondition
       /// states that it should not be, the method provides for the user to supply
-      /// a nessage to use when throwing an Argument null exception if the value
+      /// a message to use when throwing an Argument null exception if the value
       /// that was passed is indeed null.
       /// </summary>
       /// <param name="value">The value to check for null</param>
diff --git a/src/Proton.Client/Client/Utilities/ReconnectLocationPool.cs b/src/Proton.Client/Client/Utilities/ReconnectLocationPool.cs
index 52d5c80..ed83cd0 100644
--- a/src/Proton.Client/Client/Utilities/ReconnectLocationPool.cs
+++ b/src/Proton.Client/Client/Utilities/ReconnectLocationPool.cs
@@ -101,7 +101,7 @@ namespace Apache.Qpid.Proton.Client.Utilities
       }
 
       /// <summary>
-      /// Shuffle the elements in the pool producing a new randmoized sequence of
+      /// Shuffle the elements in the pool producing a new randomized sequence of
       /// reconnection locations based on the original set.
       /// </summary>
       public void Shuffle()
diff --git a/src/Proton.TestPeer/Actions/AbstractPerformativeInjectAction.cs b/src/Proton.TestPeer/Actions/AbstractPerformativeInjectAction.cs
index 2f678cd..5408205 100644
--- a/src/Proton.TestPeer/Actions/AbstractPerformativeInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/AbstractPerformativeInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 
 namespace Apache.Qpid.Proton.Test.Driver.Actions
@@ -37,9 +36,9 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
          this.driver = driver;
       }
 
-      public override AbstractPerformativeInjectAction<T> Later(long millis)
+      public override AbstractPerformativeInjectAction<T> Later(long milliseconds)
       {
-         driver.AfterDelay(millis, this);
+         driver.AfterDelay(milliseconds, this);
          return this;
       }
 
diff --git a/src/Proton.TestPeer/Actions/AbstractSaslPerformativeInjectAction.cs b/src/Proton.TestPeer/Actions/AbstractSaslPerformativeInjectAction.cs
index 8c40e31..16fef38 100644
--- a/src/Proton.TestPeer/Actions/AbstractSaslPerformativeInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/AbstractSaslPerformativeInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 
 namespace Apache.Qpid.Proton.Test.Driver.Actions
diff --git a/src/Proton.TestPeer/Actions/AttachInjectAction.cs b/src/Proton.TestPeer/Actions/AttachInjectAction.cs
index 306a956..5ddf303 100644
--- a/src/Proton.TestPeer/Actions/AttachInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/AttachInjectAction.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public sealed class AttachInjectAction : AbstractPerformativeInjectAction<Attach>
    {
-      private readonly Attach attach = new Attach();
+      private readonly Attach attach = new();
 
       private bool explicitlyNullName;
       private bool explicitlyNullHandle;
@@ -114,7 +114,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
       public AttachInjectAction WithSenderSettleModeSettled()
       {
-         attach.SenderSettleMode = SenderSettleMode.Settked;
+         attach.SenderSettleMode = SenderSettleMode.Settled;
          return this;
       }
 
diff --git a/src/Proton.TestPeer/Actions/BeginIjectAction.cs b/src/Proton.TestPeer/Actions/BeginIjectAction.cs
index bd5d25a..9355af3 100644
--- a/src/Proton.TestPeer/Actions/BeginIjectAction.cs
+++ b/src/Proton.TestPeer/Actions/BeginIjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -31,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    {
       private static readonly uint DEFAULT_WINDOW_SIZE = int.MaxValue;
 
-      private readonly Begin begin = new Begin()
+      private readonly Begin begin = new()
       {
          NextOutgoingId = 1,
          IncomingWindow = DEFAULT_WINDOW_SIZE,
diff --git a/src/Proton.TestPeer/Actions/CloseInjectAction.cs b/src/Proton.TestPeer/Actions/CloseInjectAction.cs
index 97367dd..7c3007b 100644
--- a/src/Proton.TestPeer/Actions/CloseInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/CloseInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -29,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public sealed class CloseInjectAction : AbstractPerformativeInjectAction<Close>
    {
-      private readonly Close close = new Close();
+      private readonly Close close = new();
 
       public CloseInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/ConnectionDropAction.cs b/src/Proton.TestPeer/Actions/ConnectionDropAction.cs
index 5be8546..87ed365 100644
--- a/src/Proton.TestPeer/Actions/ConnectionDropAction.cs
+++ b/src/Proton.TestPeer/Actions/ConnectionDropAction.cs
@@ -15,12 +15,6 @@
  * limitations under the License.
  */
 
-using System;
-using System.Collections.Generic;
-using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
-using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
-using Apache.Qpid.Proton.Test.Driver.Codec.Utilities;
-
 namespace Apache.Qpid.Proton.Test.Driver.Actions
 {
    /// <summary>
diff --git a/src/Proton.TestPeer/Actions/DetachInjectAction.cs b/src/Proton.TestPeer/Actions/DetachInjectAction.cs
index fe4cc93..c3b0f08 100644
--- a/src/Proton.TestPeer/Actions/DetachInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/DetachInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -30,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class DetachInjectAction : AbstractPerformativeInjectAction<Detach>
    {
-      private readonly Detach detach = new Detach();
+      private readonly Detach detach = new();
 
       public DetachInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/DetachLastCoordinatorInjectAction.cs b/src/Proton.TestPeer/Actions/DetachLastCoordinatorInjectAction.cs
index 89cc934..3ce82e2 100644
--- a/src/Proton.TestPeer/Actions/DetachLastCoordinatorInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/DetachLastCoordinatorInjectAction.cs
@@ -43,7 +43,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          if (!tracker.IsLocallyAttached)
          {
-            AttachInjectAction attach = new AttachInjectAction(driver);
+            AttachInjectAction attach = new(driver);
 
             attach.OnChannel((ushort)channel);
             attach.WithName(tracker.Name);
diff --git a/src/Proton.TestPeer/Actions/DischargeInjectAction.cs b/src/Proton.TestPeer/Actions/DischargeInjectAction.cs
index 6499e72..cde518e 100644
--- a/src/Proton.TestPeer/Actions/DischargeInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/DischargeInjectAction.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class DischargeInjectAction : TransferInjectAction
    {
-      private readonly Discharge discharge = new Discharge();
+      private readonly Discharge discharge = new();
 
       public DischargeInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/DispositionInjectAction.cs b/src/Proton.TestPeer/Actions/DispositionInjectAction.cs
index e92e473..ca9465b 100644
--- a/src/Proton.TestPeer/Actions/DispositionInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/DispositionInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using Apache.Qpid.Proton.Test.Driver.Codec.Messaging;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transactions;
@@ -29,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class DispositionInjectAction : AbstractPerformativeInjectAction<Disposition>
    {
-      private readonly Disposition disposition = new Disposition();
+      private readonly Disposition disposition = new();
       private readonly DeliveryStateBuilder stateBuilder;
 
       public DispositionInjectAction(AMQPTestDriver driver) : base(driver)
@@ -126,7 +125,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public DispositionInjectAction Rejected(string condition, string description)
          {
-            Rejected rejected = new Rejected
+            Rejected rejected = new()
             {
                Error = new ErrorCondition(new Symbol(condition), description)
             };
@@ -141,7 +140,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public DispositionInjectAction Modified(bool failed)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed
             };
@@ -151,7 +150,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public DispositionInjectAction Modified(bool failed, bool undeliverableHere)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed,
                UndeliverableHere = undeliverableHere
@@ -162,7 +161,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder Transactional()
          {
-            TransactionalStateBuilder builder = new TransactionalStateBuilder(action);
+            TransactionalStateBuilder builder = new(action);
             action.WithState(builder.State());
             return builder;
          }
@@ -171,7 +170,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
       public sealed class TransactionalStateBuilder
       {
          private readonly DispositionInjectAction action;
-         private readonly TransactionalState state = new TransactionalState();
+         private readonly TransactionalState state = new();
 
          public TransactionalStateBuilder(DispositionInjectAction action)
          {
@@ -228,7 +227,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithRejected(string condition, string description)
          {
-            Rejected rejected = new Rejected
+            Rejected rejected = new()
             {
                Error = new ErrorCondition(new Symbol(condition), description)
             };
@@ -243,7 +242,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithModified(bool failed)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed
             };
@@ -253,7 +252,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithModified(bool failed, bool undeliverableHere)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed,
                UndeliverableHere = undeliverableHere
diff --git a/src/Proton.TestPeer/Actions/EndInjectAction.cs b/src/Proton.TestPeer/Actions/EndInjectAction.cs
index 65613b7..0292146 100644
--- a/src/Proton.TestPeer/Actions/EndInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/EndInjectAction.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -29,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public sealed class EndInjectAction : AbstractPerformativeInjectAction<End>
    {
-      private readonly End end = new End();
+      private readonly End end = new();
 
       public EndInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/ExecuteUserCodeAction.cs b/src/Proton.TestPeer/Actions/ExecuteUserCodeAction.cs
index 49222ce..eb163ea 100644
--- a/src/Proton.TestPeer/Actions/ExecuteUserCodeAction.cs
+++ b/src/Proton.TestPeer/Actions/ExecuteUserCodeAction.cs
@@ -43,7 +43,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
       /// <summary>
       /// Used only when queuing a scripted user code action which should delay once the
-      /// queued action is finalled reached, this is a rare edge case test mechanism and
+      /// queued action is finally reached, this is a rare edge case test mechanism and
       /// could cause issues if other scripted actions depend on executing after this but
       /// are not suitably delayed themselves.
       /// </summary>
@@ -97,7 +97,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
          this.action = action;
       }
 
-      public override ScriptedAction Later(long millis)
+      public override ScriptedAction Later(long milliseconds)
       {
          return this;
       }
diff --git a/src/Proton.TestPeer/Actions/FlowInjectAction.cs b/src/Proton.TestPeer/Actions/FlowInjectAction.cs
index be53627..cf44605 100644
--- a/src/Proton.TestPeer/Actions/FlowInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/FlowInjectAction.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class FlowInjectAction : AbstractPerformativeInjectAction<Flow>
    {
-      private readonly Flow flow = new Flow();
+      private readonly Flow flow = new();
 
       private bool explicitlyNullHandle;
 
diff --git a/src/Proton.TestPeer/Actions/OpenInjectAction.cs b/src/Proton.TestPeer/Actions/OpenInjectAction.cs
index 82fcb96..0c49af1 100644
--- a/src/Proton.TestPeer/Actions/OpenInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/OpenInjectAction.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class OpenInjectAction : AbstractPerformativeInjectAction<Open>
    {
-      private readonly Open open = new Open();
+      private readonly Open open = new();
 
       public OpenInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/ProxyDelayedScriptedAction.cs b/src/Proton.TestPeer/Actions/ProxyDelayedScriptedAction.cs
index 2aac1ed..5f66c4e 100644
--- a/src/Proton.TestPeer/Actions/ProxyDelayedScriptedAction.cs
+++ b/src/Proton.TestPeer/Actions/ProxyDelayedScriptedAction.cs
@@ -35,7 +35,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
       #region Explicitly failing API methods
 
-      public override ScriptedAction Later(long millis)
+      public override ScriptedAction Later(long milliseconds)
       {
          throw new NotImplementedException("Delayed action proxy cannot be used outside of scheduling");
       }
diff --git a/src/Proton.TestPeer/Actions/SaslChallengeInjectAction.cs b/src/Proton.TestPeer/Actions/SaslChallengeInjectAction.cs
index e73b526..bd693cb 100644
--- a/src/Proton.TestPeer/Actions/SaslChallengeInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/SaslChallengeInjectAction.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class SaslChallengeInjectAction : AbstractSaslPerformativeInjectAction<SaslChallenge>
    {
-      private readonly SaslChallenge saslChallenge = new SaslChallenge();
+      private readonly SaslChallenge saslChallenge = new();
 
       public SaslChallengeInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/SaslInitInjectAction.cs b/src/Proton.TestPeer/Actions/SaslInitInjectAction.cs
index 47d682a..7f563d9 100644
--- a/src/Proton.TestPeer/Actions/SaslInitInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/SaslInitInjectAction.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class SaslInitInjectAction : AbstractSaslPerformativeInjectAction<SaslInit>
    {
-      private readonly SaslInit saslInit = new SaslInit();
+      private readonly SaslInit saslInit = new();
 
       public SaslInitInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/SaslMechanismsInjectAction.cs b/src/Proton.TestPeer/Actions/SaslMechanismsInjectAction.cs
index a71fdd5..2449a9a 100644
--- a/src/Proton.TestPeer/Actions/SaslMechanismsInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/SaslMechanismsInjectAction.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class SaslMechanismsInjectAction : AbstractSaslPerformativeInjectAction<SaslMechanisms>
    {
-      private readonly SaslMechanisms saslMechanisms = new SaslMechanisms();
+      private readonly SaslMechanisms saslMechanisms = new();
 
       public SaslMechanismsInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/SaslOutcomeInjectAction.cs b/src/Proton.TestPeer/Actions/SaslOutcomeInjectAction.cs
index d089184..70a6a9e 100644
--- a/src/Proton.TestPeer/Actions/SaslOutcomeInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/SaslOutcomeInjectAction.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class SaslOutcomeInjectAction : AbstractSaslPerformativeInjectAction<SaslOutcome>
    {
-      private readonly SaslOutcome saslOutcome = new SaslOutcome();
+      private readonly SaslOutcome saslOutcome = new();
 
       public SaslOutcomeInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/SaslResponseInjectAction.cs b/src/Proton.TestPeer/Actions/SaslResponseInjectAction.cs
index c52828c..f4853b6 100644
--- a/src/Proton.TestPeer/Actions/SaslResponseInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/SaslResponseInjectAction.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class SaslResponseInjectAction : AbstractSaslPerformativeInjectAction<SaslResponse>
    {
-      private readonly SaslResponse saslResponse = new SaslResponse();
+      private readonly SaslResponse saslResponse = new();
 
       public SaslResponseInjectAction(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Actions/ScriptCompleteAction.cs b/src/Proton.TestPeer/Actions/ScriptCompleteAction.cs
index 36dfd8f..2233305 100644
--- a/src/Proton.TestPeer/Actions/ScriptCompleteAction.cs
+++ b/src/Proton.TestPeer/Actions/ScriptCompleteAction.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    public sealed class ScriptCompleteAction : ScriptedAction
    {
       private readonly AMQPTestDriver driver;
-      private readonly CountdownEvent complete = new CountdownEvent(1);
+      private readonly CountdownEvent complete = new(1);
       private readonly ILogger<ScriptCompleteAction> logger;
 
       public ScriptCompleteAction(AMQPTestDriver driver)
@@ -46,14 +46,14 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
       public override ScriptCompleteAction Now()
       {
-         logger.LogTrace("{0} Script compeltion action triggered on Now call", driver.Name);
+         logger.LogTrace("{0} Script completion action triggered on Now call", driver.Name);
          complete.Signal();
          return this;
       }
 
       public override ScriptCompleteAction Perform(AMQPTestDriver driver)
       {
-         logger.LogTrace("{0} Script compeltion action performing action via script driver", driver.Name);
+         logger.LogTrace("{0} Script completion action performing action via script driver", driver.Name);
          complete.Signal();
          return this;
       }
diff --git a/src/Proton.TestPeer/Actions/TransferInjectAction.cs b/src/Proton.TestPeer/Actions/TransferInjectAction.cs
index d27bd9d..243e35a 100644
--- a/src/Proton.TestPeer/Actions/TransferInjectAction.cs
+++ b/src/Proton.TestPeer/Actions/TransferInjectAction.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
    /// </summary>
    public class TransferInjectAction : AbstractPerformativeInjectAction<Transfer>
    {
-      private readonly Transfer transfer = new Transfer();
+      private readonly Transfer transfer = new();
       private readonly DeliveryStateBuilder stateBuilder;
 
       private byte[] payload;
@@ -281,7 +281,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
       private byte[] EncodePayload()
       {
          ICodec codec = CodecFactory.Create();
-         MemoryStream encoding = new MemoryStream();
+         MemoryStream encoding = new();
 
          if (header != null)
          {
@@ -617,7 +617,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransferInjectAction Rejected(string condition, string description)
          {
-            Rejected rejected = new Rejected
+            Rejected rejected = new()
             {
                Error = new ErrorCondition(new Symbol(condition), description)
             };
@@ -632,7 +632,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransferInjectAction Modified(bool failed)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed
             };
@@ -642,7 +642,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransferInjectAction Modified(bool failed, bool undeliverableHere)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed,
                UndeliverableHere = undeliverableHere
@@ -653,7 +653,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder Transactional()
          {
-            TransactionalStateBuilder builder = new TransactionalStateBuilder(action);
+            TransactionalStateBuilder builder = new(action);
             action.WithState(builder.State());
             return builder;
          }
@@ -662,7 +662,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
       public sealed class TransactionalStateBuilder
       {
          private readonly TransferInjectAction action;
-         private readonly TransactionalState state = new TransactionalState();
+         private readonly TransactionalState state = new();
 
          public TransactionalStateBuilder(TransferInjectAction action)
          {
@@ -719,7 +719,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithRejected(string condition, string description)
          {
-            Rejected rejected = new Rejected
+            Rejected rejected = new()
             {
                Error = new ErrorCondition(new Symbol(condition), description)
             };
@@ -734,7 +734,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithModified(bool failed)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed
             };
@@ -744,7 +744,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Actions
 
          public TransactionalStateBuilder WithModified(bool failed, bool undeliverableHere)
          {
-            Modified modified = new Modified
+            Modified modified = new()
             {
                DeliveryFailed = failed,
                UndeliverableHere = undeliverableHere
diff --git a/src/Proton.TestPeer/Codec/Impl/AbstractElement.cs b/src/Proton.TestPeer/Codec/Impl/AbstractElement.cs
index a4493c8..e9043e6 100644
--- a/src/Proton.TestPeer/Codec/Impl/AbstractElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/AbstractElement.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Text;
 using System.Runtime.CompilerServices;
 using System.IO;
diff --git a/src/Proton.TestPeer/Codec/Impl/ArrayElement.cs b/src/Proton.TestPeer/Codec/Impl/ArrayElement.cs
index 20a0ab3..0bd971a 100644
--- a/src/Proton.TestPeer/Codec/Impl/ArrayElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/ArrayElement.cs
@@ -215,13 +215,13 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             {
                if (size > 257 || count > 255)
                {
-                  stream.WriteByte((byte)0xf0);
+                  stream.WriteByte(0xf0);
                   stream.WriteUnsignedInt(size - 5);
                   stream.WriteUnsignedInt(count);
                }
                else
                {
-                  stream.WriteByte((byte)0xe0);
+                  stream.WriteByte(0xe0);
                   stream.WriteByte((byte)(size - 2));
                   stream.WriteByte((byte)count);
                }
@@ -243,10 +243,10 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             IElement element = first;
             if (IsDescribed)
             {
-               stream.WriteByte((byte)0);
+               stream.WriteByte(0);
                if (element == null)
                {
-                  stream.WriteByte((byte)0x40);
+                  stream.WriteByte(0x40);
                }
                else
                {
@@ -257,34 +257,34 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             switch (arrayType)
             {
                case DataType.Null:
-                  stream.WriteByte((byte)0x40);
+                  stream.WriteByte(0x40);
                   break;
                case DataType.Bool:
-                  stream.WriteByte((byte)0x56);
+                  stream.WriteByte(0x56);
                   break;
                case DataType.UByte:
-                  stream.WriteByte((byte)0x50);
+                  stream.WriteByte(0x50);
                   break;
                case DataType.Byte:
-                  stream.WriteByte((byte)0x51);
+                  stream.WriteByte(0x51);
                   break;
                case DataType.UShort:
-                  stream.WriteByte((byte)0x60);
+                  stream.WriteByte(0x60);
                   break;
                case DataType.Short:
-                  stream.WriteByte((byte)0x61);
+                  stream.WriteByte(0x61);
                   break;
                case DataType.UInt:
                   switch (ConstructorType)
                   {
                      case ConstructorType.Tiny:
-                        stream.WriteByte((byte)0x43);
+                        stream.WriteByte(0x43);
                         break;
                      case ConstructorType.Small:
-                        stream.WriteByte((byte)0x52);
+                        stream.WriteByte(0x52);
                         break;
                      case ConstructorType.Large:
-                        stream.WriteByte((byte)0x70);
+                        stream.WriteByte(0x70);
                         break;
                   }
                   break;
@@ -292,19 +292,19 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
                   stream.WriteByte(ConstructorType == ConstructorType.Small ? (byte)0x54 : (byte)0x71);
                   break;
                case DataType.Char:
-                  stream.WriteByte((byte)0x73);
+                  stream.WriteByte(0x73);
                   break;
                case DataType.ULong:
                   switch (ConstructorType)
                   {
                      case ConstructorType.Tiny:
-                        stream.WriteByte((byte)0x44);
+                        stream.WriteByte(0x44);
                         break;
                      case ConstructorType.Small:
-                        stream.WriteByte((byte)0x53);
+                        stream.WriteByte(0x53);
                         break;
                      case ConstructorType.Large:
-                        stream.WriteByte((byte)0x80);
+                        stream.WriteByte(0x80);
                         break;
                   }
                   break;
@@ -312,25 +312,25 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
                   stream.WriteByte(ConstructorType == ConstructorType.Small ? (byte)0x55 : (byte)0x81);
                   break;
                case DataType.Timestamp:
-                  stream.WriteByte((byte)0x83);
+                  stream.WriteByte(0x83);
                   break;
                case DataType.Float:
-                  stream.WriteByte((byte)0x72);
+                  stream.WriteByte(0x72);
                   break;
                case DataType.Double:
-                  stream.WriteByte((byte)0x82);
+                  stream.WriteByte(0x82);
                   break;
                case DataType.Decimal32:
-                  stream.WriteByte((byte)0x74);
+                  stream.WriteByte(0x74);
                   break;
                case DataType.Decimal64:
-                  stream.WriteByte((byte)0x84);
+                  stream.WriteByte(0x84);
                   break;
                case DataType.Decimal128:
-                  stream.WriteByte((byte)0x94);
+                  stream.WriteByte(0x94);
                   break;
                case DataType.Uuid:
-                  stream.WriteByte((byte)0x98);
+                  stream.WriteByte(0x98);
                   break;
                case DataType.Binary:
                   stream.WriteByte(ConstructorType == ConstructorType.Small ? (byte)0xa0 : (byte)0xb0);
diff --git a/src/Proton.TestPeer/Codec/Impl/DescribedTypeElement.cs b/src/Proton.TestPeer/Codec/Impl/DescribedTypeElement.cs
index bc93877..e0c8216 100644
--- a/src/Proton.TestPeer/Codec/Impl/DescribedTypeElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/DescribedTypeElement.cs
@@ -113,18 +113,18 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          }
          else
          {
-            stream.WriteByte((byte)0);
+            stream.WriteByte(0);
             if (first == null)
             {
-               stream.WriteByte((byte)0x40);
-               stream.WriteByte((byte)0x40);
+               stream.WriteByte(0x40);
+               stream.WriteByte(0x40);
             }
             else
             {
                first.Encode(stream);
                if (first.Next == null)
                {
-                  stream.WriteByte((byte)0x40);
+                  stream.WriteByte(0x40);
                }
                else
                {
diff --git a/src/Proton.TestPeer/Codec/Impl/IntegerElement.cs b/src/Proton.TestPeer/Codec/Impl/IntegerElement.cs
index 54509e1..30ac86c 100644
--- a/src/Proton.TestPeer/Codec/Impl/IntegerElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/IntegerElement.cs
@@ -75,7 +75,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             ArrayElement parent = (ArrayElement)Parent;
             if (parent.ConstructorType == ConstructorType.Small)
             {
-               if (-128 <= value && value <= 127)
+               if (value is >= (-128) and <= 127)
                {
                   return 1;
                }
@@ -92,7 +92,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          }
          else
          {
-            return (-128 <= value && value <= 127) ? 2u : 5u;
+            return (value is >= (-128) and <= 127) ? 2u : 5u;
          }
       }
    }
diff --git a/src/Proton.TestPeer/Codec/Impl/ListElement.cs b/src/Proton.TestPeer/Codec/Impl/ListElement.cs
index a656c42..4685e4b 100644
--- a/src/Proton.TestPeer/Codec/Impl/ListElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/ListElement.cs
@@ -128,17 +128,17 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             {
                if (count == 0)
                {
-                  stream.WriteByte((byte)0x45);
+                  stream.WriteByte(0x45);
                }
                else if (size <= 254 && count <= 255)
                {
-                  stream.WriteByte((byte)0xc0);
+                  stream.WriteByte(0xc0);
                   stream.WriteByte((byte)(size + 1));
                   stream.WriteByte((byte)count);
                }
                else
                {
-                  stream.WriteByte((byte)0xd0);
+                  stream.WriteByte(0xd0);
                   stream.WriteUnsignedInt((size + 4));
                   stream.WriteUnsignedInt(count);
                }
diff --git a/src/Proton.TestPeer/Codec/Impl/LongElement.cs b/src/Proton.TestPeer/Codec/Impl/LongElement.cs
index 5694684..21bf31e 100644
--- a/src/Proton.TestPeer/Codec/Impl/LongElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/LongElement.cs
@@ -77,7 +77,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
 
             if (parent.ConstructorType == ConstructorType.Small)
             {
-               if (-128L <= value && value <= 127L)
+               if (value is >= (-128L) and <= 127L)
                {
                   return 1;
                }
@@ -92,7 +92,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          }
          else
          {
-            return (-128L <= value && value <= 127L) ? 2u : 9u;
+            return (value is >= (-128L) and <= 127L) ? 2u : 9u;
          }
       }
    }
diff --git a/src/Proton.TestPeer/Codec/Impl/MapElement.cs b/src/Proton.TestPeer/Codec/Impl/MapElement.cs
index 34486de..ff7993b 100644
--- a/src/Proton.TestPeer/Codec/Impl/MapElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/MapElement.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections;
 using System.IO;
 
@@ -140,13 +139,13 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             {
                if (size <= 254 && count <= 255)
                {
-                  stream.WriteByte((byte)0xc1);
+                  stream.WriteByte(0xc1);
                   stream.WriteByte((byte)(size + 1));
                   stream.WriteByte((byte)count);
                }
                else
                {
-                  stream.WriteByte((byte)0xd1);
+                  stream.WriteByte(0xd1);
                   stream.WriteUnsignedInt(size + 4);
                   stream.WriteUnsignedInt(count);
                }
diff --git a/src/Proton.TestPeer/Codec/Impl/StreamExtensions.cs b/src/Proton.TestPeer/Codec/Impl/StreamExtensions.cs
index b0b05cd..00669ee 100644
--- a/src/Proton.TestPeer/Codec/Impl/StreamExtensions.cs
+++ b/src/Proton.TestPeer/Codec/Impl/StreamExtensions.cs
@@ -185,10 +185,10 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
       /// <exception cref="DecodeException">If the value cannot be read from the stream</exception>
       public static int ReadInt(this Stream stream)
       {
-         return (int)(ReadUnsignedByte(stream) & 0xFF) << 24 |
-                (int)(ReadUnsignedByte(stream) & 0xFF) << 16 |
-                (int)(ReadUnsignedByte(stream) & 0xFF) << 8 |
-                (int)(ReadUnsignedByte(stream) & 0xFF) << 0;
+         return (ReadUnsignedByte(stream) & 0xFF) << 24 |
+                (ReadUnsignedByte(stream) & 0xFF) << 16 |
+                (ReadUnsignedByte(stream) & 0xFF) << 8 |
+                (ReadUnsignedByte(stream) & 0xFF) << 0;
       }
 
       /// <summary>
diff --git a/src/Proton.TestPeer/Codec/Impl/StringElement.cs b/src/Proton.TestPeer/Codec/Impl/StringElement.cs
index 011aadc..7d349cd 100644
--- a/src/Proton.TestPeer/Codec/Impl/StringElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/StringElement.cs
@@ -54,7 +54,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
 
          if (IsElementOfArray())
          {
-            ArrayElement parent = (ArrayElement) Parent;
+            ArrayElement parent = (ArrayElement)Parent;
 
             if (parent.ConstructorType == ConstructorType.Small)
             {
diff --git a/src/Proton.TestPeer/Codec/Impl/TimestampElement.cs b/src/Proton.TestPeer/Codec/Impl/TimestampElement.cs
index e44eeaa..25399c4 100644
--- a/src/Proton.TestPeer/Codec/Impl/TimestampElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/TimestampElement.cs
@@ -41,7 +41,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
 
       public override object Value => (ulong)value;
 
-      public DateTime TimeValue => new DateTime(value, DateTimeKind.Utc);
+      public DateTime TimeValue => new(value, DateTimeKind.Utc);
 
       public override DataType DataType => DataType.Timestamp;
 
diff --git a/src/Proton.TestPeer/Codec/Impl/TypeDecoder.cs b/src/Proton.TestPeer/Codec/Impl/TypeDecoder.cs
index 7466389..8e015a4 100644
--- a/src/Proton.TestPeer/Codec/Impl/TypeDecoder.cs
+++ b/src/Proton.TestPeer/Codec/Impl/TypeDecoder.cs
@@ -142,7 +142,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          Stream stream = new MemoryStream(buffer);
 
          byte type = stream.ReadUnsignedByte();
-         bool isDescribed = type == (byte)0x00;
+         bool isDescribed = type == 0x00;
          long descriptorPosition = stream.ReadIndex();
 
          if (isDescribed)
@@ -150,7 +150,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
             ITypeConstructor descriptorTc = ReadConstructor(stream);
             stream.ReadIndex(descriptorPosition + descriptorTc.Size(stream));
             type = stream.ReadUnsignedByte();
-            if (type == (byte)0x00)
+            if (type == 0x00)
             {
                throw new ArgumentException("Malformed array data");
             }
@@ -410,7 +410,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          public override void Parse(Stream stream, Codec codec)
          {
             byte i = stream.ReadUnsignedByte();
-            if (i != 0 && i != 1)
+            if (i is not 0 and not 1)
             {
                throw new ArgumentOutOfRangeException("Illegal value " + i + " for boolean");
             }
diff --git a/src/Proton.TestPeer/Codec/Impl/UnsignedIntegerElement.cs b/src/Proton.TestPeer/Codec/Impl/UnsignedIntegerElement.cs
index af994c0..847c878 100644
--- a/src/Proton.TestPeer/Codec/Impl/UnsignedIntegerElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/UnsignedIntegerElement.cs
@@ -95,7 +95,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
 
             if (parent.ConstructorType == ConstructorType.Small)
             {
-               if (0 <= value && value <= 255)
+               if (value is >= 0 and <= 255)
                {
                   return 1;
                }
@@ -109,7 +109,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          }
          else
          {
-            return 0 == value ? 1u : (1 <= value && value <= 255) ? 2u : 5u;
+            return 0 == value ? 1u : (value is >= 1 and <= 255) ? 2u : 5u;
          }
       }
    }
diff --git a/src/Proton.TestPeer/Codec/Impl/UnsignedLongElement.cs b/src/Proton.TestPeer/Codec/Impl/UnsignedLongElement.cs
index 76e3cc5..b99b654 100644
--- a/src/Proton.TestPeer/Codec/Impl/UnsignedLongElement.cs
+++ b/src/Proton.TestPeer/Codec/Impl/UnsignedLongElement.cs
@@ -95,7 +95,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
 
             if (parent.ConstructorType == ConstructorType.Small)
             {
-               if (0ul <= value && value <= 255ul)
+               if (value is >= 0ul and <= 255ul)
                {
                   return 1;
                }
@@ -109,7 +109,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Impl
          }
          else
          {
-            return 0ul == value ? 1u : (1ul <= value && value <= 255ul) ? 2u : 9u;
+            return 0ul == value ? 1u : (value is >= 1ul and <= 255ul) ? 2u : 9u;
          }
       }
    }
diff --git a/src/Proton.TestPeer/Codec/Messaging/Accepted.cs b/src/Proton.TestPeer/Codec/Messaging/Accepted.cs
index 0b7eeb6..1077ee3 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Accepted.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Accepted.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -24,10 +23,10 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public class Accepted : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:accepted:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:accepted:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000024UL;
 
-      private static readonly Accepted INSTANCE = new Accepted();
+      private static readonly Accepted INSTANCE = new();
 
       public Accepted() : base(0)
       {
diff --git a/src/Proton.TestPeer/Codec/Messaging/AmqpSequence.cs b/src/Proton.TestPeer/Codec/Messaging/AmqpSequence.cs
index fc35735..e302c50 100644
--- a/src/Proton.TestPeer/Codec/Messaging/AmqpSequence.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/AmqpSequence.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class AmqpSequence : IDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000076UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:amqp-sequence:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:amqp-sequence:list");
 
       private readonly IList described;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/AmqpValue.cs b/src/Proton.TestPeer/Codec/Messaging/AmqpValue.cs
index 2e1656e..df550f0 100644
--- a/src/Proton.TestPeer/Codec/Messaging/AmqpValue.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/AmqpValue.cs
@@ -22,7 +22,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class AmqpValue : IDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000077UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:amqp-value:*");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:amqp-value:*");
 
       private readonly object described;
 
@@ -37,7 +37,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
       public override string ToString()
       {
-        return "AmqpValue: [ " + Described + " ]";
+         return "AmqpValue: [ " + Described + " ]";
       }
    }
 }
\ No newline at end of file
diff --git a/src/Proton.TestPeer/Codec/Messaging/ApplicationProperties.cs b/src/Proton.TestPeer/Codec/Messaging/ApplicationProperties.cs
index b7f5116..dac177b 100644
--- a/src/Proton.TestPeer/Codec/Messaging/ApplicationProperties.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/ApplicationProperties.cs
@@ -16,7 +16,6 @@
  */
 
 using System;
-using Apache.Qpid.Proton.Test.Driver.Codec.Impl;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 
 namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
@@ -24,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class ApplicationProperties : MapDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000074UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:application-properties:map");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:application-properties:map");
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/Data.cs b/src/Proton.TestPeer/Codec/Messaging/Data.cs
index 70f33eb..ab2ff5e 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Data.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Data.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class Data : IDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000075UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:data:binary");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:data:binary");
 
       private readonly Binary described;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/DeleteOnClose.cs b/src/Proton.TestPeer/Codec/Messaging/DeleteOnClose.cs
index ac65859..e9b9692 100644
--- a/src/Proton.TestPeer/Codec/Messaging/DeleteOnClose.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/DeleteOnClose.cs
@@ -22,7 +22,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public sealed class DeleteOnClose : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:delete-on-close:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:delete-on-close:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x000000000000002bUL;
 
       public DeleteOnClose() : base(0)
diff --git a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinks.cs b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinks.cs
index 8cb1df0..5342378 100644
--- a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinks.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinks.cs
@@ -22,7 +22,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public sealed class DeleteOnNoLinks : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:delete-on-no-links:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:delete-on-no-links:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x000000000000002cUL;
 
       public DeleteOnNoLinks() : base(0)
diff --git a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinksOrMessages.cs b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinksOrMessages.cs
index 775ce39..6324579 100644
--- a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinksOrMessages.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoLinksOrMessages.cs
@@ -22,7 +22,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public sealed class DeleteOnNoLinksOrMessages : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:delete-on-no-links-or-messages:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:delete-on-no-links-or-messages:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x000000000000002eUL;
 
       public DeleteOnNoLinksOrMessages() : base(0)
diff --git a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoMessages.cs b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoMessages.cs
index 7f17b48..672e6fe 100644
--- a/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoMessages.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/DeleteOnNoMessages.cs
@@ -22,7 +22,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public sealed class DeleteOnNoMessages : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:delete-on-no-messages:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:delete-on-no-messages:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x000000000000002dUL;
 
       public DeleteOnNoMessages() : base(0)
diff --git a/src/Proton.TestPeer/Codec/Messaging/DeliveryAnnotations.cs b/src/Proton.TestPeer/Codec/Messaging/DeliveryAnnotations.cs
index 62725dc..f3d38d6 100644
--- a/src/Proton.TestPeer/Codec/Messaging/DeliveryAnnotations.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/DeliveryAnnotations.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class DeliveryAnnotations : MapDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000071UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:delivery-annotations:map");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:delivery-annotations:map");
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/Footer.cs b/src/Proton.TestPeer/Codec/Messaging/Footer.cs
index 68f81f2..e81706e 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Footer.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Footer.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class Footer : MapDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000078UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:footer:map");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:footer:map");
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/Header.cs b/src/Proton.TestPeer/Codec/Messaging/Header.cs
index 6038b02..a9d9a23 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Header.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Header.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class Header : ListDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000070UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:header:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:header:list");
 
       public Header() : base(Enum.GetNames(typeof(HeaderField)).Length)
       {
diff --git a/src/Proton.TestPeer/Codec/Messaging/MessageAnnotations.cs b/src/Proton.TestPeer/Codec/Messaging/MessageAnnotations.cs
index 56c1c35..e3ff652 100644
--- a/src/Proton.TestPeer/Codec/Messaging/MessageAnnotations.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/MessageAnnotations.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class MessageAnnotations : MapDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000072UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:message-annotations:map");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:message-annotations:map");
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/Modified.cs b/src/Proton.TestPeer/Codec/Messaging/Modified.cs
index d00c429..42c684f 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Modified.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Modified.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public sealed class Modified : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:modified:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:modified:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000027UL;
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
diff --git a/src/Proton.TestPeer/Codec/Messaging/Properties.cs b/src/Proton.TestPeer/Codec/Messaging/Properties.cs
index 13a962d..6baea4f 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Properties.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Properties.cs
@@ -41,7 +41,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
    public sealed class Properties : ListDescribedType
    {
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000073UL;
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:properties:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:properties:list");
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
 
@@ -59,7 +59,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
       public object MessageId
       {
-         get => (object)List[((int)PropertiesField.MessageId)];
+         get => List[((int)PropertiesField.MessageId)];
          set => List[((int)PropertiesField.MessageId)] = value;
       }
 
@@ -89,7 +89,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
       public object CorrelationId
       {
-         get => (object)List[((int)PropertiesField.CorrelationId)];
+         get => List[((int)PropertiesField.CorrelationId)];
          set => List[((int)PropertiesField.CorrelationId)] = value;
       }
 
@@ -113,7 +113,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
       public ulong? CreationTime
       {
-         get =>  (ulong?)List[((int)PropertiesField.CreationTime)];
+         get => (ulong?)List[((int)PropertiesField.CreationTime)];
          set => List[((int)PropertiesField.CreationTime)] = value;
       }
 
diff --git a/src/Proton.TestPeer/Codec/Messaging/Received.cs b/src/Proton.TestPeer/Codec/Messaging/Received.cs
index 3287837..2ceefd0 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Received.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Received.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public sealed class Received : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:received:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:received:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000023UL;
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
diff --git a/src/Proton.TestPeer/Codec/Messaging/Rejected.cs b/src/Proton.TestPeer/Codec/Messaging/Rejected.cs
index 01a6ba1..5ce8ad6 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Rejected.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Rejected.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public sealed class Rejected : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:rejected:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:rejected:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000025UL;
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
diff --git a/src/Proton.TestPeer/Codec/Messaging/Released.cs b/src/Proton.TestPeer/Codec/Messaging/Released.cs
index 5ae144b..b1d3b54 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Released.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Released.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
@@ -24,10 +23,10 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 {
    public class Released : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:released:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:released:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000026L;
 
-      private static readonly Released INSTANCE = new Released();
+      private static readonly Released INSTANCE = new();
 
       public Released() : base(0)
       {
diff --git a/src/Proton.TestPeer/Codec/Messaging/Source.cs b/src/Proton.TestPeer/Codec/Messaging/Source.cs
index c86d224..390ccb8 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Source.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Source.cs
@@ -38,7 +38,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public sealed class Source : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:source:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:source:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000028UL;
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
diff --git a/src/Proton.TestPeer/Codec/Messaging/Target.cs b/src/Proton.TestPeer/Codec/Messaging/Target.cs
index 8ec920e..b93ac4d 100644
--- a/src/Proton.TestPeer/Codec/Messaging/Target.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/Target.cs
@@ -34,7 +34,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public sealed class Target : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:target:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:target:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000029UL;
 
       public override object Descriptor => DESCRIPTOR_SYMBOL;
diff --git a/src/Proton.TestPeer/Codec/Messaging/TerminusExpiryPolicy.cs b/src/Proton.TestPeer/Codec/Messaging/TerminusExpiryPolicy.cs
index ee8a702..4e91ccc 100644
--- a/src/Proton.TestPeer/Codec/Messaging/TerminusExpiryPolicy.cs
+++ b/src/Proton.TestPeer/Codec/Messaging/TerminusExpiryPolicy.cs
@@ -30,10 +30,10 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Messaging
 
    public static class TerminusExpiryPolicyExtension
    {
-      private static readonly Symbol LinkDetach = new Symbol("link-detach");
-      private static readonly Symbol SessionEnd = new Symbol("session-end");
-      private static readonly Symbol ConnectionClose = new Symbol("connection-close");
-      private static readonly Symbol Never = new Symbol("never");
+      private static readonly Symbol LinkDetach = new("link-detach");
+      private static readonly Symbol SessionEnd = new("session-end");
+      private static readonly Symbol ConnectionClose = new("connection-close");
+      private static readonly Symbol Never = new("never");
 
       public static Symbol ToSymbol(this TerminusExpiryPolicy mode)
       {
diff --git a/src/Proton.TestPeer/Codec/Primitives/Binary.cs b/src/Proton.TestPeer/Codec/Primitives/Binary.cs
index 17202af..6a0368e 100644
--- a/src/Proton.TestPeer/Codec/Primitives/Binary.cs
+++ b/src/Proton.TestPeer/Codec/Primitives/Binary.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Text;
 
 namespace Apache.Qpid.Proton.Test.Driver.Codec.Primitives
diff --git a/src/Proton.TestPeer/Codec/Primitives/Decimal32.cs b/src/Proton.TestPeer/Codec/Primitives/Decimal32.cs
index 69bf0a8..335741d 100644
--- a/src/Proton.TestPeer/Codec/Primitives/Decimal32.cs
+++ b/src/Proton.TestPeer/Codec/Primitives/Decimal32.cs
@@ -38,12 +38,12 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Primitives
 
       public int CompareTo(object value)
       {
-         return CompareTo((Decimal32) value);
+         return CompareTo((Decimal32)value);
       }
 
       public int CompareTo(Decimal32 value)
       {
-        return (this.bits < value.bits) ? -1 : ((this.bits == value.bits) ? 0 : 1);
+         return (this.bits < value.bits) ? -1 : ((this.bits == value.bits) ? 0 : 1);
       }
 
       public bool Equals(Decimal32 obj)
diff --git a/src/Proton.TestPeer/Codec/Primitives/Symbol.cs b/src/Proton.TestPeer/Codec/Primitives/Symbol.cs
index 599a1e1..f394011 100644
--- a/src/Proton.TestPeer/Codec/Primitives/Symbol.cs
+++ b/src/Proton.TestPeer/Codec/Primitives/Symbol.cs
@@ -100,7 +100,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Primitives
 
       public override bool Equals(object symbol)
       {
-         if (symbol == null || symbol is not Symbol)
+         if (symbol is null or not Symbol)
          {
             return false;
          }
diff --git a/src/Proton.TestPeer/Codec/Security/ISaslPerformativeHandler.cs b/src/Proton.TestPeer/Codec/Security/ISaslPerformativeHandler.cs
index 2a7faa4..519eb7c 100644
--- a/src/Proton.TestPeer/Codec/Security/ISaslPerformativeHandler.cs
+++ b/src/Proton.TestPeer/Codec/Security/ISaslPerformativeHandler.cs
@@ -15,8 +15,6 @@
  * limitations under the License.
  */
 
-using System;
-
 namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 {
    public interface ISaslPerformativeHandler<T>
diff --git a/src/Proton.TestPeer/Codec/Security/SaslChallenge.cs b/src/Proton.TestPeer/Codec/Security/SaslChallenge.cs
index c14b48a..739fe3e 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslChallenge.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslChallenge.cs
@@ -29,8 +29,8 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
    public sealed class SaslChallenge : SaslDescribedType
    {
-    public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:sasl-challenge:list");
-    public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000042ul;
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:sasl-challenge:list");
+      public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000042ul;
 
       public SaslChallenge() : base(Enum.GetNames(typeof(SaslChallengeField)).Length)
       {
@@ -56,7 +56,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
       public override void Invoke<T>(ISaslPerformativeHandler<T> handler, uint frameSize, byte[] payload, ushort channel, T context)
       {
-        handler.HandleChallenge(frameSize, this, context);
+         handler.HandleChallenge(frameSize, this, context);
       }
 
       public override string ToString()
diff --git a/src/Proton.TestPeer/Codec/Security/SaslDescribedType.cs b/src/Proton.TestPeer/Codec/Security/SaslDescribedType.cs
index 5d0018b..ae5c5ba 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslDescribedType.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslDescribedType.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 
diff --git a/src/Proton.TestPeer/Codec/Security/SaslInit.cs b/src/Proton.TestPeer/Codec/Security/SaslInit.cs
index 7922d6d..bd295ae 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslInit.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslInit.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
    public sealed class SaslInit : SaslDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:sasl-init:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:sasl-init:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000041ul;
 
       public SaslInit() : base(Enum.GetNames(typeof(SaslInitField)).Length)
@@ -70,7 +70,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
       public override void Invoke<T>(ISaslPerformativeHandler<T> handler, uint frameSize, byte[] payload, ushort channel, T context)
       {
-        handler.HandleInit(frameSize, this, context);
+         handler.HandleInit(frameSize, this, context);
       }
 
       public override string ToString()
diff --git a/src/Proton.TestPeer/Codec/Security/SaslMechanisms.cs b/src/Proton.TestPeer/Codec/Security/SaslMechanisms.cs
index d57652a..02f6735 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslMechanisms.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslMechanisms.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
    public sealed class SaslMechanisms : SaslDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:sasl-mechanisms:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:sasl-mechanisms:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000040ul;
 
       public SaslMechanisms() : base(Enum.GetNames(typeof(SaslMechanismsField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Security/SaslOutcome.cs b/src/Proton.TestPeer/Codec/Security/SaslOutcome.cs
index bc9ec5b..479753d 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslOutcome.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslOutcome.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
    public sealed class SaslOutcome : SaslDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:sasl-outcome:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:sasl-outcome:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000044ul;
 
       public SaslOutcome() : base(Enum.GetNames(typeof(SaslOutcomeField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Security/SaslResponse.cs b/src/Proton.TestPeer/Codec/Security/SaslResponse.cs
index 0c1a8cb..6648385 100644
--- a/src/Proton.TestPeer/Codec/Security/SaslResponse.cs
+++ b/src/Proton.TestPeer/Codec/Security/SaslResponse.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
    public sealed class SaslResponse : SaslDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:sasl-response:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:sasl-response:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000043ul;
 
       public SaslResponse() : base(Enum.GetNames(typeof(SaslResponseField)).Length)
@@ -56,7 +56,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Security
 
       public override void Invoke<T>(ISaslPerformativeHandler<T> handler, uint frameSize, byte[] payload, ushort channel, T context)
       {
-        handler.HandleResponse(frameSize, this, context);
+         handler.HandleResponse(frameSize, this, context);
       }
 
       public override string ToString()
diff --git a/src/Proton.TestPeer/Codec/Transactions/Coordinator.cs b/src/Proton.TestPeer/Codec/Transactions/Coordinator.cs
index f678e8f..5a57e5b 100644
--- a/src/Proton.TestPeer/Codec/Transactions/Coordinator.cs
+++ b/src/Proton.TestPeer/Codec/Transactions/Coordinator.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transactions
 
    public sealed class Coordinator : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:coordinator:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:coordinator:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000030ul;
 
       public Coordinator() : base(Enum.GetNames(typeof(CoordinatorField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Transactions/Declare.cs b/src/Proton.TestPeer/Codec/Transactions/Declare.cs
index 626d519..d30d984 100644
--- a/src/Proton.TestPeer/Codec/Transactions/Declare.cs
+++ b/src/Proton.TestPeer/Codec/Transactions/Declare.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transactions
 
    public sealed class Declare : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:declare:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:declare:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000031ul;
 
       public Declare() : base(Enum.GetNames(typeof(DeclareField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Transactions/Declared.cs b/src/Proton.TestPeer/Codec/Transactions/Declared.cs
index e5a6fc2..f801c4a 100644
--- a/src/Proton.TestPeer/Codec/Transactions/Declared.cs
+++ b/src/Proton.TestPeer/Codec/Transactions/Declared.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transactions
 
    public sealed class Declared : ListDescribedType, IDeliveryState, IOutcome
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:declared:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:declared:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000033ul;
 
       public Declared() : base(Enum.GetNames(typeof(DeclaredField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Transactions/Discharge.cs b/src/Proton.TestPeer/Codec/Transactions/Discharge.cs
index 51c1eeb..96dcfdb 100644
--- a/src/Proton.TestPeer/Codec/Transactions/Discharge.cs
+++ b/src/Proton.TestPeer/Codec/Transactions/Discharge.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transactions
 
    public sealed class Discharge : ListDescribedType
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:discharge:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:discharge:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000032ul;
 
       public Discharge() : base(Enum.GetNames(typeof(DischargeField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Transactions/TransactionalState.cs b/src/Proton.TestPeer/Codec/Transactions/TransactionalState.cs
index 8700530..2afe4ec 100644
--- a/src/Proton.TestPeer/Codec/Transactions/TransactionalState.cs
+++ b/src/Proton.TestPeer/Codec/Transactions/TransactionalState.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transactions
 
    public sealed class TransactionalState : ListDescribedType, IDeliveryState
    {
-      public static readonly Symbol DESCRIPTOR_SYMBOL = new Symbol("amqp:transactional-state:list");
+      public static readonly Symbol DESCRIPTOR_SYMBOL = new("amqp:transactional-state:list");
       public static readonly ulong DESCRIPTOR_CODE = 0x0000000000000034ul;
 
       public TransactionalState() : base(Enum.GetNames(typeof(TransactionalStateField)).Length)
diff --git a/src/Proton.TestPeer/Codec/Transport/Open.cs b/src/Proton.TestPeer/Codec/Transport/Open.cs
index 9e2f5de..261cd6e 100644
--- a/src/Proton.TestPeer/Codec/Transport/Open.cs
+++ b/src/Proton.TestPeer/Codec/Transport/Open.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transport
       ChannelMax,
       IdleTimeout,
       OutgoingLocales,
-      IncmoningLocales,
+      IncomingLocales,
       OfferedCapabilities,
       DesiredCapabilities,
       Properties,
@@ -95,8 +95,8 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transport
 
       public Symbol[] IncomingLocales
       {
-         get => (Symbol[])List[((int)OpenField.IncmoningLocales)];
-         set => List[((int)OpenField.IncmoningLocales)] = value;
+         get => (Symbol[])List[((int)OpenField.IncomingLocales)];
+         set => List[((int)OpenField.IncomingLocales)] = value;
       }
 
       public Symbol[] OfferedCapabilities
diff --git a/src/Proton.TestPeer/Codec/Transport/SenderSettleMode.cs b/src/Proton.TestPeer/Codec/Transport/SenderSettleMode.cs
index 9b6ac1a..516212b 100644
--- a/src/Proton.TestPeer/Codec/Transport/SenderSettleMode.cs
+++ b/src/Proton.TestPeer/Codec/Transport/SenderSettleMode.cs
@@ -20,7 +20,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Transport
    public enum SenderSettleMode : byte
    {
       Unsettled,
-      Settked,
+      Settled,
       Mixed
    }
 }
\ No newline at end of file
diff --git a/src/Proton.TestPeer/Codec/Utilities/TypeMapper.cs b/src/Proton.TestPeer/Codec/Utilities/TypeMapper.cs
index ae62329..b2726f4 100644
--- a/src/Proton.TestPeer/Codec/Utilities/TypeMapper.cs
+++ b/src/Proton.TestPeer/Codec/Utilities/TypeMapper.cs
@@ -140,7 +140,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Utilities
             return "\"\"";
          }
 
-         StringBuilder str = new StringBuilder();
+         StringBuilder str = new();
          str.Append('"');
 
          int byteToRead = buffer.Length;
@@ -151,7 +151,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Codec.Utilities
          {
             byte c = buffer[i];
 
-            if (c > 31 && c < 127 && c != '\\')
+            if (c is > 31 and < 127 and not (byte)'\\')
             {
                if (size + 1 <= stringLength)
                {
diff --git a/src/Proton.TestPeer/Driver/AMQPTestDriver.cs b/src/Proton.TestPeer/Driver/AMQPTestDriver.cs
index 3bbadb5..88815ae 100644
--- a/src/Proton.TestPeer/Driver/AMQPTestDriver.cs
+++ b/src/Proton.TestPeer/Driver/AMQPTestDriver.cs
@@ -34,7 +34,7 @@ namespace Apache.Qpid.Proton.Test.Driver
    /// </summary>
    public class AMQPTestDriver : IFrameHandler
    {
-      private readonly Mutex mutex = new Mutex();
+      private readonly Mutex mutex = new();
       private readonly string driverName;
       private readonly FrameDecoder frameParser;
       private readonly FrameEncoder frameEncoder;
@@ -69,7 +69,7 @@ namespace Apache.Qpid.Proton.Test.Driver
       /// Uses a thread safe queue to avoid contention on adding script entries
       /// and processing incoming data (although you should probably not do that).
       /// </summary>
-      private readonly Queue<IScriptedElement> script = new Queue<IScriptedElement>();
+      private readonly Queue<IScriptedElement> script = new();
 
       public AMQPTestDriver(string name, Action<Stream> frameConsumer) :
          this(name, frameConsumer, null, NullLoggerFactory.Instance)
@@ -259,7 +259,7 @@ namespace Apache.Qpid.Proton.Test.Driver
                }
             }
 
-            MemoryStream stream = new MemoryStream();
+            MemoryStream stream = new();
             frameEncoder.HandleWrite(stream, performative, channel, payload, null);
             logger.LogTrace("{0} Writing out buffer of size:{1} to consumer: {2}", driverName, stream.Length, frameConsumer);
             frameConsumer.Invoke(stream);
@@ -287,7 +287,7 @@ namespace Apache.Qpid.Proton.Test.Driver
             }
 
             logger.LogTrace("{0} Sending sasl performative: {1}", driverName, performative);
-            MemoryStream stream = new MemoryStream();
+            MemoryStream stream = new();
             frameEncoder.HandleWrite(stream, performative, channel);
             frameConsumer.Invoke(stream);
          }
@@ -306,7 +306,7 @@ namespace Apache.Qpid.Proton.Test.Driver
          mutex.WaitOne();
          try
          {
-            MemoryStream stream = new MemoryStream();
+            MemoryStream stream = new();
             frameEncoder.HandleWrite(stream, null, channel, null, null);
             frameConsumer.Invoke(stream);
          }
diff --git a/src/Proton.TestPeer/Driver/DriverTaskScheduler.cs b/src/Proton.TestPeer/Driver/DriverTaskScheduler.cs
index 684ac7d..4b4eda3 100644
--- a/src/Proton.TestPeer/Driver/DriverTaskScheduler.cs
+++ b/src/Proton.TestPeer/Driver/DriverTaskScheduler.cs
@@ -35,11 +35,10 @@ namespace Apache.Qpid.Proton.Test.Driver
    {
       private static readonly int DEFAULT_TIMER_INTERVAL = 10;
 
-      private readonly SortedDictionary<long, Queue<ScriptedAction>> eventHeap =
-         new SortedDictionary<long, Queue<ScriptedAction>>();
+      private readonly SortedDictionary<long, Queue<ScriptedAction>> eventHeap = new();
 
       private readonly AMQPTestDriver driver;
-      private readonly Timer timer = new Timer();
+      private readonly Timer timer = new();
 
       private readonly ILogger<DriverTaskScheduler> logger;
 
@@ -73,7 +72,7 @@ namespace Apache.Qpid.Proton.Test.Driver
       private void RunPendingTasks(object sender, ElapsedEventArgs args)
       {
          long timeNow = Environment.TickCount64;
-         List<long> toRemove = new List<long>();
+         List<long> toRemove = new();
 
          foreach (KeyValuePair<long, Queue<ScriptedAction>> entry in eventHeap)
          {
diff --git a/src/Proton.TestPeer/Driver/FrameDecoder.cs b/src/Proton.TestPeer/Driver/FrameDecoder.cs
index 2f89b6e..df5ca46 100644
--- a/src/Proton.TestPeer/Driver/FrameDecoder.cs
+++ b/src/Proton.TestPeer/Driver/FrameDecoder.cs
@@ -86,7 +86,7 @@ namespace Apache.Qpid.Proton.Test.Driver
          }
          catch (Exception throwable)
          {
-            AssertionError error = new AssertionError("Frame decode failed.", throwable);
+            AssertionError error = new("Frame decode failed.", throwable);
             TransitionToErrorStage(error);
             throw error;
          }
@@ -161,7 +161,7 @@ namespace Apache.Qpid.Proton.Test.Driver
             if (headerByte == AMQPHeader.HEADER_SIZE_BYTES)
             {
                // Construct a new Header from the read bytes which will validate the contents
-               AMQPHeader header = new AMQPHeader(headerBytes);
+               AMQPHeader header = new(headerBytes);
 
                // Transition to parsing the frames if any pipelined into this buffer.
                decoder.TransitionToFrameSizeParsingStage();
diff --git a/src/Proton.TestPeer/Driver/IFrameHandler.cs b/src/Proton.TestPeer/Driver/IFrameHandler.cs
index f780440..fe97a8a 100644
--- a/src/Proton.TestPeer/Driver/IFrameHandler.cs
+++ b/src/Proton.TestPeer/Driver/IFrameHandler.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 {
    /// <summary>
    /// Handler of incoming frames with some API to inform the user of its
-   /// prescirbed frame limitations
+   /// prescribed frame limitations
    /// </summary>
    public interface IFrameHandler
    {
diff --git a/src/Proton.TestPeer/Driver/IScriptedElement.cs b/src/Proton.TestPeer/Driver/IScriptedElement.cs
index c723995..e4bae5f 100644
--- a/src/Proton.TestPeer/Driver/IScriptedElement.cs
+++ b/src/Proton.TestPeer/Driver/IScriptedElement.cs
@@ -20,7 +20,7 @@ using System;
 namespace Apache.Qpid.Proton.Test.Driver
 {
    /// <summary>
-   /// Base interface for all scriptable test types.
+   /// Base interface for all scripted test types.
    /// </summary>
    public interface IScriptedElement
    {
diff --git a/src/Proton.TestPeer/Driver/ProtonNetworkPeerOptions.cs b/src/Proton.TestPeer/Driver/ProtonNetworkPeerOptions.cs
index bf5ca0f..7aabc3a 100644
--- a/src/Proton.TestPeer/Driver/ProtonNetworkPeerOptions.cs
+++ b/src/Proton.TestPeer/Driver/ProtonNetworkPeerOptions.cs
@@ -40,7 +40,7 @@ namespace Apache.Qpid.Proton.Test.Driver
       public static readonly bool DEFAULT_VERIFY_HOST = true;
       public static readonly bool DEFAULT_CHECK_CERT_REVOCATION = false;
       public static readonly int DEFAULT_LOCAL_PORT = 0;
-      public static readonly bool DEFAULT_USE_WEBSOCKETS = false;
+      public static readonly bool DEFAULT_USE_WEB_SOCKETS = false;
       public static readonly bool DEFAULT_FRAGMENT_WEBSOCKET_WRITES = false;
       public static readonly bool DEFAULT_SSL_ENABLED = false;
       public static readonly SslProtocols DEFAULT_SSL_PROTOCOLS = SslProtocols.None;
@@ -73,7 +73,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public bool TraceBytes { get; set; } = DEFAULT_TRACE_BYTES;
 
-      public bool UseWebSockets { get; set; } = DEFAULT_USE_WEBSOCKETS;
+      public bool UseWebSockets { get; set; } = DEFAULT_USE_WEB_SOCKETS;
 
       public bool FragmentWebSocketWrites { get; set; } = DEFAULT_FRAGMENT_WEBSOCKET_WRITES;
 
diff --git a/src/Proton.TestPeer/Driver/ProtonTestClient.cs b/src/Proton.TestPeer/Driver/ProtonTestClient.cs
index b474a5c..f2e9667 100644
--- a/src/Proton.TestPeer/Driver/ProtonTestClient.cs
+++ b/src/Proton.TestPeer/Driver/ProtonTestClient.cs
@@ -59,11 +59,11 @@ namespace Apache.Qpid.Proton.Test.Driver
          client.Connect(endpoint);
       }
 
-      public void Connect(string addres, int port)
+      public void Connect(string address, int port)
       {
          CheckClosed();
 
-         transport = client.Connect(addres, port);
+         transport = client.Connect(address, port);
          transport.TransportConnectedHandler(HandleClientConnected);
          transport.TransportConnectFailedHandler(HandleClientConnectFailed);
          transport.TransportDisconnectedHandler(HandleClientDisconnected);
diff --git a/src/Proton.TestPeer/Driver/ScriptWriter.cs b/src/Proton.TestPeer/Driver/ScriptWriter.cs
index db31064..441041b 100644
--- a/src/Proton.TestPeer/Driver/ScriptWriter.cs
+++ b/src/Proton.TestPeer/Driver/ScriptWriter.cs
@@ -44,77 +44,77 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public AMQPHeaderExpectation ExpectAMQPHeader()
       {
-         AMQPHeaderExpectation expecting = new AMQPHeaderExpectation(AMQPHeader.Header, Driver);
+         AMQPHeaderExpectation expecting = new(AMQPHeader.Header, Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public OpenExpectation ExpectOpen()
       {
-         OpenExpectation expecting = new OpenExpectation(Driver);
+         OpenExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public CloseExpectation ExpectClose()
       {
-         CloseExpectation expecting = new CloseExpectation(Driver);
+         CloseExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public BeginExpectation ExpectBegin()
       {
-         BeginExpectation expecting = new BeginExpectation(Driver);
+         BeginExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public EndExpectation ExpectEnd()
       {
-         EndExpectation expecting = new EndExpectation(Driver);
+         EndExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public AttachExpectation ExpectAttach()
       {
-         AttachExpectation expecting = new AttachExpectation(Driver);
+         AttachExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public DetachExpectation ExpectDetach()
       {
-         DetachExpectation expecting = new DetachExpectation(Driver);
+         DetachExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public FlowExpectation ExpectFlow()
       {
-         FlowExpectation expecting = new FlowExpectation(Driver);
+         FlowExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public TransferExpectation ExpectTransfer()
       {
-         TransferExpectation expecting = new TransferExpectation(Driver);
+         TransferExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public DispositionExpectation ExpectDisposition()
       {
-         DispositionExpectation expecting = new DispositionExpectation(Driver);
+         DispositionExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public EmptyFrameExpectation ExpectEmptyFrame()
       {
-         EmptyFrameExpectation expecting = new EmptyFrameExpectation(Driver);
+         EmptyFrameExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
@@ -125,7 +125,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public AttachExpectation ExpectCoordinatorAttach()
       {
-         AttachExpectation expecting = new AttachExpectation(Driver);
+         AttachExpectation expecting = new(Driver);
 
          expecting.WithRole(Role.Sender);
          expecting.WithCoordinator(Matches.IsA(typeof(Coordinator)));
@@ -137,7 +137,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public DeclareExpectation ExpectDeclare()
       {
-         DeclareExpectation expecting = new DeclareExpectation(Driver);
+         DeclareExpectation expecting = new(Driver);
 
          expecting.WithHandle(Is.NotNullValue());
          expecting.WithDeliveryId(Is.NotNullValue());
@@ -150,7 +150,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public DischargeExpectation ExpectDischarge()
       {
-         DischargeExpectation expecting = new DischargeExpectation(Driver);
+         DischargeExpectation expecting = new(Driver);
 
          expecting.WithHandle(Is.NotNullValue());
          expecting.WithDeliveryId(Is.NotNullValue());
@@ -167,42 +167,42 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       public AMQPHeaderExpectation ExpectSASLHeader()
       {
-         AMQPHeaderExpectation expecting = new AMQPHeaderExpectation(AMQPHeader.SASLHeader, Driver);
+         AMQPHeaderExpectation expecting = new(AMQPHeader.SASLHeader, Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public SaslMechanismsExpectation ExpectSaslMechanisms()
       {
-         SaslMechanismsExpectation expecting = new SaslMechanismsExpectation(Driver);
+         SaslMechanismsExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public SaslInitExpectation ExpectSaslInit()
       {
-         SaslInitExpectation expecting = new SaslInitExpectation(Driver);
+         SaslInitExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public SaslChallengeExpectation ExpectSaslChallenge()
       {
-         SaslChallengeExpectation expecting = new SaslChallengeExpectation(Driver);
+         SaslChallengeExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public SaslResponseExpectation ExpectSaslResponse()
       {
-         SaslResponseExpectation expecting = new SaslResponseExpectation(Driver);
+         SaslResponseExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
 
       public SaslOutcomeExpectation ExpectSaslOutcome()
       {
-         SaslOutcomeExpectation expecting = new SaslOutcomeExpectation(Driver);
+         SaslOutcomeExpectation expecting = new(Driver);
          Driver.AddScriptedElement(expecting);
          return expecting;
       }
@@ -484,7 +484,7 @@ namespace Apache.Qpid.Proton.Test.Driver
       /// </summary>
       public BeginInjectAction RespondToLastBegin()
       {
-         BeginInjectAction response = new BeginInjectAction(Driver);
+         BeginInjectAction response = new(Driver);
 
          SessionTracker session = Driver.Sessions.LastRemotelyOpenedSession;
          if (session == null)
@@ -505,7 +505,7 @@ namespace Apache.Qpid.Proton.Test.Driver
       /// </summary>
       public AttachInjectAction RespondToLastAttach()
       {
-         AttachInjectAction response = new AttachInjectAction(Driver);
+         AttachInjectAction response = new(Driver);
 
          SessionTracker session = Driver.Sessions.LastRemotelyOpenedSession;
          LinkTracker link = session.LastRemotelyOpenedLink;
diff --git a/src/Proton.TestPeer/Driver/ScriptedAction.cs b/src/Proton.TestPeer/Driver/ScriptedAction.cs
index c95b64a..ff19e48 100644
--- a/src/Proton.TestPeer/Driver/ScriptedAction.cs
+++ b/src/Proton.TestPeer/Driver/ScriptedAction.cs
@@ -37,9 +37,9 @@ namespace Apache.Qpid.Proton.Test.Driver
       /// following the given wait time regardless of any queued tasks or
       /// expected inputs.
       /// </summary>
-      /// <param name="millis"></param>
+      /// <param name="milliseconds"></param>
       /// <returns></returns>
-      public abstract ScriptedAction Later(long millis);
+      public abstract ScriptedAction Later(long milliseconds);
 
       /// <summary>
       /// Queues the scripted action for later run after any preceding scripted
diff --git a/src/Proton.TestPeer/Driver/ScriptedExpectation.cs b/src/Proton.TestPeer/Driver/ScriptedExpectation.cs
index fd1d412..ec9cf82 100644
--- a/src/Proton.TestPeer/Driver/ScriptedExpectation.cs
+++ b/src/Proton.TestPeer/Driver/ScriptedExpectation.cs
@@ -40,7 +40,7 @@ namespace Apache.Qpid.Proton.Test.Driver
 
       /// <summary>
       /// Provides a scripted expectation the means of initiating some action
-      /// following successful compeltion of the expectation.
+      /// following successful completion of the expectation.
       /// </summary>
       /// <returns>a scripted action to perform following the expectation being me</returns>
       public ScriptedAction PerformAfterwards() => null;
diff --git a/src/Proton.TestPeer/Driver/SessionTracker.cs b/src/Proton.TestPeer/Driver/SessionTracker.cs
index 6694221..cbfa0fa 100644
--- a/src/Proton.TestPeer/Driver/SessionTracker.cs
+++ b/src/Proton.TestPeer/Driver/SessionTracker.cs
@@ -32,8 +32,8 @@ namespace Apache.Qpid.Proton.Test.Driver
       private readonly IDictionary<string, LinkTracker> senderByNameMap = new Dictionary<string, LinkTracker>();
       private readonly IDictionary<string, LinkTracker> receiverByNameMap = new Dictionary<string, LinkTracker>();
 
-      private readonly OrderedDictionary localLinks = new OrderedDictionary();
-      private readonly OrderedDictionary remoteLinks = new OrderedDictionary();
+      private readonly OrderedDictionary localLinks = new();
+      private readonly OrderedDictionary remoteLinks = new();
 
       private ushort? localChannel;
       private ushort? remoteChannel;
diff --git a/src/Proton.TestPeer/Expectations/AMQPHeaderExpectation.cs b/src/Proton.TestPeer/Expectations/AMQPHeaderExpectation.cs
index 047280b..e31ea16 100644
--- a/src/Proton.TestPeer/Expectations/AMQPHeaderExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/AMQPHeaderExpectation.cs
@@ -37,21 +37,21 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public AMQPHeaderInjectAction RespondWithAMQPHeader()
       {
-         AMQPHeaderInjectAction response = new AMQPHeaderInjectAction(driver, AMQPHeader.Header);
+         AMQPHeaderInjectAction response = new(driver, AMQPHeader.Header);
          driver.AddScriptedElement(response);
          return response;
       }
 
       public AMQPHeaderInjectAction RespondWithSASLHeader()
       {
-         AMQPHeaderInjectAction response = new AMQPHeaderInjectAction(driver, AMQPHeader.SASLHeader);
+         AMQPHeaderInjectAction response = new(driver, AMQPHeader.SASLHeader);
          driver.AddScriptedElement(response);
          return response;
       }
 
       public RawBytesInjectAction RespondWithBytes(byte[] buffer)
       {
-         RawBytesInjectAction response = new RawBytesInjectAction(driver, buffer);
+         RawBytesInjectAction response = new(driver, buffer);
          driver.AddScriptedElement(response);
          return response;
       }
diff --git a/src/Proton.TestPeer/Expectations/AttachExpectation.cs b/src/Proton.TestPeer/Expectations/AttachExpectation.cs
index b1c1c8e..adcda3c 100644
--- a/src/Proton.TestPeer/Expectations/AttachExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/AttachExpectation.cs
@@ -36,7 +36,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class AttachExpectation : AbstractExpectation<Attach>
    {
-      private readonly AttachMatcher matcher = new AttachMatcher();
+      private readonly AttachMatcher matcher = new();
 
       private AttachInjectAction response;
       private bool rejecting;
@@ -139,7 +139,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public AttachExpectation WithSenderSettleModeSettled()
       {
-         return WithSndSettleMode(Is.EqualTo((byte)SenderSettleMode.Settked));
+         return WithSndSettleMode(Is.EqualTo((byte)SenderSettleMode.Settled));
       }
 
       public AttachExpectation WithSenderSettleModeUnsettled()
@@ -181,21 +181,21 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public AttachSourceMatcher WithSource()
       {
-         AttachSourceMatcher matcher = new AttachSourceMatcher(this);
+         AttachSourceMatcher matcher = new(this);
          WithSource(matcher);
          return matcher;
       }
 
       public AttachTargetMatcher WithTarget()
       {
-         AttachTargetMatcher matcher = new AttachTargetMatcher(this);
+         AttachTargetMatcher matcher = new(this);
          WithTarget(matcher);
          return matcher;
       }
 
       public AttachCoordinatorMatcher WithCoordinator()
       {
-         AttachCoordinatorMatcher matcher = new AttachCoordinatorMatcher(this);
+         AttachCoordinatorMatcher matcher = new(this);
          WithCoordinator(matcher);
          return matcher;
       }
@@ -204,7 +204,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       {
          if (source != null)
          {
-            SourceMatcher sourceMatcher = new SourceMatcher(source);
+            SourceMatcher sourceMatcher = new(source);
             return WithSource(sourceMatcher);
          }
          else
@@ -217,7 +217,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       {
          if (target != null)
          {
-            TargetMatcher targetMatcher = new TargetMatcher(target);
+            TargetMatcher targetMatcher = new(target);
             return WithTarget(targetMatcher);
          }
          else
@@ -230,7 +230,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       {
          if (coordinator != null)
          {
-            CoordinatorMatcher coordinatorMatcher = new CoordinatorMatcher();
+            CoordinatorMatcher coordinatorMatcher = new();
             return WithCoordinator(coordinatorMatcher);
          }
          else
@@ -625,7 +625,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public override AttachSourceMatcher WithDefaultTimeout()
       {
-         base.WithTimeout(Apache.Qpid.Proton.Test.Driver.Matchers.Matches.AnyOf(Is.NullValue(), Is.EqualTo(0u)));
+         base.WithTimeout(Matchers.Matches.AnyOf(Is.NullValue(), Is.EqualTo(0u)));
          return this;
       }
 
diff --git a/src/Proton.TestPeer/Expectations/BeginExpectation.cs b/src/Proton.TestPeer/Expectations/BeginExpectation.cs
index 399c030..06359d4 100644
--- a/src/Proton.TestPeer/Expectations/BeginExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/BeginExpectation.cs
@@ -30,14 +30,14 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class BeginExpectation : AbstractExpectation<Begin>
    {
-      private readonly BeginMatcher matcher = new BeginMatcher();
+      private readonly BeginMatcher matcher = new();
 
       private BeginInjectAction response;
 
       public BeginExpectation(AMQPTestDriver driver) : base(driver)
       {
          // Configure default expectations for a valid Attach
-         WithRemoteChannel(Apache.Qpid.Proton.Test.Driver.Matchers.Matches.AnyOf(Is.NullValue(), Is.NotNullValue()));
+         WithRemoteChannel(Matches.AnyOf(Is.NullValue(), Is.NotNullValue()));
          WithNextOutgoingId(Is.NotNullValue());
          WithIncomingWindow(Is.NotNullValue());
          WithOutgoingWindow(Is.NotNullValue());
diff --git a/src/Proton.TestPeer/Expectations/CloseExpectation.cs b/src/Proton.TestPeer/Expectations/CloseExpectation.cs
index 91b2c67..f9bb556 100644
--- a/src/Proton.TestPeer/Expectations/CloseExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/CloseExpectation.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Actions;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
@@ -31,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class CloseExpectation : AbstractExpectation<Close>
    {
-      private readonly CloseMatcher matcher = new CloseMatcher();
+      private readonly CloseMatcher matcher = new();
 
       private CloseInjectAction response;
 
diff --git a/src/Proton.TestPeer/Expectations/DeclareExpectation.cs b/src/Proton.TestPeer/Expectations/DeclareExpectation.cs
index 18f7d43..631cdd7 100644
--- a/src/Proton.TestPeer/Expectations/DeclareExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/DeclareExpectation.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class DeclareExpectation : TransferExpectation
    {
-      private readonly AmqpValueMatcher defaultPayloadMatcher = new AmqpValueMatcher(new DeclareMatcher());
+      private readonly AmqpValueMatcher defaultPayloadMatcher = new(new DeclareMatcher());
 
       public DeclareExpectation(AMQPTestDriver driver) : base(driver)
       {
@@ -42,7 +42,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       {
          byte[] txnId = new byte[4];
 
-         Random rand = new Random(Environment.TickCount);
+         Random rand = new(Environment.TickCount);
          rand.NextBytes(txnId);
 
          return Accept(txnId);
@@ -50,7 +50,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       /// <summary>
       /// Indicate a successful transaction declaration and provides a
-      /// transaction Id value that identifies the new tranaction.
+      /// transaction Id value that identifies the new transaction.
       /// </summary>
       /// <param name="txnId">The transaction id for the newly declared transaction</param>
       /// <returns>A disposition inject action that will be sent as a response.</returns>
@@ -73,7 +73,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       /// <summary>
       /// Indicate a successful transaction declaration and provides a
-      /// transaction Id value that identifies the new tranaction.
+      /// transaction Id value that identifies the new transaction.
       /// </summary>
       /// <param name="txnId">The transaction id for the newly declared transaction</param>
       /// <returns>A disposition inject action that will be sent as a response.</returns>
diff --git a/src/Proton.TestPeer/Expectations/DetachExpectation.cs b/src/Proton.TestPeer/Expectations/DetachExpectation.cs
index 6556a58..71c0fea 100644
--- a/src/Proton.TestPeer/Expectations/DetachExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/DetachExpectation.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Actions;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
@@ -32,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class DetachExpectation : AbstractExpectation<Detach>
    {
-      private readonly DetachMatcher matcher = new DetachMatcher();
+      private readonly DetachMatcher matcher = new();
 
       private DetachInjectAction response;
 
diff --git a/src/Proton.TestPeer/Expectations/DischargeExpectation.cs b/src/Proton.TestPeer/Expectations/DischargeExpectation.cs
index c231cd3..228b874 100644
--- a/src/Proton.TestPeer/Expectations/DischargeExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/DischargeExpectation.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class DischargeExpectation : TransferExpectation
    {
-      private readonly DischargeMatcher discharge = new DischargeMatcher();
+      private readonly DischargeMatcher discharge = new();
 
       public DischargeExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/DispositionExpectation.cs b/src/Proton.TestPeer/Expectations/DispositionExpectation.cs
index 386fa70..4ed4df2 100644
--- a/src/Proton.TestPeer/Expectations/DispositionExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/DispositionExpectation.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class DispositionExpectation : AbstractExpectation<Disposition>
    {
-      private readonly DispositionMatcher matcher = new DispositionMatcher();
+      private readonly DispositionMatcher matcher = new();
       private readonly DispositionDeliveryStateBuilder stateBuilder;
 
       public DispositionExpectation(AMQPTestDriver driver) : base(driver)
@@ -220,7 +220,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       {
          byte[] txnId = new byte[4];
 
-         Random rand = new Random(Environment.TickCount);
+         Random rand = new(Environment.TickCount);
 
          rand.NextBytes(txnId);
 
@@ -236,7 +236,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public DispositionTransactionalStateMatcher Transactional()
       {
-         DispositionTransactionalStateMatcher matcher = new DispositionTransactionalStateMatcher(expectation);
+         DispositionTransactionalStateMatcher matcher = new(expectation);
          expectation.WithState(matcher);
          return matcher;
       }
diff --git a/src/Proton.TestPeer/Expectations/EmptyFrameExpectation.cs b/src/Proton.TestPeer/Expectations/EmptyFrameExpectation.cs
index a268986..8d6acbc 100644
--- a/src/Proton.TestPeer/Expectations/EmptyFrameExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/EmptyFrameExpectation.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class EmptyFrameExpectation : AbstractExpectation<Heartbeat>
    {
-      private readonly HeartbeatMatcher matcher = new HeartbeatMatcher();
+      private readonly HeartbeatMatcher matcher = new();
 
       public EmptyFrameExpectation(AMQPTestDriver driver) : base(driver)
       {
@@ -44,7 +44,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public EmptyFrameInjectAction Respond()
       {
-         EmptyFrameInjectAction response = new EmptyFrameInjectAction(driver);
+         EmptyFrameInjectAction response = new(driver);
          driver.AddScriptedElement(response);
          return response;
       }
diff --git a/src/Proton.TestPeer/Expectations/EndExpectation.cs b/src/Proton.TestPeer/Expectations/EndExpectation.cs
index 845b4c6..2fe2a90 100644
--- a/src/Proton.TestPeer/Expectations/EndExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/EndExpectation.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Actions;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
@@ -31,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class EndExpectation : AbstractExpectation<End>
    {
-      private readonly EndMatcher matcher = new EndMatcher();
+      private readonly EndMatcher matcher = new();
 
       private EndInjectAction response;
 
diff --git a/src/Proton.TestPeer/Expectations/FlowExpectation.cs b/src/Proton.TestPeer/Expectations/FlowExpectation.cs
index 109c049..8db5fc2 100644
--- a/src/Proton.TestPeer/Expectations/FlowExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/FlowExpectation.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Actions;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
@@ -31,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class FlowExpectation : AbstractExpectation<Flow>
    {
-      private readonly FlowMatcher matcher = new FlowMatcher();
+      private readonly FlowMatcher matcher = new();
 
       private FlowInjectAction response;
 
diff --git a/src/Proton.TestPeer/Expectations/OpenExpectation.cs b/src/Proton.TestPeer/Expectations/OpenExpectation.cs
index 494598a..4a157f3 100644
--- a/src/Proton.TestPeer/Expectations/OpenExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/OpenExpectation.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Test.Driver.Actions;
 using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
@@ -31,7 +30,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class OpenExpectation : AbstractExpectation<Open>
    {
-      private readonly OpenMatcher matcher = new OpenMatcher();
+      private readonly OpenMatcher matcher = new();
 
       private OpenInjectAction response;
       private bool explicitlyNullContainerId;
@@ -52,7 +51,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
          response = new OpenInjectAction(driver);
          driver.AddScriptedElement(response);
 
-         CloseInjectAction closeAction = new CloseInjectAction(driver);
+         CloseInjectAction closeAction = new(driver);
          driver.AddScriptedElement(closeAction);
 
          return closeAction;
diff --git a/src/Proton.TestPeer/Expectations/SaslChallengeExpectation.cs b/src/Proton.TestPeer/Expectations/SaslChallengeExpectation.cs
index f0c1f33..72c4eee 100644
--- a/src/Proton.TestPeer/Expectations/SaslChallengeExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/SaslChallengeExpectation.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class SaslChallengeExpectation : AbstractExpectation<SaslChallenge>
    {
-      private readonly SaslChallengeMatcher matcher = new SaslChallengeMatcher();
+      private readonly SaslChallengeMatcher matcher = new();
 
       public SaslChallengeExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/SaslInitExpectation.cs b/src/Proton.TestPeer/Expectations/SaslInitExpectation.cs
index 32fe24b..dbc3924 100644
--- a/src/Proton.TestPeer/Expectations/SaslInitExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/SaslInitExpectation.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class SaslInitExpectation : AbstractExpectation<SaslInit>
    {
-      private readonly SaslInitMatcher matcher = new SaslInitMatcher();
+      private readonly SaslInitMatcher matcher = new();
 
       public SaslInitExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/SaslMechanismsExpectation.cs b/src/Proton.TestPeer/Expectations/SaslMechanismsExpectation.cs
index 91dee9c..424e865 100644
--- a/src/Proton.TestPeer/Expectations/SaslMechanismsExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/SaslMechanismsExpectation.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class SaslMechanismsExpectation : AbstractExpectation<SaslMechanisms>
    {
-      private readonly SaslMechanismsMatcher matcher = new SaslMechanismsMatcher();
+      private readonly SaslMechanismsMatcher matcher = new();
 
       public SaslMechanismsExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/SaslOutcomeExpectation.cs b/src/Proton.TestPeer/Expectations/SaslOutcomeExpectation.cs
index 8fd68ef..787037f 100644
--- a/src/Proton.TestPeer/Expectations/SaslOutcomeExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/SaslOutcomeExpectation.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class SaslOutcomeExpectation : AbstractExpectation<SaslOutcome>
    {
-      private readonly SaslOutcomeMatcher matcher = new SaslOutcomeMatcher();
+      private readonly SaslOutcomeMatcher matcher = new();
 
       public SaslOutcomeExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/SaslResponseExpectation.cs b/src/Proton.TestPeer/Expectations/SaslResponseExpectation.cs
index c2bd011..c69078b 100644
--- a/src/Proton.TestPeer/Expectations/SaslResponseExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/SaslResponseExpectation.cs
@@ -27,7 +27,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public sealed class SaslResponseExpectation : AbstractExpectation<SaslResponse>
    {
-      private readonly SaslResponseMatcher matcher = new SaslResponseMatcher();
+      private readonly SaslResponseMatcher matcher = new();
 
       public SaslResponseExpectation(AMQPTestDriver driver) : base(driver)
       {
diff --git a/src/Proton.TestPeer/Expectations/TransferExpectation.cs b/src/Proton.TestPeer/Expectations/TransferExpectation.cs
index d3e619f..9e9f7b9 100644
--- a/src/Proton.TestPeer/Expectations/TransferExpectation.cs
+++ b/src/Proton.TestPeer/Expectations/TransferExpectation.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
    /// </summary>
    public class TransferExpectation : AbstractExpectation<Transfer>
    {
-      private readonly TransferMatcher matcher = new TransferMatcher();
+      private readonly TransferMatcher matcher = new();
       private readonly TransferDeliveryStateBuilder stateBuilder;
 
       private IMatcher payloadMatcher = Matches.Any(typeof(byte[]));
@@ -255,7 +255,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
       public virtual TransferExpectation WithPayload(byte[] buffer)
       {
          // TODO - Create Matcher which describes the mismatch in detail
-         this.payloadMatcher = Matchers.Is.EqualTo(buffer);
+         this.payloadMatcher = Is.EqualTo(buffer);
          return this;
       }
 
@@ -396,7 +396,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Expectations
 
       public TransferTransactionalStateMatcher Transactional()
       {
-         TransferTransactionalStateMatcher matcher = new TransferTransactionalStateMatcher(expectation);
+         TransferTransactionalStateMatcher matcher = new(expectation);
          expectation.WithState(matcher);
          return matcher;
       }
diff --git a/src/Proton.TestPeer/Matchers/Comparators/ArrayComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/ArrayComparator.cs
index c55aa0a..0bdb4e3 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/ArrayComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/ArrayComparator.cs
@@ -23,17 +23,19 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// Compares two Array types for equality using the equality
    /// comparator to evaluate each pair of values in the array.
    /// </summary>
-   public sealed class ArrayCompartor : ILinkedCompartor
+   public sealed class ArrayComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
-      private readonly EnumerableCompartor enumComparator;
+      private readonly EnumerableComparator enumComparator;
 
-      public ArrayCompartor(PeerEqualityComparator comparators, EnumerableCompartor enumComparator)
+      public ArrayComparator(PeerEqualityComparator comparators, EnumerableComparator enumComparator)
       {
          this.comparators = comparators;
          this.enumComparator = enumComparator;
       }
 
+      internal PeerEqualityComparator Comparators => comparators;
+
       public bool? Equals(object lhs, object rhs, IDescription mismatchDescription)
       {
          if (lhs is not Array lhsArray || rhs is not Array rhsArray)
diff --git a/src/Proton.TestPeer/Matchers/Comparators/CharacterComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/CharacterComparator.cs
index df21f42..f6d08cd 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/CharacterComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/CharacterComparator.cs
@@ -20,15 +20,17 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// <summary>
    /// Compares two char types for equality.
    /// </summary>
-   public sealed class CharacterCompartor : ILinkedCompartor
+   public sealed class CharacterComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public CharacterCompartor(PeerEqualityComparator comparators)
+      public CharacterComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
 
+      internal PeerEqualityComparator Comparators => comparators;
+
       public bool? Equals(object lhs, object rhs, IDescription mismatchDescription)
       {
          if (lhs is not char lhsChar || rhs is not char rhsChar)
diff --git a/src/Proton.TestPeer/Matchers/Comparators/DictionaryComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/DictionaryComparator.cs
index 97c3b89..310097f 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/DictionaryComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/DictionaryComparator.cs
@@ -15,22 +15,21 @@
  * limitations under the License.
  */
 
-using System;
 using System.Collections;
 
 namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
 {
    /// <summary>
-   /// Compares two IDictionary types for equality meaing that each
+   /// Compares two IDictionary types for equality meaning that each
    /// has the same number of elements and that every entry in the left
    /// is present in the right and that the values mapped to each entry
    /// are equivalent.
    /// </summary>
-   public sealed class DictionaryCompartor : ILinkedCompartor
+   public sealed class DictionaryComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public DictionaryCompartor(PeerEqualityComparator comparators)
+      public DictionaryComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
diff --git a/src/Proton.TestPeer/Matchers/Comparators/DictionaryEntryComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/DictionaryEntryComparator.cs
index 267ef78..003acf6 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/DictionaryEntryComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/DictionaryEntryComparator.cs
@@ -23,11 +23,11 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// Compares two Dictionary Entries and checks if both the entry keys
    /// and the entry values are equivalent.
    /// </summary>
-   public sealed class DictionaryEntryCompartor : ILinkedCompartor
+   public sealed class DictionaryEntryComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public DictionaryEntryCompartor(PeerEqualityComparator comparators)
+      public DictionaryEntryComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
diff --git a/src/Proton.TestPeer/Matchers/Comparators/EnumerableComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/EnumerableComparator.cs
index 6686566..498e1ef 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/EnumerableComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/EnumerableComparator.cs
@@ -24,11 +24,11 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// Compares two IEnumerable types for equality using the equality
    /// comparator to evaluate each pair of values in the enumeration.
    /// </summary>
-   public sealed class EnumerableCompartor : ILinkedCompartor
+   public sealed class EnumerableComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public EnumerableCompartor(PeerEqualityComparator comparators)
+      public EnumerableComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
diff --git a/src/Proton.TestPeer/Matchers/Comparators/ILinkedComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/ILinkedComparator.cs
index 273faf6..2640cb3 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/ILinkedComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/ILinkedComparator.cs
@@ -19,9 +19,9 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
 {
    /// <summary>
    /// Interface for all .NET type comparators that operate in a linked
-   /// sequence of comparison that can recursive check nested type heirarchies.
+   /// sequence of comparison that can recursive check nested type hierarchies.
    /// </summary>
-   public interface ILinkedCompartor
+   public interface ILinkedComparator
    {
       /// <summary>
       /// Compares the left hand side against the right hand side value and returns
diff --git a/src/Proton.TestPeer/Matchers/Comparators/KeyValuePairComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/KeyValuePairComparator.cs
index 97db756..6697600 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/KeyValuePairComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/KeyValuePairComparator.cs
@@ -16,7 +16,6 @@
  */
 
 using System;
-using System.Collections;
 using System.Collections.Generic;
 using System.Reflection;
 
@@ -26,11 +25,11 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// Compares two KeyValuePair types and checks if both the entry keys
    /// and the entry values are equivalent.
    /// </summary>
-   public sealed class KeyValuePairCompartor : ILinkedCompartor
+   public sealed class KeyValuePairComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public KeyValuePairCompartor(PeerEqualityComparator comparators)
+      public KeyValuePairComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
diff --git a/src/Proton.TestPeer/Matchers/Comparators/NumberComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/NumberComparator.cs
index 143d392..be64048 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/NumberComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/NumberComparator.cs
@@ -22,15 +22,17 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// <summary>
    /// Compares two char numeric for equality.
    /// </summary>
-   public sealed class NumberCompartor : ILinkedCompartor
+   public sealed class NumberComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public NumberCompartor(PeerEqualityComparator comparators)
+      public NumberComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
 
+      internal PeerEqualityComparator Comparators => comparators;
+
       public bool? Equals(object lhs, object rhs, IDescription mismatchDescription)
       {
          if (!Numbers.IsNumericType(lhs) || !Numbers.IsNumericType(rhs))
diff --git a/src/Proton.TestPeer/Matchers/Comparators/PeerEqualityComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/PeerEqualityComparator.cs
index 59e5c48..03a7d75 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/PeerEqualityComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/PeerEqualityComparator.cs
@@ -28,21 +28,21 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
       /// <summary>
       /// The builtin list of comparators that will be tried
       /// </summary>
-      private readonly IList<ILinkedCompartor> comparators = new List<ILinkedCompartor>();
+      private readonly IList<ILinkedComparator> comparators = new List<ILinkedComparator>();
 
       public PeerEqualityComparator()
       {
-         EnumerableCompartor singletonEnumComparator = new EnumerableCompartor(this);
+         EnumerableComparator singletonEnumComparator = new(this);
 
-         comparators.Add(new ArrayCompartor(this, singletonEnumComparator));
-         comparators.Add(new DictionaryCompartor(this));
-         comparators.Add(new DictionaryEntryCompartor(this));
-         comparators.Add(new KeyValuePairCompartor(this));
+         comparators.Add(new ArrayComparator(this, singletonEnumComparator));
+         comparators.Add(new DictionaryComparator(this));
+         comparators.Add(new DictionaryEntryComparator(this));
+         comparators.Add(new KeyValuePairComparator(this));
          comparators.Add(singletonEnumComparator);
-         comparators.Add(new CharacterCompartor(this));
-         comparators.Add(new SymbolCompartor(this));
-         comparators.Add(new StringCompartor(this));
-         comparators.Add(new NumberCompartor(this));
+         comparators.Add(new CharacterComparator(this));
+         comparators.Add(new SymbolComparator(this));
+         comparators.Add(new StringComparator(this));
+         comparators.Add(new NumberComparator(this));
       }
 
       public bool AreEqual(object lhs, object rhs)
@@ -62,12 +62,12 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
             return false;
          }
 
-         if (object.ReferenceEquals(lhs, rhs))
+         if (ReferenceEquals(lhs, rhs))
          {
             return true;
          }
 
-         foreach (ILinkedCompartor comparer in comparators)
+         foreach (ILinkedComparator comparer in comparators)
          {
             bool? result = comparer.Equals(lhs, rhs, mismatchDescription);
             if (result.HasValue)
diff --git a/src/Proton.TestPeer/Matchers/Comparators/StringComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/StringComparator.cs
index 8dba590..f9af8ff 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/StringComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/StringComparator.cs
@@ -20,15 +20,17 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// <summary>
    /// Compares two string types for equality.
    /// </summary>
-   public sealed class StringCompartor : ILinkedCompartor
+   public sealed class StringComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public StringCompartor(PeerEqualityComparator comparators)
+      public StringComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
 
+      internal PeerEqualityComparator Comparators => comparators;
+
       public bool? Equals(object lhs, object rhs, IDescription mismatchDescription)
       {
          if (lhs is not string lhsString || rhs is not string rhsString)
diff --git a/src/Proton.TestPeer/Matchers/Comparators/SymbolComparator.cs b/src/Proton.TestPeer/Matchers/Comparators/SymbolComparator.cs
index 69fbe9b..62ef3d9 100644
--- a/src/Proton.TestPeer/Matchers/Comparators/SymbolComparator.cs
+++ b/src/Proton.TestPeer/Matchers/Comparators/SymbolComparator.cs
@@ -22,15 +22,17 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Comparators
    /// <summary>
    /// Compares two Symbol types for equality.
    /// </summary>
-   public sealed class SymbolCompartor : ILinkedCompartor
+   public sealed class SymbolComparator : ILinkedComparator
    {
       private readonly PeerEqualityComparator comparators;
 
-      public SymbolCompartor(PeerEqualityComparator comparators)
+      public SymbolComparator(PeerEqualityComparator comparators)
       {
          this.comparators = comparators;
       }
 
+      internal PeerEqualityComparator Comparators => comparators;
+
       public bool? Equals(object lhs, object rhs, IDescription mismatchDescription)
       {
          if (lhs is not Symbol lhsSymbol || rhs is not Symbol rhsSymbol)
diff --git a/src/Proton.TestPeer/Matchers/Core/AllOfMatcher.cs b/src/Proton.TestPeer/Matchers/Core/AllOfMatcher.cs
index 7170656..8c5125e 100644
--- a/src/Proton.TestPeer/Matchers/Core/AllOfMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Core/AllOfMatcher.cs
@@ -20,7 +20,7 @@ using System.Collections.Generic;
 namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
 {
    /// <summary>
-   /// A type matcher that examins a list of matcher and tests them against
+   /// A type matcher that examines a list of matcher and tests them against
    /// some input, if any single matcher fails to match the testing stops and
    /// an error description is created to describe that mismatch.
    /// </summary>
diff --git a/src/Proton.TestPeer/Matchers/Core/AnyOfMatcher.cs b/src/Proton.TestPeer/Matchers/Core/AnyOfMatcher.cs
index 76619b6..4f3e7de 100644
--- a/src/Proton.TestPeer/Matchers/Core/AnyOfMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Core/AnyOfMatcher.cs
@@ -20,7 +20,7 @@ using System.Collections.Generic;
 namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
 {
    /// <summary>
-   /// A type matcher that examins a list of matcher and tests them against
+   /// A type matcher that examines a list of matcher and tests them against
    /// some input, if any single matcher succeeds in matching the target value
    /// then testing stops and the match is considered to have passed.
    /// </summary>
@@ -36,12 +36,12 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
 
       public override bool Matches(object actual)
       {
-        return base.Matches(actual, true);
+         return Matches(actual, true);
       }
 
       public override void DescribeTo(IDescription description)
       {
-         base.DescribeTo(description, "or");
+         DescribeTo(description, "or");
       }
 
       /// <summary>
diff --git a/src/Proton.TestPeer/Matchers/Core/IsEqualMatcher.cs b/src/Proton.TestPeer/Matchers/Core/IsEqualMatcher.cs
index 3b1db4b..27dc3ee 100644
--- a/src/Proton.TestPeer/Matchers/Core/IsEqualMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Core/IsEqualMatcher.cs
@@ -20,7 +20,7 @@ using Apache.Qpid.Proton.Test.Driver.Matchers.Comparators;
 namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
 {
    /// <summary>
-   /// A type matcher that examins a list of matcher and tests them against
+   /// A type matcher that examines a list of matcher and tests them against
    /// some input, if any single matcher fails to match the testing stops and
    /// an error description is created to describe that mismatch.
    /// </summary>
@@ -55,7 +55,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
             return false;
          }
 
-         PeerEqualityComparator comparer = new PeerEqualityComparator();
+         PeerEqualityComparator comparer = new();
 
          return comparer.AreEqual(expected, actual);
       }
diff --git a/src/Proton.TestPeer/Matchers/Core/IsInstanceOf.cs b/src/Proton.TestPeer/Matchers/Core/IsInstanceOf.cs
index 4ecb9f9..fda3920 100644
--- a/src/Proton.TestPeer/Matchers/Core/IsInstanceOf.cs
+++ b/src/Proton.TestPeer/Matchers/Core/IsInstanceOf.cs
@@ -60,7 +60,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
       /// the examined object.
       /// </summary>
       /// <param name="type">The type that is expected</param>
-      /// <returns>A new matcher that examins the type of a target object</returns>
+      /// <returns>A new matcher that examines the type of a target object</returns>
       public static IMatcher InstanceOf(Type type)
       {
          return new IsInstanceOfMatcher(type);
@@ -72,7 +72,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
       /// the examined object.
       /// </summary>
       /// <param name="type">The type that is expected</param>
-      /// <returns>A new matcher that examins the type of a target object</returns>
+      /// <returns>A new matcher that examines the type of a target object</returns>
       public static IMatcher Any(Type type)
       {
          return new IsInstanceOfMatcher(type);
diff --git a/src/Proton.TestPeer/Matchers/Core/IsMatcher.cs b/src/Proton.TestPeer/Matchers/Core/IsMatcher.cs
index 2ea83de..9b86a53 100644
--- a/src/Proton.TestPeer/Matchers/Core/IsMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Core/IsMatcher.cs
@@ -50,7 +50,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
       /// <summary>
       /// Decorative matcher create method that provides an API for tests that want
       /// to be more expressive of their intent. The original behavior of the wrapped
-      /// matcher is maintined.
+      /// matcher is maintained.
       /// </summary>
       /// <param name="matcher">The actual matcher to decorate</param>
       /// <returns>A new matcher instance</returns>
diff --git a/src/Proton.TestPeer/Matchers/Core/ShortcutCombination.cs b/src/Proton.TestPeer/Matchers/Core/ShortcutCombination.cs
index d5fed10..dfa2cb2 100644
--- a/src/Proton.TestPeer/Matchers/Core/ShortcutCombination.cs
+++ b/src/Proton.TestPeer/Matchers/Core/ShortcutCombination.cs
@@ -21,7 +21,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Core
 {
    /// <summary>
    /// A shortcut matcher for combinations of matching operations that succeeds
-   /// or fails based on a selection from the concreate implementation which
+   /// or fails based on a selection from the concrete implementation which
    /// selects if success is based on a match or the failure to match any one
    /// matcher in a series of matchers.
    /// </summary>
diff --git a/src/Proton.TestPeer/Matchers/IDescription.cs b/src/Proton.TestPeer/Matchers/IDescription.cs
index e518190..12da28c 100644
--- a/src/Proton.TestPeer/Matchers/IDescription.cs
+++ b/src/Proton.TestPeer/Matchers/IDescription.cs
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       IDescription AppendText(string text);
 
       /// <summary>
-      /// Appends the descrption of a self describing type into the overall
+      /// Appends the description of a self describing type into the overall
       /// description being accumulated by this description instance.
       /// </summary>
       /// <param name="selfDescribing">The self describing type to append</param>
diff --git a/src/Proton.TestPeer/Matchers/IMatcher.cs b/src/Proton.TestPeer/Matchers/IMatcher.cs
index 5e079c3..78c0909 100644
--- a/src/Proton.TestPeer/Matchers/IMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/IMatcher.cs
@@ -24,7 +24,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
    public interface IMatcher : ISelfDescribing
    {
       /// <summary>
-      /// Matches the target type defined by a concreate matcher implementation
+      /// Matches the target type defined by a concrete matcher implementation
       /// against the provided value to determine if they match.  The mechanics
       /// of the matching process are deferred to the matcher implementation.
       /// </summary>
diff --git a/src/Proton.TestPeer/Matchers/MatcherAssert.cs b/src/Proton.TestPeer/Matchers/MatcherAssert.cs
index 7576963..9ad2a9c 100644
--- a/src/Proton.TestPeer/Matchers/MatcherAssert.cs
+++ b/src/Proton.TestPeer/Matchers/MatcherAssert.cs
@@ -16,7 +16,6 @@
  */
 
 using System;
-using Apache.Qpid.Proton.Test.Driver.Matchers.Core;
 
 namespace Apache.Qpid.Proton.Test.Driver.Matchers
 {
diff --git a/src/Proton.TestPeer/Matchers/Matches.cs b/src/Proton.TestPeer/Matchers/Matches.cs
index d43ccaf..184dcad 100644
--- a/src/Proton.TestPeer/Matchers/Matches.cs
+++ b/src/Proton.TestPeer/Matchers/Matches.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
    {
       /// <summary>
       /// Creates a matcher instance that matches only if all of the supplied matchers
-      /// match againt the actual value supplied in the match operation.
+      /// match against the actual value supplied in the match operation.
       /// </summary>
       /// <param name="matchers">The list of matchers that must all match</param>
       /// <returns>A new matcher instance that validates the given criteria</returns>
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
 
       /// <summary>
       /// Creates a matcher instance that matches only if all of the supplied matchers
-      /// match againt the actual value supplied in the match operation.
+      /// match against the actual value supplied in the match operation.
       /// </summary>
       /// <param name="matchers">The list of matchers that must all match</param>
       /// <returns>A new matcher instance that validates the given criteria</returns>
@@ -76,7 +76,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       /// the examined object.
       /// </summary>
       /// <param name="type">The type that is expected</param>
-      /// <returns>A new matcher that examins the type of a target object</returns>
+      /// <returns>A new matcher that examines the type of a target object</returns>
       public static IMatcher Any(Type type)
       {
          return IsInstanceOfMatcher.Any(type);
@@ -88,7 +88,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       /// the examined object.
       /// </summary>
       /// <param name="type">The type that is expected</param>
-      /// <returns>A new matcher that examins the type of a target object</returns>
+      /// <returns>A new matcher that examines the type of a target object</returns>
       public static IMatcher InstanceOf(Type type)
       {
          return IsInstanceOfMatcher.InstanceOf(type);
@@ -100,7 +100,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       /// the examined object.
       /// </summary>
       /// <param name="type">The type that is expected</param>
-      /// <returns>A new matcher that examins the type of a target object</returns>
+      /// <returns>A new matcher that examines the type of a target object</returns>
       public static IMatcher IsA(Type type)
       {
          return IsMatcher.IsA(type);
@@ -140,7 +140,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
          return IsInMatcher.OneOf(values);
       }
 
-       /// <summary>
+      /// <summary>
       /// Creates a matcher instance that matches the actual value matched against is
       /// contained within the enumeration of possible values provided.
       /// </summary>
@@ -161,5 +161,5 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       {
          return IsInMatcher.In(values);
       }
-  }
+   }
 }
\ No newline at end of file
diff --git a/src/Proton.TestPeer/Matchers/TypeSafeDiagnosingMatcher.cs b/src/Proton.TestPeer/Matchers/TypeSafeDiagnosingMatcher.cs
index 10471ff..a993189 100644
--- a/src/Proton.TestPeer/Matchers/TypeSafeDiagnosingMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/TypeSafeDiagnosingMatcher.cs
@@ -21,7 +21,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
 {
    /// <summary>
    /// A base class used for matchers that require a non null value of a specific type
-   /// before attempt any futher matching. This matcher provides the basic setup to
+   /// before attempt any further matching. This matcher provides the basic setup to
    /// get as far as asserting that a value is of a given type then the implementation
    /// must finish the comparison.
    /// </summary>
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       /// the type this matcher operates against.
       /// </summary>
       /// <param name="item">The value casted to the expected type</param>
-      /// <returns>The result of the metching test, true if matched</returns>
+      /// <returns>The result of the matching test, true if matched</returns>
       protected abstract bool MatchesSafely(T item, IDescription mismatchDescription);
 
       #region Sealed implementations from the base which leverage safe match APIs declared here
diff --git a/src/Proton.TestPeer/Matchers/TypeSafeMatcher.cs b/src/Proton.TestPeer/Matchers/TypeSafeMatcher.cs
index 79b0a88..5299147 100644
--- a/src/Proton.TestPeer/Matchers/TypeSafeMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/TypeSafeMatcher.cs
@@ -21,7 +21,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
 {
    /// <summary>
    /// A base class used for matchers that require a non null value of a specific type
-   /// before attempt any futher matching. This matcher provides the basic setup to
+   /// before attempt any further matching. This matcher provides the basic setup to
    /// get as far as asserting that a value is of a given type then the implementation
    /// must finish the comparison.
    /// </summary>
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers
       /// the type this matcher operates against.
       /// </summary>
       /// <param name="item">The value casted to the expected type</param>
-      /// <returns>The result of the metching test, true if matched</returns>
+      /// <returns>The result of the matching test, true if matched</returns>
       protected abstract bool MatchesSafely(T item);
 
       /// <summary>
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractBodySectionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractBodySectionMatcher.cs
index 62eb115..006e88a 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractBodySectionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractBodySectionMatcher.cs
@@ -15,7 +15,6 @@
  * limitations under the License.
  */
 
-using System;
 using System.IO;
 using Apache.Qpid.Proton.Test.Driver.Codec;
 using Apache.Qpid.Proton.Test.Driver.Codec.Impl;
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMapSectionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMapSectionMatcher.cs
index 5321191..ff87e5a 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMapSectionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMapSectionMatcher.cs
@@ -30,7 +30,8 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
 
       protected override void VerifyReceivedDescribedObject(object described)
       {
-         if (described is not IDictionary) {
+         if (described is not IDictionary)
+         {
             throw new ArgumentException(
                 "Unexpected section contents. Expected Map, but got: " +
                 (described == null ? "null" : described.GetType()));
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMessageSectionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMessageSectionMatcher.cs
index f477297..7248dc9 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMessageSectionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/AbstractMessageSectionMatcher.cs
@@ -106,7 +106,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
       {
          receivedFields = valueMap;
 
-         foreach(KeyValuePair<object, IMatcher> entry in FieldMatchers)
+         foreach (KeyValuePair<object, IMatcher> entry in FieldMatchers)
          {
             IMatcher matcher = entry.Value;
             object field = entry.Key;
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/CompositingDataSectionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/CompositingDataSectionMatcher.cs
index 55b6641..65c1cf1 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/CompositingDataSectionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/CompositingDataSectionMatcher.cs
@@ -31,7 +31,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
    /// </summary>
    public sealed class CompositingDataSectionMatcher : TypeSafeMatcher<Stream>
    {
-      private static readonly Symbol DescriptorSymbol = new Symbol("amqp:data:binary");
+      private static readonly Symbol DescriptorSymbol = new("amqp:data:binary");
       private static readonly ulong DescriptorCode = 0x0000000000000075UL;
 
       private readonly int expectedValueSize;
@@ -178,7 +178,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
                case EncodingCodes.SmallULong:
                   return (ulong)data.ReadUnsignedByte();
                case EncodingCodes.ULong:
-                  return (ulong)data.ReadUnsignedLong();
+                  return data.ReadUnsignedLong();
                case EncodingCodes.Sym8:
                   return ReadSymbol8(data);
                case EncodingCodes.Sym32:
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/PartialDataSectionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/PartialDataSectionMatcher.cs
index 806be36..a73c024 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/PartialDataSectionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/PartialDataSectionMatcher.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
    /// </summary>
    public sealed class PartialDataSectionMatcher : TypeSafeMatcher<Stream>
    {
-      private static readonly Symbol DescriptorSymbol = new Symbol("amqp:data:binary");
+      private static readonly Symbol DescriptorSymbol = new("amqp:data:binary");
       private static readonly ulong DescriptorCode = 0x0000000000000075UL;
 
       private readonly bool expectDataSectionPreamble;
@@ -169,7 +169,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
                case EncodingCodes.SmallULong:
                   return (ulong)data.ReadUnsignedByte();
                case EncodingCodes.ULong:
-                  return (ulong)data.ReadUnsignedLong();
+                  return data.ReadUnsignedLong();
                case EncodingCodes.Sym8:
                   return ReadSymbol8(data);
                case EncodingCodes.Sym32:
diff --git a/src/Proton.TestPeer/Matchers/Types/Messaging/TargetMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Messaging/TargetMatcher.cs
index d3c5137..9d6f456 100644
--- a/src/Proton.TestPeer/Matchers/Types/Messaging/TargetMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Messaging/TargetMatcher.cs
@@ -36,7 +36,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
 
       protected override Type DescribedTypeClassType => typeof(Target);
 
-      public virtual  TargetMatcher WithAddress(string name)
+      public virtual TargetMatcher WithAddress(string name)
       {
          return WithAddress(Is.EqualTo(name));
       }
@@ -58,7 +58,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Messaging
 
       public virtual TargetMatcher WithDefaultTimeout()
       {
-         return WithTimeout(Apache.Qpid.Proton.Test.Driver.Matchers.Matches.AnyOf(Is.NullValue(), Is.EqualTo(0u)));
+         return WithTimeout(Matchers.Matches.AnyOf(Is.NullValue(), Is.EqualTo(0u)));
       }
 
       public virtual TargetMatcher WithDynamic(bool dynamic)
diff --git a/src/Proton.TestPeer/Matchers/Types/Transport/AttachMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Transport/AttachMatcher.cs
index 8ce6c96..4faf754 100644
--- a/src/Proton.TestPeer/Matchers/Types/Transport/AttachMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Transport/AttachMatcher.cs
@@ -40,7 +40,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
          return WithName(Is.EqualTo(name));
       }
 
-      public AttachMatcher WithHandleu(int handle)
+      public AttachMatcher WithHandle(int handle)
       {
          return WithHandle(Is.EqualTo(handle));
       }
@@ -79,7 +79,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
       {
          if (source != null)
          {
-            SourceMatcher sourceMatcher = new SourceMatcher(source);
+            SourceMatcher sourceMatcher = new(source);
             return WithSource(sourceMatcher);
          }
          else
@@ -92,7 +92,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
       {
          if (target != null)
          {
-            TargetMatcher targetMatcher = new TargetMatcher(target);
+            TargetMatcher targetMatcher = new(target);
             return WithTarget(targetMatcher);
          }
          else
@@ -105,7 +105,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
       {
          if (coordinator != null)
          {
-            CoordinatorMatcher coordinatorMatcher = new CoordinatorMatcher();
+            CoordinatorMatcher coordinatorMatcher = new();
             return WithCoordinator(coordinatorMatcher);
          }
          else
diff --git a/src/Proton.TestPeer/Matchers/Types/Transport/DispositionMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Transport/DispositionMatcher.cs
index ab3670c..abac86c 100644
--- a/src/Proton.TestPeer/Matchers/Types/Transport/DispositionMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Transport/DispositionMatcher.cs
@@ -16,10 +16,7 @@
  */
 
 using System;
-using System.Collections.Generic;
-using Apache.Qpid.Proton.Test.Driver.Codec.Primitives;
 using Apache.Qpid.Proton.Test.Driver.Codec.Transport;
-using Apache.Qpid.Proton.Test.Driver.Codec.Utilities;
 
 namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
 {
diff --git a/src/Proton.TestPeer/Matchers/Types/Transport/OpenMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Transport/OpenMatcher.cs
index 3cee956..985996e 100644
--- a/src/Proton.TestPeer/Matchers/Types/Transport/OpenMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Transport/OpenMatcher.cs
@@ -146,7 +146,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
 
       public OpenMatcher WithIncomingLocales(IMatcher m)
       {
-         AddFieldMatcher((int)OpenField.IncmoningLocales, m);
+         AddFieldMatcher((int)OpenField.IncomingLocales, m);
          return this;
       }
 
diff --git a/src/Proton.TestPeer/Matchers/Types/Transport/TransferPayloadCompositeMatcher.cs b/src/Proton.TestPeer/Matchers/Types/Transport/TransferPayloadCompositeMatcher.cs
index b34d877..0ebd904 100644
--- a/src/Proton.TestPeer/Matchers/Types/Transport/TransferPayloadCompositeMatcher.cs
+++ b/src/Proton.TestPeer/Matchers/Types/Transport/TransferPayloadCompositeMatcher.cs
@@ -34,7 +34,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
       private string propertiesMatcherFailureDescription;
       private ApplicationPropertiesMatcher applicationPropertiesMatcher;
       private string applicationPropertiesMatcherFailureDescription;
-      private List<TypeSafeMatcher<Stream>> msgContentMatchers = new List<TypeSafeMatcher<Stream>>();
+      private List<TypeSafeMatcher<Stream>> msgContentMatchers = new();
       private string msgContentMatcherFailureDescription;
       private FooterMatcher footersMatcher;
       private string footerMatcherFailureDescription;
@@ -199,7 +199,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Matchers.Types.Transport
 
       protected override bool MatchesSafely(byte[] payload)
       {
-         MemoryStream stream = new MemoryStream(payload);
+         MemoryStream stream = new(payload);
          long origLength = stream.Length;
          long bytesConsumed = 0;
 
diff --git a/src/Proton.TestPeer/Network/PeerTcpClient.cs b/src/Proton.TestPeer/Network/PeerTcpClient.cs
index b4dc7b2..465581a 100644
--- a/src/Proton.TestPeer/Network/PeerTcpClient.cs
+++ b/src/Proton.TestPeer/Network/PeerTcpClient.cs
@@ -64,7 +64,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
       {
          Statics.RequireNonNull(endpoint, "Cannot connect when the end point given is null");
 
-         Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
+         Socket clientSocket = new(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
 
          try
          {
@@ -101,10 +101,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
 
       private Stream AuthenticateAsClient(Stream ioStream)
       {
-         SslStream sslStream = new SslStream(ioStream,
-                                             false,
-                                             RemoteCertificateValidationCallback,
-                                             LocalCertificateSelectionCallback);
+         SslStream sslStream = new(ioStream, false, RemoteCertificateValidationCallback, LocalCertificateSelectionCallback);
 
          sslStream.AuthenticateAsClient(address, options.ClientCertificates, options.CheckForCertificateRevocation);
 
diff --git a/src/Proton.TestPeer/Network/PeerTcpServer.cs b/src/Proton.TestPeer/Network/PeerTcpServer.cs
index f4204f5..f74ab7b 100644
--- a/src/Proton.TestPeer/Network/PeerTcpServer.cs
+++ b/src/Proton.TestPeer/Network/PeerTcpServer.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
    public sealed class PeerTcpServer
    {
       private readonly Socket serverListener;
-      private readonly AtomicBoolean closed = new AtomicBoolean();
+      private readonly AtomicBoolean closed = new();
 
       private Action<PeerTcpTransport> clientConnectedHandler;
       private Action<PeerTcpServer, Exception> serverFailedHandler;
@@ -52,7 +52,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
          this.logger = loggerFactory?.CreateLogger<PeerTcpServer>();
          this.options = options;
 
-         IPEndPoint endpoint = new IPEndPoint(IPAddress.Loopback, 0);
+         IPEndPoint endpoint = new(IPAddress.Loopback, 0);
          serverListener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
          serverListener.Bind(endpoint);
       }
@@ -132,7 +132,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
 
       private Stream AuthenticateAsSslServer(Stream ioStream)
       {
-         SslStream sslStream = new SslStream(ioStream, true, RemoteCertificateValidationCallback, null);
+         SslStream sslStream = new(ioStream, true, RemoteCertificateValidationCallback, null);
 
          sslStream.AuthenticateAsServer(options.ServerCertificate,
                                         options.NeedClientAuth,
diff --git a/src/Proton.TestPeer/Network/PeerTcpTransport.cs b/src/Proton.TestPeer/Network/PeerTcpTransport.cs
index 324acec..ec0e4d4 100644
--- a/src/Proton.TestPeer/Network/PeerTcpTransport.cs
+++ b/src/Proton.TestPeer/Network/PeerTcpTransport.cs
@@ -40,7 +40,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Network
       private readonly Socket clientSocket;
       private readonly ChannelReader<Stream> channelOutputSink;
       private readonly ChannelWriter<Stream> channelOutputSource;
-      private readonly AtomicBoolean closed = new AtomicBoolean();
+      private readonly AtomicBoolean closed = new();
 
       private Action<PeerTcpTransport> connectedHandler;
       private Action<PeerTcpTransport, Exception> connectFailedHandler;
diff --git a/src/Proton.TestPeer/Utilities/Eventloop.cs b/src/Proton.TestPeer/Utilities/Eventloop.cs
index 6a91878..b1b74cd 100644
--- a/src/Proton.TestPeer/Utilities/Eventloop.cs
+++ b/src/Proton.TestPeer/Utilities/Eventloop.cs
@@ -32,8 +32,8 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
       private readonly ChannelWriter<Action> eventWriter;
 
       private readonly Task eventLoop;
-      private readonly AtomicBoolean shutdown = new AtomicBoolean();
-      private readonly CountdownEvent hasShutdown = new CountdownEvent(1);
+      private readonly AtomicBoolean shutdown = new();
+      private readonly CountdownEvent hasShutdown = new(1);
 
       private Thread eventLoopThread;
 
diff --git a/src/Proton.TestPeer/Utilities/RejectedExecutionException.cs b/src/Proton.TestPeer/Utilities/RejectedExecutionException.cs
index 049a648..126b990 100644
--- a/src/Proton.TestPeer/Utilities/RejectedExecutionException.cs
+++ b/src/Proton.TestPeer/Utilities/RejectedExecutionException.cs
@@ -43,7 +43,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
 
       /// <summary>
       /// Create a rejected execution exception with the provided message and an
-      /// inner exception which will be convery along with this exception instance.
+      /// inner exception which will be convey along with this exception instance.
       /// </summary>
       /// <param name="message">The message to convey with this exception</param>
       /// <param name="innerException">A wrapped causal exception </param>
diff --git a/src/Proton.TestPeer/Utilities/Statics.cs b/src/Proton.TestPeer/Utilities/Statics.cs
index 7f861a7..0d7afda 100644
--- a/src/Proton.TestPeer/Utilities/Statics.cs
+++ b/src/Proton.TestPeer/Utilities/Statics.cs
@@ -107,7 +107,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
 
       /// <summary>
       /// Checks if the range specified by the provided index + the size of the
-      /// range provided is within the provided length.  The method consideres the
+      /// range provided is within the provided length.  The method considers the
       /// index as being within the range specified and considers zero as a value
       /// that lies within the range of valid lengths.
       /// </summary>
@@ -120,7 +120,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
          if ((length | index | size) < 0 || size > (length - index))
          {
             throw new ArgumentOutOfRangeException(string.Format(
-               "The given range specied by index {0} + size {1} is outside the specified region length {2}",
+               "The given range specified by index {0} + size {1} is outside the specified region length {2}",
                index, size, length));
          }
          return index;
@@ -128,7 +128,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
 
       /// <summary>
       /// Checks if the range specified by the provided index + the size of the
-      /// range provided is within the provided length.  The method consideres the
+      /// range provided is within the provided length.  The method considers the
       /// index as being within the range specified and considers zero as a value
       /// that lies within the range of valid lengths.
       /// </summary>
@@ -141,7 +141,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
          if ((length | index | size) < 0 || size > (length - index))
          {
             throw new ArgumentOutOfRangeException(string.Format(
-               "The given range specied by index {0} + size {1} is outside the specified region length {2}",
+               "The given range specified by index {0} + size {1} is outside the specified region length {2}",
                index, size, length));
          }
          return index;
@@ -150,7 +150,7 @@ namespace Apache.Qpid.Proton.Test.Driver.Utilities
       /// <summary>
       /// Used to check for a method argument being null when the precondition
       /// states that it should not be, the method provides for the user to supply
-      /// a nessage to use when throwing an Argument null exception if the value
+      /// a message to use when throwing an Argument null exception if the value
       /// that was passed is indeed null.
       /// </summary>
       /// <param name="value">The value to check for null</param>
diff --git a/src/Proton/Buffer/IProtonBuffer.cs b/src/Proton/Buffer/IProtonBuffer.cs
index f6dd373..57f45cd 100644
--- a/src/Proton/Buffer/IProtonBuffer.cs
+++ b/src/Proton/Buffer/IProtonBuffer.cs
@@ -79,7 +79,7 @@ namespace Apache.Qpid.Proton.Buffer
 
       /// <summary>
       /// Gets or sets the current write offset in this buffer.  If the write offset is set to
-      /// a value less than the current read offset or larger than the current buffer capcity
+      /// a value less than the current read offset or larger than the current buffer capacity
       /// an exception is thrown.
       /// </summary>
       long WriteOffset { get; set; }
diff --git a/src/Proton/Buffer/IProtonCompositeBuffer.cs b/src/Proton/Buffer/IProtonCompositeBuffer.cs
index 546e87b..b6f759e 100644
--- a/src/Proton/Buffer/IProtonCompositeBuffer.cs
+++ b/src/Proton/Buffer/IProtonCompositeBuffer.cs
@@ -35,7 +35,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// point should the composite buffer need to allocate a new buffer in order
       /// to accommodate buffer writes a default buffer allocator will be used.
       /// </summary>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       /// <exception cref="NotImplementedException"></exception>
       public static IProtonCompositeBuffer Compose()
       {
@@ -50,7 +50,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// to accommodate buffer writes a default buffer allocator will be used.
       /// </summary>
       /// <param name="maxCapacity">The maximum capacity this composite can contain</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       /// <exception cref="NotImplementedException"></exception>
       public static IProtonCompositeBuffer Compose(long maxCapacity)
       {
@@ -65,7 +65,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// to accommodate buffer writes the provided allocator will be used.
       /// </summary>
       /// <param name="allocator">A buffer allocator that the composite should use</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       /// <exception cref="NotImplementedException"></exception>
       public static IProtonCompositeBuffer Compose(IProtonBufferAllocator allocator)
       {
@@ -82,7 +82,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// </remarks>
       /// <param name="allocator">A buffer allocator that the composite should use</param>
       /// <param name="buffers">The enumeration of buffers to compose the new composite</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       public static IProtonCompositeBuffer Compose(IProtonBufferAllocator allocator, IEnumerable<IProtonBuffer> buffers)
       {
          return new ProtonCompositeBuffer(allocator, buffers);
@@ -98,7 +98,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// </remarks>
       /// <param name="allocator">A buffer allocator that the composite should use</param>
       /// <param name="buffers">The enumeration of buffers to compose the new composite</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       public static IProtonCompositeBuffer Compose(IProtonBufferAllocator allocator, params IProtonBuffer[] buffers)
       {
          return new ProtonCompositeBuffer(allocator, buffers);
@@ -113,7 +113,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// may be thrown that indicates the nature of the violation.
       /// </remarks>
       /// <param name="buffers">The enumeration of buffers to compose the new composite</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       public static IProtonCompositeBuffer Compose(params IProtonBuffer[] buffers)
       {
          return new ProtonCompositeBuffer(ProtonByteBufferAllocator.Instance, buffers);
@@ -128,7 +128,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// may be thrown that indicates the nature of the violation.
       /// </remarks>
       /// <param name="buffers">The enumeration of buffers to compose the new composite</param>
-      /// <returns>a new empty composute buffer instance.</returns>
+      /// <returns>a new empty composite buffer instance.</returns>
       public static IProtonCompositeBuffer Compose(IEnumerable<IProtonBuffer> buffers)
       {
          return new ProtonCompositeBuffer(ProtonByteBufferAllocator.Instance, buffers);
@@ -148,7 +148,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// <summary>
       /// Appends the provided buffer to the end of the list of composite buffers already
       /// managed by this buffer.  The given buffer becomes the property of the composite
-      /// and the constraints placed upon buffers managed by the composte implementation
+      /// and the constraints placed upon buffers managed by the composite implementation
       /// are extended to this appended buffer.
       /// </summary>
       /// <param name="extension">The buffer to append to the end of the composite set</param>
diff --git a/src/Proton/Buffer/ProtonBufferSupport.cs b/src/Proton/Buffer/ProtonBufferSupport.cs
index efe3d73..39c23c7 100644
--- a/src/Proton/Buffer/ProtonBufferSupport.cs
+++ b/src/Proton/Buffer/ProtonBufferSupport.cs
@@ -172,7 +172,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// </summary>
       /// <param name="bufferA">The first buffer</param>
       /// <param name="bufferB">The second buffer</param>
-      /// <returns>an interger value indicating the relative difference between to buffers</returns>
+      /// <returns>an integer value indicating the relative difference between to buffers</returns>
       public static int Compare(IProtonBuffer bufferA, IProtonBuffer bufferB)
       {
          Statics.RequireNonNull(bufferA, "a");
diff --git a/src/Proton/Buffer/ProtonByteBuffer.cs b/src/Proton/Buffer/ProtonByteBuffer.cs
index eda9a97..8a1f1cd 100644
--- a/src/Proton/Buffer/ProtonByteBuffer.cs
+++ b/src/Proton/Buffer/ProtonByteBuffer.cs
@@ -34,7 +34,7 @@ namespace Apache.Qpid.Proton.Buffer
       public static readonly int DefaultCapacity = 64;
 
       /// <summary>
-      /// Default max cpacity based on maximum array size limit as this
+      /// Default max capacity based on maximum array size limit as this
       /// buffer is backed by a byte array.
       /// </summary>
       public static readonly int DefaultMaximumCapacity = int.MaxValue;
@@ -112,7 +112,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// how large the buffer could ever grow.
       /// </summary>
       /// <param name="backingArray">The actual byte array that backs this buffer</param>
-      /// <param name="maxCapacity">The maximum capcity this buffer can grow to</param>
+      /// <param name="maxCapacity">The maximum capacity this buffer can grow to</param>
       public ProtonByteBuffer(byte[] backingArray, long maxCapacity) : this(backingArray, 0, maxCapacity)
       {
       }
@@ -124,7 +124,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// </summary>
       /// <param name="backingArray">The actual byte array that backs this buffer</param>
       /// <param name="arrayOffset">The offset into the backing array where the buffer starts</param>
-      /// <param name="maxCapacity">The maximum capcity this buffer can grow to</param>
+      /// <param name="maxCapacity">The maximum capacity this buffer can grow to</param>
       public ProtonByteBuffer(byte[] backingArray, int arrayOffset, long maxCapacity)
        : this(backingArray, arrayOffset, backingArray.Length - arrayOffset, maxCapacity)
       {
@@ -138,7 +138,7 @@ namespace Apache.Qpid.Proton.Buffer
       /// <param name="backingArray">The actual byte array that backs this buffer</param>
       /// <param name="arrayOffset">The offset index into the backing array where the buffer starts</param>
       /// <param name="capacity">The capacity limit for this view of the assigned array</param>
-      /// <param name="maxCapacity">The maximum capcity this buffer can grow to</param>
+      /// <param name="maxCapacity">The maximum capacity this buffer can grow to</param>
       public ProtonByteBuffer(byte[] backingArray, int arrayOffset, int capacity, long maxCapacity) : base()
       {
          if (arrayOffset > backingArray.Length)
@@ -887,7 +887,7 @@ namespace Apache.Qpid.Proton.Buffer
          if (requiredWritable > maxCapacity - writeOffset)
          {
             throw new ArgumentOutOfRangeException(string.Format(
-                "writeOffset({0}) + requiredWritable({1}) exceeds maximum buffer capcity({2}): {3}",
+                "writeOffset({0}) + requiredWritable({1}) exceeds maximum buffer capacity({2}): {3}",
                 writeOffset, requiredWritable, maxCapacity, this));
          }
 
diff --git a/src/Proton/Buffer/ProtonCompositeBuffer.cs b/src/Proton/Buffer/ProtonCompositeBuffer.cs
index 384577f..98af7e9 100644
--- a/src/Proton/Buffer/ProtonCompositeBuffer.cs
+++ b/src/Proton/Buffer/ProtonCompositeBuffer.cs
@@ -32,7 +32,7 @@ namespace Apache.Qpid.Proton.Buffer
    public sealed class ProtonCompositeBuffer : IProtonCompositeBuffer
    {
       /// <summary>
-      /// Limit capcity to a value that might still allow for a non-composite
+      /// Limit capacity to a value that might still allow for a non-composite
       /// buffer copy of this buffer to be made if requested.
       /// </summary>
       private const long MAX_CAPACITY = long.MaxValue;
@@ -948,7 +948,7 @@ namespace Apache.Qpid.Proton.Buffer
          // First we need to filter all empty buffers from the input as they don't add anything to
          // the body of a composite buffer and then we need to flatten any composite buffers into
          // our internal view to avoid composites of composite which could allow an overflow on
-         // the compsoed size which we should be proactively trying to prevent.
+         // the composed size which we should be proactively trying to prevent.
          IProtonBuffer[] composite = buffers.Where(IsNotAnEmptyBuffer)
                                             .SelectMany(FlattenedCompositeBuffers)
                                             .ToArray();
@@ -1239,7 +1239,7 @@ namespace Apache.Qpid.Proton.Buffer
 
       #endregion
 
-      #region Internal buffer accessor for use when read / write occurs accross two or more buffers
+      #region Internal buffer accessor for use when read / write occurs across two or more buffers
 
       /// <summary>
       /// When a read or write will cross the boundary of two or more buffers, the split
diff --git a/src/Proton/Codec/Decoders/Messaging/DataTypeDecoder.cs b/src/Proton/Codec/Decoders/Messaging/DataTypeDecoder.cs
index c7845b4..a46d491 100644
--- a/src/Proton/Codec/Decoders/Messaging/DataTypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Messaging/DataTypeDecoder.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Messaging
 {
    public sealed class DataTypeDecoder : AbstractDescribedTypeDecoder
    {
-      private static readonly Data EmptyData = new Data();
+      private static readonly Data EmptyData = new();
 
       public override Symbol DescriptorSymbol => Data.DescriptorSymbol;
 
diff --git a/src/Proton/Codec/Decoders/Primitives/ByteTypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/ByteTypeDecoder.cs
index 0568f01..28fc0a0 100644
--- a/src/Proton/Codec/Decoders/Primitives/ByteTypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/ByteTypeDecoder.cs
@@ -29,7 +29,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override object ReadValue(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadByte();
+         return buffer.ReadByte();
       }
 
       public override object ReadValue(Stream stream, IStreamDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/Decimal128TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/Decimal128TypeDecoder.cs
index fe2053f..7739c3f 100644
--- a/src/Proton/Codec/Decoders/Primitives/Decimal128TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/Decimal128TypeDecoder.cs
@@ -35,7 +35,6 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override object ReadValue(Stream stream, IStreamDecoderState state)
       {
-
          return new Decimal128(ProtonStreamReadUtils.ReadUnsignedLong(stream), ProtonStreamReadUtils.ReadUnsignedLong(stream));
       }
 
diff --git a/src/Proton/Codec/Decoders/Primitives/List8TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/List8TypeDecoder.cs
index abd7178..84c3110 100644
--- a/src/Proton/Codec/Decoders/Primitives/List8TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/List8TypeDecoder.cs
@@ -15,8 +15,6 @@
  * limitations under the License.
  */
 
-using System;
-using System.Collections;
 using System.IO;
 using Apache.Qpid.Proton.Buffer;
 
@@ -28,7 +26,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override int ReadCount(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadUnsignedByte();
+         return buffer.ReadUnsignedByte();
       }
 
       public override int ReadCount(Stream stream, IStreamDecoderState state)
@@ -38,7 +36,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override int ReadSize(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadUnsignedByte();
+         return buffer.ReadUnsignedByte();
       }
 
       public override int ReadSize(Stream stream, IStreamDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/Long8TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/Long8TypeDecoder.cs
index ed101f6..6f910ee 100644
--- a/src/Proton/Codec/Decoders/Primitives/Long8TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/Long8TypeDecoder.cs
@@ -29,12 +29,12 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override object ReadValue(IProtonBuffer buffer, IDecoderState state)
       {
-         return (long) buffer.ReadByte();
+         return (long)buffer.ReadByte();
       }
 
       public override object ReadValue(Stream stream, IStreamDecoderState state)
       {
-         return (long) ProtonStreamReadUtils.ReadByte(stream);
+         return (long)ProtonStreamReadUtils.ReadByte(stream);
       }
 
       public override void SkipValue(IProtonBuffer buffer, IDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/Map32TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/Map32TypeDecoder.cs
index 3d9c968..e7540a2 100644
--- a/src/Proton/Codec/Decoders/Primitives/Map32TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/Map32TypeDecoder.cs
@@ -36,7 +36,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override int ReadSize(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadInt();
+         return buffer.ReadInt();
       }
 
       public override int ReadSize(Stream stream, IStreamDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/Map8TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/Map8TypeDecoder.cs
index 7a3f298..74eed3c 100644
--- a/src/Proton/Codec/Decoders/Primitives/Map8TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/Map8TypeDecoder.cs
@@ -26,7 +26,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override int ReadCount(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadUnsignedByte();
+         return buffer.ReadUnsignedByte();
       }
 
       public override int ReadCount(Stream stream, IStreamDecoderState state)
@@ -36,7 +36,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override int ReadSize(IProtonBuffer buffer, IDecoderState state)
       {
-        return buffer.ReadUnsignedByte();
+         return buffer.ReadUnsignedByte();
       }
 
       public override int ReadSize(Stream stream, IStreamDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/UnsignedInteger8TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/UnsignedInteger8TypeDecoder.cs
index 9fc2b62..677c602 100644
--- a/src/Proton/Codec/Decoders/Primitives/UnsignedInteger8TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/UnsignedInteger8TypeDecoder.cs
@@ -29,12 +29,12 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override object ReadValue(IProtonBuffer buffer, IDecoderState state)
       {
-         return (uint) buffer.ReadUnsignedByte();
+         return (uint)buffer.ReadUnsignedByte();
       }
 
       public override object ReadValue(Stream stream, IStreamDecoderState state)
       {
-         return (uint) ProtonStreamReadUtils.ReadUnsignedByte(stream);
+         return (uint)ProtonStreamReadUtils.ReadUnsignedByte(stream);
       }
 
       public override void SkipValue(IProtonBuffer buffer, IDecoderState state)
diff --git a/src/Proton/Codec/Decoders/Primitives/UnsignedLong8TypeDecoder.cs b/src/Proton/Codec/Decoders/Primitives/UnsignedLong8TypeDecoder.cs
index 219e6bc..8301b38 100644
--- a/src/Proton/Codec/Decoders/Primitives/UnsignedLong8TypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Primitives/UnsignedLong8TypeDecoder.cs
@@ -29,12 +29,12 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Primitives
 
       public override object ReadValue(IProtonBuffer buffer, IDecoderState state)
       {
-         return (ulong) buffer.ReadUnsignedByte();
+         return (ulong)buffer.ReadUnsignedByte();
       }
 
       public override object ReadValue(Stream stream, IStreamDecoderState state)
       {
-         return (ulong) ProtonStreamReadUtils.ReadUnsignedByte(stream);
+         return (ulong)ProtonStreamReadUtils.ReadUnsignedByte(stream);
       }
 
       public override void SkipValue(IProtonBuffer buffer, IDecoderState state)
diff --git a/src/Proton/Codec/Decoders/ProtonStreamDecoder.cs b/src/Proton/Codec/Decoders/ProtonStreamDecoder.cs
index 116d442..8bb36cc 100644
--- a/src/Proton/Codec/Decoders/ProtonStreamDecoder.cs
+++ b/src/Proton/Codec/Decoders/ProtonStreamDecoder.cs
@@ -493,8 +493,8 @@ namespace Apache.Qpid.Proton.Codec.Decoders
 
          return encodingCode switch
          {
-            EncodingCodes.Sym8 => (Symbol)symbol8Decoder.ReadValue(stream, state),
-            EncodingCodes.Sym32 => (Symbol)symbol32Decoder.ReadValue(stream, state),
+            EncodingCodes.Sym8 => symbol8Decoder.ReadValue(stream, state),
+            EncodingCodes.Sym32 => symbol32Decoder.ReadValue(stream, state),
             EncodingCodes.Null => null,
             _ => throw new DecodeException("Expected Symbol type but found encoding: " + encodingCode),
          };
@@ -548,9 +548,9 @@ namespace Apache.Qpid.Proton.Codec.Decoders
 
          return encodingCode switch
          {
-            EncodingCodes.List0 => (IList<T>)Array.Empty<T>(),
-            EncodingCodes.List8 => (IList<T>)list8Decoder.ReadList<T>(stream, state),
-            EncodingCodes.List32 => (IList<T>)list32Decoder.ReadList<T>(stream, state),
+            EncodingCodes.List0 => Array.Empty<T>(),
+            EncodingCodes.List8 => list8Decoder.ReadList<T>(stream, state),
+            EncodingCodes.List32 => list32Decoder.ReadList<T>(stream, state),
             EncodingCodes.Null => null,
             _ => throw new DecodeException("Expected List type but found encoding: " + encodingCode),
          };
@@ -580,7 +580,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders
             }
             else
             {
-               return default(T);
+               return default;
             }
          }
          else if (result.GetType().IsAssignableTo(typeof(T)))
@@ -713,7 +713,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders
                }
                catch (IOException e)
                {
-                  throw new DecodeException("Error while reseting marked stream", e);
+                  throw new DecodeException("Error while resetting marked stream", e);
                }
             }
          }
diff --git a/src/Proton/Codec/Decoders/Transport/DetachTypeDecoder.cs b/src/Proton/Codec/Decoders/Transport/DetachTypeDecoder.cs
index e38f152..86b9083 100644
--- a/src/Proton/Codec/Decoders/Transport/DetachTypeDecoder.cs
+++ b/src/Proton/Codec/Decoders/Transport/DetachTypeDecoder.cs
@@ -147,7 +147,7 @@ namespace Apache.Qpid.Proton.Codec.Decoders.Transport
 
       private static Detach ReadDetach(Stream stream, IStreamDecoderState state, IListTypeDecoder listDecoder)
       {
-         Detach result = new Detach();
+         Detach result = new();
 
          _ = listDecoder.ReadSize(stream, state);
          int count = listDecoder.ReadCount(stream, state);
diff --git a/src/Proton/Codec/Encoders/Primitives/BooleanTypeEncoder.cs b/src/Proton/Codec/Encoders/Primitives/BooleanTypeEncoder.cs
index 0070f11..f923a04 100644
--- a/src/Proton/Codec/Encoders/Primitives/BooleanTypeEncoder.cs
+++ b/src/Proton/Codec/Encoders/Primitives/BooleanTypeEncoder.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Codec.Encoders.Primitives
       public override void WriteType(IProtonBuffer buffer, IEncoderState state, object value)
       {
          buffer.EnsureWritable(sizeof(byte));
-         buffer.WriteUnsignedByte((byte)((bool)value == true ? EncodingCodes.BooleanTrue : EncodingCodes.BooleanFalse));
+         buffer.WriteUnsignedByte((byte)((bool)value ? EncodingCodes.BooleanTrue : EncodingCodes.BooleanFalse));
       }
 
       public override void WriteArray(IProtonBuffer buffer, IEncoderState state, Array values)
diff --git a/src/Proton/Codec/IDecoder.cs b/src/Proton/Codec/IDecoder.cs
index 8cda95b..7d63f59 100644
--- a/src/Proton/Codec/IDecoder.cs
+++ b/src/Proton/Codec/IDecoder.cs
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Codec
       /// Returns a cached decoder state instance that can be used be single threaded readers that
       /// use this decoder instance.
       /// </summary>
-      /// <returns>A cached decoder state object that can be used by single threaded readerss</returns>
+      /// <returns>A cached decoder state object that can be used by single threaded readers</returns>
       IDecoderState CachedDecoderState { get; }
 
       /// <summary>
diff --git a/src/Proton/Engine/AmqpPerformativeEnvelopePool.cs b/src/Proton/Engine/AmqpPerformativeEnvelopePool.cs
index c659c7d..c851ff9 100644
--- a/src/Proton/Engine/AmqpPerformativeEnvelopePool.cs
+++ b/src/Proton/Engine/AmqpPerformativeEnvelopePool.cs
@@ -39,7 +39,7 @@ namespace Apache.Qpid.Proton.Engine
       /// </summary>
       /// <param name="envelopeBuilder">A function that can build the envelopes</param>
       public AmqpPerformativeEnvelopePool(Func<AmqpPerformativeEnvelopePool<T>, T> envelopeBuilder) :
-         this(envelopeBuilder, AmqpPerformativeEnvelopePool<T>.DEFAULT_MAX_POOL_SIZE)
+         this(envelopeBuilder, DEFAULT_MAX_POOL_SIZE)
       {
       }
 
diff --git a/src/Proton/Engine/EmptyEnvelope.cs b/src/Proton/Engine/EmptyEnvelope.cs
index 4ffff8f..0d1aff5 100644
--- a/src/Proton/Engine/EmptyEnvelope.cs
+++ b/src/Proton/Engine/EmptyEnvelope.cs
@@ -20,12 +20,12 @@ using Apache.Qpid.Proton.Types.Transport;
 namespace Apache.Qpid.Proton.Engine
 {
    /// <summary>
-   /// An empty incoming AMQP envelope that is used for singalling
+   /// An empty incoming AMQP envelope that is used for signalling
    /// that an empty AMQP frame was read.
    /// </summary>
    public sealed class EmptyEnvelope : IncomingAmqpEnvelope
    {
-      public static readonly EmptyEnvelope Instance = new EmptyEnvelope();
+      public static readonly EmptyEnvelope Instance = new();
 
       public EmptyEnvelope() : base()
       {
diff --git a/src/Proton/Engine/Exceptions/ProtocolViolationException.cs b/src/Proton/Engine/Exceptions/ProtocolViolationException.cs
index 40eae30..b4fb1f0 100644
--- a/src/Proton/Engine/Exceptions/ProtocolViolationException.cs
+++ b/src/Proton/Engine/Exceptions/ProtocolViolationException.cs
@@ -60,7 +60,7 @@ namespace Apache.Qpid.Proton.Engine.Exceptions
       /// <summary>
       /// Creates a default version of this exception type with the given error condition.
       /// </summary>
-      /// <param name="errorCondition">Symbol contining the error information</param>
+      /// <param name="errorCondition">Symbol containing the error information</param>
       public ProtocolViolationException(Symbol errorCondition) : base()
       {
          ErrorCondition = errorCondition;
@@ -69,7 +69,7 @@ namespace Apache.Qpid.Proton.Engine.Exceptions
       /// <summary>
       /// Create a new instance with the given message that describes the specifics of the error.
       /// </summary>
-      /// <param name="errorCondition">Symbol contining the error information</param>
+      /// <param name="errorCondition">Symbol containing the error information</param>
       /// <param name="message">Description of the error</param>
       public ProtocolViolationException(Symbol errorCondition, string message) : base(message)
       {
@@ -79,7 +79,7 @@ namespace Apache.Qpid.Proton.Engine.Exceptions
       /// <summary>
       /// Create a new instance with the given message that describes the specifics of the error.
       /// </summary>
-      /// <param name="errorCondition">Symbol contining the error information</param>
+      /// <param name="errorCondition">Symbol containing the error information</param>
       /// <param name="message">Description of the error</param>
       /// <param name="cause">The exception that causes this error</param>
       public ProtocolViolationException(Symbol errorCondition, string message, Exception cause) : base(message, cause)
@@ -90,7 +90,7 @@ namespace Apache.Qpid.Proton.Engine.Exceptions
       /// <summary>
       /// Create a new instance with the given exception that describes the specifics of the error.
       /// </summary>
-      /// <param name="errorCondition">Symbol contining the error information</param>
+      /// <param name="errorCondition">Symbol containing the error information</param>
       /// <param name="cause">The exception that causes this error</param>
       public ProtocolViolationException(Symbol errorCondition, Exception cause) : base(cause)
       {
diff --git a/src/Proton/Engine/Exceptions/ProtonIOException.cs b/src/Proton/Engine/Exceptions/ProtonIOException.cs
index 4f55139..813e62f 100644
--- a/src/Proton/Engine/Exceptions/ProtonIOException.cs
+++ b/src/Proton/Engine/Exceptions/ProtonIOException.cs
@@ -28,7 +28,7 @@ namespace Apache.Qpid.Proton.Engine.Exceptions
       /// Creates a default version of this exception type.
       /// </summary>
       public ProtonIOException() : base()
-      {         
+      {
       }
 
       /// <summary>
diff --git a/src/Proton/Engine/HeaderEnvelope.cs b/src/Proton/Engine/HeaderEnvelope.cs
index f7df197..3a455a0 100644
--- a/src/Proton/Engine/HeaderEnvelope.cs
+++ b/src/Proton/Engine/HeaderEnvelope.cs
@@ -24,17 +24,17 @@ namespace Apache.Qpid.Proton.Engine
    /// </summary>
    public sealed class HeaderEnvelope : PerformativeEnvelope<AmqpHeader>
    {
-      public static readonly byte HeaderFrameType = (byte)1;
+      public static readonly byte HeaderFrameType = 1;
 
       /// <summary>
       /// A singleton instance of an SASL header that can be used to avoid additional allocations.
       /// </summary>
-      public static readonly HeaderEnvelope SASL_HEADER_ENVELOPE = new HeaderEnvelope(AmqpHeader.GetSASLHeader());
+      public static readonly HeaderEnvelope SASL_HEADER_ENVELOPE = new(AmqpHeader.GetSASLHeader());
 
       /// <summary>
       /// A singleton instance of an AMQP header that can be used to avoid additional allocations.
       /// </summary>
-      public static readonly HeaderEnvelope AMQP_HEADER_ENVELOPE = new HeaderEnvelope(AmqpHeader.GetAMQPHeader());
+      public static readonly HeaderEnvelope AMQP_HEADER_ENVELOPE = new(AmqpHeader.GetAMQPHeader());
 
       /// <summary>
       /// Create an header envelope with the given AMQHeader body.
@@ -74,7 +74,7 @@ namespace Apache.Qpid.Proton.Engine
       /// Invoke the correct handler based on whether this header is a SASL or AMQP header instance.
       /// </summary>
       /// <typeparam name="T">The context type for the handler invocation</typeparam>
-      /// <param name="handler">The header hander to invoke</param>
+      /// <param name="handler">The header handler to invoke</param>
       /// <param name="context">The context to supply to the handler method.</param>
       public void Invoke<T>(IHeaderHandler<T> handler, T context)
       {
diff --git a/src/Proton/Engine/ILink.cs b/src/Proton/Engine/ILink.cs
index c614cd9..347e395 100644
--- a/src/Proton/Engine/ILink.cs
+++ b/src/Proton/Engine/ILink.cs
@@ -40,7 +40,7 @@ namespace Apache.Qpid.Proton.Engine
       /// now detached due to a call the the detach method. This does not reflect the
       /// state of the remote endpoint and that should be checked separately.
       /// </summary>
-      bool IsLocallDetached { get; }
+      bool IsLocallyDetached { get; }
 
       /// <summary>
       /// Returns true if the endpoint having been previously locally opened is
diff --git a/src/Proton/Engine/ITransactionController.cs b/src/Proton/Engine/ITransactionController.cs
index e473ed8..2d64473 100644
--- a/src/Proton/Engine/ITransactionController.cs
+++ b/src/Proton/Engine/ITransactionController.cs
@@ -118,7 +118,7 @@ namespace Apache.Qpid.Proton.Engine
       /// with a new transaction Id for that transaction. Upon successful declaration of a new
       /// transaction the remote will respond and the declared event handler will be signaled.
       /// </summary>
-      /// <param name="transaction">The transaction to be dischareged</param>
+      /// <param name="transaction">The transaction to be discharged</param>
       /// <param name="failed">boolean that indicates if the transaction has failed.</param>
       /// <returns>This transaction controller instance</returns>
       ITransactionController Discharge(ITransaction<ITransactionController> transaction, bool failed);
diff --git a/src/Proton/Engine/ITransactionManager.cs b/src/Proton/Engine/ITransactionManager.cs
index 173397a..73399ec 100644
--- a/src/Proton/Engine/ITransactionManager.cs
+++ b/src/Proton/Engine/ITransactionManager.cs
@@ -122,7 +122,7 @@ namespace Apache.Qpid.Proton.Engine
       /// indicating that the discharge completed on the transaction identified by given
       /// transaction Id has now been retired.
       /// </summary>
-      /// <param name="transaction">The transaction that was dischareged</param>
+      /// <param name="transaction">The transaction that was discharged</param>
       /// <returns>This transaction manager instance</returns>
       ITransactionManager Discharged(ITransaction<ITransactionManager> transaction);
 
diff --git a/src/Proton/Engine/Implementation/ProtonLink.cs b/src/Proton/Engine/Implementation/ProtonLink.cs
index 3bd78b2..a16c1fc 100644
--- a/src/Proton/Engine/Implementation/ProtonLink.cs
+++ b/src/Proton/Engine/Implementation/ProtonLink.cs
@@ -53,7 +53,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
       protected readonly ProtonConnection connection;
       protected readonly ProtonSession session;
 
-      protected readonly Attach localAttach = new Attach();
+      protected readonly Attach localAttach = new();
       protected Attach remoteAttach;
 
       private bool localAttachSent;
@@ -330,7 +330,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 
       public override bool IsRemotelyClosed => RemoteState == LinkState.Closed;
 
-      public bool IsLocallDetached => LinkState == LinkState.Detached;
+      public bool IsLocallyDetached => LinkState == LinkState.Detached;
 
       public bool IsLocallyClosedOrDetached => LinkState > LinkState.Active;
 
diff --git a/src/Proton/Engine/Implementation/ProtonSender.cs b/src/Proton/Engine/Implementation/ProtonSender.cs
index ae53387..9e251b9 100644
--- a/src/Proton/Engine/Implementation/ProtonSender.cs
+++ b/src/Proton/Engine/Implementation/ProtonSender.cs
@@ -34,8 +34,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
       private static readonly IProtonLogger LOG = ProtonLoggerFactory.GetLogger<ProtonSender>();
 
       private readonly ProtonSessionOutgoingWindow sessionWindow;
-      private readonly LinkedSplayedDictionary<uint, ProtonOutgoingDelivery> unsettled =
-         new LinkedSplayedDictionary<uint, ProtonOutgoingDelivery>();
+      private readonly LinkedSplayedDictionary<uint, ProtonOutgoingDelivery> unsettled = new();
 
       private Action<IOutgoingDelivery> deliveryUpdatedEventHandler = null;
 
diff --git a/src/Proton/Engine/Implementation/ProtonSessionIncomingWindow.cs b/src/Proton/Engine/Implementation/ProtonSessionIncomingWindow.cs
index 30a2887..429e790 100644
--- a/src/Proton/Engine/Implementation/ProtonSessionIncomingWindow.cs
+++ b/src/Proton/Engine/Implementation/ProtonSessionIncomingWindow.cs
@@ -47,7 +47,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
       private uint nextIncomingId = 0;
 
       // Tracks the most recent delivery Id for validation against the next incoming delivery
-      private uint? lastDeliveryid;
+      private uint? lastDeliveryId;
 
       private uint maxFrameSize;
       private uint incomingBytes;
@@ -266,14 +266,14 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 
       internal void ValidateNextDeliveryId(uint deliveryId)
       {
-         uint previousId = lastDeliveryid ?? deliveryId - 1;
+         uint previousId = lastDeliveryId ?? deliveryId - 1;
          if (++previousId != deliveryId)
          {
             session.Connection.Engine.EngineFailed(
                   new ProtocolViolationException("Expected delivery-id " + previousId + ", got " + deliveryId));
          }
 
-         lastDeliveryid = deliveryId;
+         lastDeliveryId = deliveryId;
       }
 
       #endregion
diff --git a/src/Proton/Engine/Implementation/ProtonSessionOutgoingWindow.cs b/src/Proton/Engine/Implementation/ProtonSessionOutgoingWindow.cs
index 5447c45..afcf50d 100644
--- a/src/Proton/Engine/Implementation/ProtonSessionOutgoingWindow.cs
+++ b/src/Proton/Engine/Implementation/ProtonSessionOutgoingWindow.cs
@@ -18,7 +18,6 @@
 using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Buffer;
-using Apache.Qpid.Proton.Types;
 using Apache.Qpid.Proton.Types.Transport;
 using Apache.Qpid.Proton.Utilities;
 
@@ -110,7 +109,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
       }
 
       /// <summary>
-      /// Convery the writability at this point in time
+      /// Convey the writability at this point in time
       /// </summary>
       internal bool IsSendable => writeable;
 
diff --git a/src/Proton/Engine/Implementation/ProtonTransactionController.cs b/src/Proton/Engine/Implementation/ProtonTransactionController.cs
index c34bfcb..66895f0 100644
--- a/src/Proton/Engine/Implementation/ProtonTransactionController.cs
+++ b/src/Proton/Engine/Implementation/ProtonTransactionController.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 {
    /// <summary>
    /// Proton transaction controller abstraction that provides the transaction services
-   /// for a Sender link that transmits the transaction Declare and Discharge commads
+   /// for a Sender link that transmits the transaction Declare and Discharge commands
    /// which control the lifetime and outcome of a running transaction.
    /// </summary>
    public sealed class ProtonTransactionController : ProtonEndpoint<ITransactionController>, ITransactionController
@@ -469,7 +469,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 
                   if (transactionState == TransactionState.Declaring)
                   {
-                     transaction.State = TransactionState.DelcareFailed;
+                     transaction.State = TransactionState.DeclareFailed;
                      FireDeclareFailureEvent(transaction);
                   }
                   else
diff --git a/src/Proton/Engine/Implementation/ProtonTransactionManager.cs b/src/Proton/Engine/Implementation/ProtonTransactionManager.cs
index ab1fecb..317c771 100644
--- a/src/Proton/Engine/Implementation/ProtonTransactionManager.cs
+++ b/src/Proton/Engine/Implementation/ProtonTransactionManager.cs
@@ -19,7 +19,6 @@ using System;
 using System.Collections.Generic;
 using Apache.Qpid.Proton.Buffer;
 using Apache.Qpid.Proton.Codec;
-using Apache.Qpid.Proton.Logging;
 using Apache.Qpid.Proton.Engine.Exceptions;
 using Apache.Qpid.Proton.Types;
 using Apache.Qpid.Proton.Types.Messaging;
@@ -30,7 +29,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 {
    /// <summary>
    /// Proton transaction manager abstraction that provides the transaction services
-   /// for a Receiver link that handles the transaction Declare and Discharge commads
+   /// for a Receiver link that handles the transaction Declare and Discharge commands
    /// which control the lifetime and outcome of a running transaction.
    /// </summary>
    public sealed class ProtonTransactionManager : ProtonEndpoint<ITransactionManager>, ITransactionManager
@@ -224,7 +223,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
             Error = condition
          };
 
-         txn.State = TransactionState.DelcareFailed;
+         txn.State = TransactionState.DeclareFailed;
          txn.Declare.Disposition(rejected, true);
 
          return this;
diff --git a/src/Proton/Engine/IncomingAmqpEnvelope.cs b/src/Proton/Engine/IncomingAmqpEnvelope.cs
index dd24882..5d82479 100644
--- a/src/Proton/Engine/IncomingAmqpEnvelope.cs
+++ b/src/Proton/Engine/IncomingAmqpEnvelope.cs
@@ -24,7 +24,7 @@ namespace Apache.Qpid.Proton.Engine
    /// </summary>
    public class IncomingAmqpEnvelope : PerformativeEnvelope<IPerformative>
    {
-      public static readonly byte AmqpFrameType = (byte)0;
+      public static readonly byte AmqpFrameType = 0;
 
       private readonly AmqpPerformativeEnvelopePool<IncomingAmqpEnvelope> pool;
 
diff --git a/src/Proton/Engine/LinkState.cs b/src/Proton/Engine/LinkState.cs
index 312af51..8ef5b82 100644
--- a/src/Proton/Engine/LinkState.cs
+++ b/src/Proton/Engine/LinkState.cs
@@ -47,12 +47,12 @@ namespace Apache.Qpid.Proton.Engine
    {
       public static bool IsClosedOrDetached(this LinkState state)
       {
-         return state == LinkState.Closed || state == LinkState.Detached;
+         return state is LinkState.Closed or LinkState.Detached;
       }
 
       public static bool IsOpen(this LinkState state)
       {
-         return state == LinkState.Active;
+         return state is LinkState.Active;
       }
    }
 }
diff --git a/src/Proton/Engine/Sasl/Client/AbstractScramSHAMechanism.cs b/src/Proton/Engine/Sasl/Client/AbstractScramSHAMechanism.cs
index 824f410..2c3ce05 100644
--- a/src/Proton/Engine/Sasl/Client/AbstractScramSHAMechanism.cs
+++ b/src/Proton/Engine/Sasl/Client/AbstractScramSHAMechanism.cs
@@ -246,9 +246,9 @@ namespace Apache.Qpid.Proton.Engine.Sasl.Client
       protected abstract HMAC CreateHmac(byte[] keyBytes);
 
       /// <summary>
-      /// Dervied SHA based message digest algorithm used by this SASL mechanism
+      /// Derived SHA based message digest algorithm used by this SASL mechanism
       /// </summary>
-      /// <returns>A new hash algorithm that perfrom the digest required by this SASL mechanism</returns>
+      /// <returns>A new hash algorithm that perform the digest required by this SASL mechanism</returns>
       protected abstract HashAlgorithm CreateHashAlgorithm();
 
       public override void VerifyCompletion()
diff --git a/src/Proton/Engine/Sasl/Client/ISaslCredentialsProvider.cs b/src/Proton/Engine/Sasl/Client/ISaslCredentialsProvider.cs
index 0059e7a..dda2e05 100644
--- a/src/Proton/Engine/Sasl/Client/ISaslCredentialsProvider.cs
+++ b/src/Proton/Engine/Sasl/Client/ISaslCredentialsProvider.cs
@@ -27,17 +27,17 @@ namespace Apache.Qpid.Proton.Engine.Sasl.Client
    public interface ISaslCredentialsProvider
    {
       /// <summary>
-      /// Gets the virtual host value the use when perfroming SASL authentication.
+      /// Gets the virtual host value the use when performing SASL authentication.
       /// </summary>
       string VHost { get; }
 
       /// <summary>
-      /// Gets the user name value the use when perfroming SASL authentication.
+      /// Gets the user name value the use when performing SASL authentication.
       /// </summary>
       string Username { get; }
 
       /// <summary>
-      /// Gets the password value the use when perfroming SASL authentication.
+      /// Gets the password value the use when performing SASL authentication.
       /// </summary>
       string Password { get; }
 
@@ -47,7 +47,7 @@ namespace Apache.Qpid.Proton.Engine.Sasl.Client
       IPrincipal LocalPrincipal { get; }
 
       /// <summary>
-      /// Gets a collection of options the use when perfroming SASL authentication.
+      /// Gets a collection of options the use when performing SASL authentication.
       /// </summary>
       IDictionary<string, object> Options => new Dictionary<string, object>();
 
diff --git a/src/Proton/Engine/Sasl/Client/XOauth2Mechanism.cs b/src/Proton/Engine/Sasl/Client/XOauth2Mechanism.cs
index 270dc9e..c94a691 100644
--- a/src/Proton/Engine/Sasl/Client/XOauth2Mechanism.cs
+++ b/src/Proton/Engine/Sasl/Client/XOauth2Mechanism.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Engine.Sasl.Client
    {
       public static readonly Symbol XOAUTH2 = Symbol.Lookup("XOAUTH2");
 
-      private readonly Regex ACCESS_TOKEN_PATTERN = new Regex("^[\\x20-\\x7F]+$", RegexOptions.Compiled);
+      private readonly Regex ACCESS_TOKEN_PATTERN = new("^[\\x20-\\x7F]+$", RegexOptions.Compiled);
 
       private string additionalFailureInformation;
 
diff --git a/src/Proton/Engine/TransactionState.cs b/src/Proton/Engine/TransactionState.cs
index 56f9fff..dfb0bfd 100644
--- a/src/Proton/Engine/TransactionState.cs
+++ b/src/Proton/Engine/TransactionState.cs
@@ -60,7 +60,7 @@ namespace Apache.Qpid.Proton.Engine
       /// A Transaction is considered failed if the transaction manager responds with an error
       /// to the declaration action.
       /// </summary>
-      DelcareFailed,
+      DeclareFailed,
 
       /// <summary>
       /// A Transaction is considered failed in the transaction manager responds with an error
diff --git a/src/Proton/Types/Decimal32.cs b/src/Proton/Types/Decimal32.cs
index 3feaebd..e7fc136 100644
--- a/src/Proton/Types/Decimal32.cs
+++ b/src/Proton/Types/Decimal32.cs
@@ -38,12 +38,12 @@ namespace Apache.Qpid.Proton.Types
 
       public int CompareTo(object value)
       {
-         return CompareTo((Decimal32) value);
+         return CompareTo((Decimal32)value);
       }
 
       public int CompareTo(Decimal32 value)
       {
-        return (this.bits < value.bits) ? -1 : ((this.bits == value.bits) ? 0 : 1);
+         return (this.bits < value.bits) ? -1 : ((this.bits == value.bits) ? 0 : 1);
       }
 
       public bool Equals(Decimal32 obj)
diff --git a/src/Proton/Types/Messaging/Accepted.cs b/src/Proton/Types/Messaging/Accepted.cs
index cbad7bb..dd24ded 100644
--- a/src/Proton/Types/Messaging/Accepted.cs
+++ b/src/Proton/Types/Messaging/Accepted.cs
@@ -25,7 +25,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:accepted:list");
 
       /// <summary>
-      /// The singelton instance of Accepted outcomes and delivery states
+      /// The singleton instance of Accepted outcomes and delivery states
       /// </summary>
       public static Accepted Instance { get; } = new Accepted();
 
diff --git a/src/Proton/Types/Messaging/AmqpSequence.cs b/src/Proton/Types/Messaging/AmqpSequence.cs
index a913abd..16a52cf 100644
--- a/src/Proton/Types/Messaging/AmqpSequence.cs
+++ b/src/Proton/Types/Messaging/AmqpSequence.cs
@@ -16,7 +16,6 @@
  */
 
 using System.Collections;
-using System.Collections.Generic;
 
 namespace Apache.Qpid.Proton.Types.Messaging
 {
@@ -77,7 +76,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
          }
          else
          {
-            return Equals((AmqpSequence) other);
+            return Equals((AmqpSequence)other);
          }
       }
 
diff --git a/src/Proton/Types/Messaging/AmqpValue.cs b/src/Proton/Types/Messaging/AmqpValue.cs
index e534ebc..980ca4b 100644
--- a/src/Proton/Types/Messaging/AmqpValue.cs
+++ b/src/Proton/Types/Messaging/AmqpValue.cs
@@ -30,7 +30,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       {
       }
 
-      public AmqpValue(object value) :this()
+      public AmqpValue(object value) : this()
       {
          Value = value;
       }
@@ -69,7 +69,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
          }
          else
          {
-            return Equals((AmqpValue) other);
+            return Equals((AmqpValue)other);
          }
       }
 
diff --git a/src/Proton/Types/Messaging/ApplicationProperties.cs b/src/Proton/Types/Messaging/ApplicationProperties.cs
index 2be8c47..2ed93a4 100644
--- a/src/Proton/Types/Messaging/ApplicationProperties.cs
+++ b/src/Proton/Types/Messaging/ApplicationProperties.cs
@@ -76,7 +76,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
          }
          else
          {
-            return Equals((ApplicationProperties) other);
+            return Equals((ApplicationProperties)other);
          }
       }
 
diff --git a/src/Proton/Types/Messaging/DeleteOnClose.cs b/src/Proton/Types/Messaging/DeleteOnClose.cs
index d77eace..b11126f 100644
--- a/src/Proton/Types/Messaging/DeleteOnClose.cs
+++ b/src/Proton/Types/Messaging/DeleteOnClose.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:delete-on-close:list");
 
       /// <summary>
-      /// The singelton instance of this lifetime policy
+      /// The singleton instance of this lifetime policy
       /// </summary>
       public static DeleteOnClose Instance { get; } = new DeleteOnClose();
 
diff --git a/src/Proton/Types/Messaging/DeleteOnNoLinks.cs b/src/Proton/Types/Messaging/DeleteOnNoLinks.cs
index 6cce354..1b71404 100644
--- a/src/Proton/Types/Messaging/DeleteOnNoLinks.cs
+++ b/src/Proton/Types/Messaging/DeleteOnNoLinks.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:delete-on-no-links:list");
 
       /// <summary>
-      /// The singelton instance of this lifetime policy
+      /// The singleton instance of this lifetime policy
       /// </summary>
       public static DeleteOnNoLinks Instance { get; } = new DeleteOnNoLinks();
 
diff --git a/src/Proton/Types/Messaging/DeleteOnNoLinksOrMessages.cs b/src/Proton/Types/Messaging/DeleteOnNoLinksOrMessages.cs
index 09737c8..d85e36e 100644
--- a/src/Proton/Types/Messaging/DeleteOnNoLinksOrMessages.cs
+++ b/src/Proton/Types/Messaging/DeleteOnNoLinksOrMessages.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:delete-on-no-links-or-messages:list");
 
       /// <summary>
-      /// The singelton instance of this lifetime policy
+      /// The singleton instance of this lifetime policy
       /// </summary>
       public static DeleteOnNoLinksOrMessages Instance { get; } = new DeleteOnNoLinksOrMessages();
 
diff --git a/src/Proton/Types/Messaging/DeleteOnNoMessages.cs b/src/Proton/Types/Messaging/DeleteOnNoMessages.cs
index 6dde41a..9e5d5fb 100644
--- a/src/Proton/Types/Messaging/DeleteOnNoMessages.cs
+++ b/src/Proton/Types/Messaging/DeleteOnNoMessages.cs
@@ -23,7 +23,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:delete-on-no-messages:list");
 
       /// <summary>
-      /// The singelton instance of this lifetime policy
+      /// The singleton instance of this lifetime policy
       /// </summary>
       public static DeleteOnNoMessages Instance { get; } = new DeleteOnNoMessages();
 
diff --git a/src/Proton/Types/Messaging/Modified.cs b/src/Proton/Types/Messaging/Modified.cs
index 3ca5139..5040f14 100644
--- a/src/Proton/Types/Messaging/Modified.cs
+++ b/src/Proton/Types/Messaging/Modified.cs
@@ -52,7 +52,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public bool DeliveryFailed { get; set; }
 
       /// <summary>
-      /// Should the delivery be redeliverable on this link or routed elsewhere
+      /// Should the delivery be redelivered on this link or routed elsewhere
       /// </summary>
       public bool UndeliverableHere { get; set; }
 
@@ -74,7 +74,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
          }
          else
          {
-            return Equals((Modified) other);
+            return Equals((Modified)other);
          }
       }
 
diff --git a/src/Proton/Types/Messaging/Rejected.cs b/src/Proton/Types/Messaging/Rejected.cs
index 3f48ce8..2f47a41 100644
--- a/src/Proton/Types/Messaging/Rejected.cs
+++ b/src/Proton/Types/Messaging/Rejected.cs
@@ -92,7 +92,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
 
       public override string ToString()
       {
-        return "Rejected{" + "error=" + Error + "}";
+         return "Rejected{" + "error=" + Error + "}";
       }
 
       public object Clone()
diff --git a/src/Proton/Types/Messaging/Released.cs b/src/Proton/Types/Messaging/Released.cs
index 15ec86b..d65d5ae 100644
--- a/src/Proton/Types/Messaging/Released.cs
+++ b/src/Proton/Types/Messaging/Released.cs
@@ -25,7 +25,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
       public static readonly Symbol DescriptorSymbol = Symbol.Lookup("amqp:released:list");
 
       /// <summary>
-      /// The singelton instance of Released outcomes and delivery states
+      /// The singleton instance of Released outcomes and delivery states
       /// </summary>
       public static Released Instance { get; } = new Released();
 
diff --git a/src/Proton/Types/Messaging/Source.cs b/src/Proton/Types/Messaging/Source.cs
index 92294de..8eadd7a 100644
--- a/src/Proton/Types/Messaging/Source.cs
+++ b/src/Proton/Types/Messaging/Source.cs
@@ -44,7 +44,7 @@ namespace Apache.Qpid.Proton.Types.Messaging
             Filter = new Dictionary<Symbol, object>(other.Filter);
          }
          DefaultOutcome = other.DefaultOutcome;
-         Outcomes = (Symbol[]) other.Outcomes?.Clone();
+         Outcomes = (Symbol[])other.Outcomes?.Clone();
          Capabilities = other.Capabilities;
       }
 
diff --git a/src/Proton/Types/Transport/AmqpError.cs b/src/Proton/Types/Transport/AmqpError.cs
index 3220936..37022d6 100644
--- a/src/Proton/Types/Transport/AmqpError.cs
+++ b/src/Proton/Types/Transport/AmqpError.cs
@@ -86,7 +86,7 @@ namespace Apache.Qpid.Proton.Types.Transport
       /// a link with a large unsettled map the endpoint MAY make use of the incomplete-unsettled flag to avoid the need
       /// for overly large frames.
       /// </summary>
-     public static readonly Symbol FRAME_SIZE_TOO_SMALL = Symbol.Lookup("amqp:frame-size-too-small");
+      public static readonly Symbol FRAME_SIZE_TOO_SMALL = Symbol.Lookup("amqp:frame-size-too-small");
 
    }
 }
\ No newline at end of file
diff --git a/src/Proton/Types/Transport/AmqpHeader.cs b/src/Proton/Types/Transport/AmqpHeader.cs
index b88be6d..08a844a 100644
--- a/src/Proton/Types/Transport/AmqpHeader.cs
+++ b/src/Proton/Types/Transport/AmqpHeader.cs
@@ -103,7 +103,7 @@ namespace Apache.Qpid.Proton.Types.Transport
          if (buffer != null)
          {
             byte[] copy = new byte[buffer.ReadableBytes];
-            buffer.CopyInto(0, copy, 0, (int) buffer.ReadableBytes);
+            buffer.CopyInto(0, copy, 0, (int)buffer.ReadableBytes);
             return copy;
          }
          else
diff --git a/src/Proton/Types/Transport/Begin.cs b/src/Proton/Types/Transport/Begin.cs
index fdcaf89..6b4c922 100644
--- a/src/Proton/Types/Transport/Begin.cs
+++ b/src/Proton/Types/Transport/Begin.cs
@@ -194,16 +194,16 @@ namespace Apache.Qpid.Proton.Types.Transport
 
       public override string ToString()
       {
-        return "Begin{" +
-               "remoteChannel=" + (HasRemoteChannel() ? remoteChannel : "null") +
-               ", nextOutgoingId=" + (HasNextOutgoingId() ? nextOutgoingId : "null") +
-               ", incomingWindow=" + (HasIncomingWindow() ? incomingWindow : "null") +
-               ", outgoingWindow=" + (HasOutgoingWindow() ? outgoingWindow : "null") +
-               ", handleMax=" + (HasHandleMax() ? handleMax : "null") +
-               ", offeredCapabilities=" + (offeredCapabilities == null ? "null" : offeredCapabilities) +
-               ", desiredCapabilities=" + (desiredCapabilities == null ? "null" : desiredCapabilities) +
-               ", properties=" + properties +
-               '}';
+         return "Begin{" +
+                "remoteChannel=" + (HasRemoteChannel() ? remoteChannel : "null") +
+                ", nextOutgoingId=" + (HasNextOutgoingId() ? nextOutgoingId : "null") +
+                ", incomingWindow=" + (HasIncomingWindow() ? incomingWindow : "null") +
+                ", outgoingWindow=" + (HasOutgoingWindow() ? outgoingWindow : "null") +
+                ", handleMax=" + (HasHandleMax() ? handleMax : "null") +
+                ", offeredCapabilities=" + (offeredCapabilities == null ? "null" : offeredCapabilities) +
+                ", desiredCapabilities=" + (desiredCapabilities == null ? "null" : desiredCapabilities) +
+                ", properties=" + properties +
+                '}';
       }
 
       public override bool Equals(object obj)
@@ -231,7 +231,7 @@ namespace Apache.Qpid.Proton.Types.Transport
 
       public override int GetHashCode()
       {
-         HashCode hash = new HashCode();
+         HashCode hash = new();
          hash.Add(modified);
          hash.Add(remoteChannel);
          hash.Add(nextOutgoingId);
diff --git a/src/Proton/Types/Transport/IHeaderHandler.cs b/src/Proton/Types/Transport/IHeaderHandler.cs
index 1b8fc74..d1368fe 100644
--- a/src/Proton/Types/Transport/IHeaderHandler.cs
+++ b/src/Proton/Types/Transport/IHeaderHandler.cs
@@ -29,14 +29,14 @@ namespace Apache.Qpid.Proton.Types.Transport
       /// Handles AMQP Header events
       /// </summary>
       /// <param name="header">The AMQP Header instance</param>
-      /// <param name="context">The context provied to the event handler</param>
+      /// <param name="context">The context provided to the event handler</param>
       void HandleAMQPHeader(AmqpHeader header, E context) { }
 
       /// <summary>
       /// Handles SASL Header events
       /// </summary>
       /// <param name="header">The SASL Header instance</param>
-      /// <param name="context">The context provied to the event handler</param>
+      /// <param name="context">The context provided to the event handler</param>
       void HandleSASLHeader(AmqpHeader header, E context) { }
 
    }
diff --git a/src/Proton/Types/Transport/IPerformative.cs b/src/Proton/Types/Transport/IPerformative.cs
index 95fda22..98411b4 100644
--- a/src/Proton/Types/Transport/IPerformative.cs
+++ b/src/Proton/Types/Transport/IPerformative.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Types.Transport
       /// <typeparam name="T">The type of context that is provided</typeparam>
       /// <param name="handler">The handler instance to visit</param>
       /// <param name="payload">The payload that the performative was sent with</param>
-      /// <param name="channel">The channel the perforamative was sent on</param>
+      /// <param name="channel">The channel the performative was sent on</param>
       /// <param name="context">The context for this visitation</param>
       void Invoke<T>(IPerformativeHandler<T> handler, IProtonBuffer payload, ushort channel, T context);
 
diff --git a/src/Proton/Types/Transport/PerformativeType.cs b/src/Proton/Types/Transport/PerformativeType.cs
index 2cb7cd3..899eda9 100644
--- a/src/Proton/Types/Transport/PerformativeType.cs
+++ b/src/Proton/Types/Transport/PerformativeType.cs
@@ -22,14 +22,14 @@ namespace Apache.Qpid.Proton.Types.Transport
    /// </summary>
    public enum PerformativeType
    {
-        Attach,
-        Begin,
-        Close,
-        Detach,
-        Disposition,
-        End,
-        Flow,
-        Open,
-        Transfer
+      Attach,
+      Begin,
+      Close,
+      Detach,
+      Disposition,
+      End,
+      Flow,
+      Open,
+      Transfer
    }
 }
\ No newline at end of file
diff --git a/src/Proton/Types/UnknownDescribedType.cs b/src/Proton/Types/UnknownDescribedType.cs
index 03e8555..5e58186 100644
--- a/src/Proton/Types/UnknownDescribedType.cs
+++ b/src/Proton/Types/UnknownDescribedType.cs
@@ -18,7 +18,7 @@
 namespace Apache.Qpid.Proton.Types
 {
    /// <summary>
-   /// Defines an object that can carry an AMQP descriport and some object which
+   /// Defines an object that can carry an AMQP descriptor and some object which
    /// was decoded from the encoding of an AMQP described type not known to the
    /// codec in use when decoding it.
    /// </summary>
diff --git a/src/Proton/Utilities/IDeque.cs b/src/Proton/Utilities/IDeque.cs
index 56439df..f7c2cc7 100644
--- a/src/Proton/Utilities/IDeque.cs
+++ b/src/Proton/Utilities/IDeque.cs
@@ -42,7 +42,7 @@ namespace Apache.Qpid.Proton.Utilities
       /// <summary>
       /// Returns true if the double ended queue is currently empty. This method provides
       /// an optimized means of checking for empty in this collection type where otherwise
-      /// the count propertry might be used which could require a calculation on each call
+      /// the count property might be used which could require a calculation on each call
       /// to determine the current element count.
       /// </summary>
       bool IsEmpty { get; }
diff --git a/src/Proton/Utilities/SplayedDictionary.cs b/src/Proton/Utilities/SplayedDictionary.cs
index 73ff900..0490530 100644
--- a/src/Proton/Utilities/SplayedDictionary.cs
+++ b/src/Proton/Utilities/SplayedDictionary.cs
@@ -33,7 +33,7 @@ namespace Apache.Qpid.Proton.Utilities
       private readonly IComparer<K> keyComparer = Comparer<K>.Default;
 
       /// <summary>
-      /// Pooled entries used to prevent excessive allocations for rapied insert and removal operations.
+      /// Pooled entries used to prevent excessive allocations for rapid insert and removal operations.
       /// </summary>
       protected readonly RingQueue<SplayedEntry> entryPool = new(64);
 
diff --git a/src/Proton/Utilities/Statics.cs b/src/Proton/Utilities/Statics.cs
index 92ecbc5..57bedff 100644
--- a/src/Proton/Utilities/Statics.cs
+++ b/src/Proton/Utilities/Statics.cs
@@ -131,7 +131,7 @@ namespace Apache.Qpid.Proton.Utilities
 
       /// <summary>
       /// Checks if the range specified by the provided index + the size of the
-      /// range provided is within the provided length.  The method consideres the
+      /// range provided is within the provided length.  The method considers the
       /// index as being within the range specified and considers zero as a value
       /// that lies within the range of valid lengths.
       /// </summary>
@@ -144,7 +144,7 @@ namespace Apache.Qpid.Proton.Utilities
          if ((length | index | size) < 0 || size > (length - index))
          {
             throw new ArgumentOutOfRangeException(string.Format(
-               "The given range specied by index {0} + size {1} is outside the specified region length {2}",
+               "The given range specified by index {0} + size {1} is outside the specified region length {2}",
                index, size, length));
          }
          return index;
@@ -152,7 +152,7 @@ namespace Apache.Qpid.Proton.Utilities
 
       /// <summary>
       /// Checks if the range specified by the provided index + the size of the
-      /// range provided is within the provided length.  The method consideres the
+      /// range provided is within the provided length.  The method considers the
       /// index as being within the range specified and considers zero as a value
       /// that lies within the range of valid lengths.
       /// </summary>
@@ -165,7 +165,7 @@ namespace Apache.Qpid.Proton.Utilities
          if ((length | index | size) < 0 || size > (length - index))
          {
             throw new ArgumentOutOfRangeException(string.Format(
-               "The given range specied by index {0} + size {1} is outside the specified region length {2}",
+               "The given range specified by index {0} + size {1} is outside the specified region length {2}",
                index, size, length));
          }
          return index;
@@ -174,7 +174,7 @@ namespace Apache.Qpid.Proton.Utilities
       /// <summary>
       /// Used to check for a method argument being null when the precondition
       /// states that it should not be, the method provides for the user to supply
-      /// a nessage to use when throwing an Argument null exception if the value
+      /// a message to use when throwing an Argument null exception if the value
       /// that was passed is indeed null.
       /// </summary>
       /// <param name="value">The value to check for null</param>
diff --git a/src/Proton/Utilities/StringUtils.cs b/src/Proton/Utilities/StringUtils.cs
index 3d3475b..842848a 100644
--- a/src/Proton/Utilities/StringUtils.cs
+++ b/src/Proton/Utilities/StringUtils.cs
@@ -163,7 +163,7 @@ namespace Apache.Qpid.Proton.Utilities
             return "\"\"";
          }
 
-         StringBuilder str = new StringBuilder();
+         StringBuilder str = new();
          str.Append('"');
 
          long byteToRead = buffer.ReadableBytes;
@@ -174,7 +174,7 @@ namespace Apache.Qpid.Proton.Utilities
          {
             sbyte c = buffer.GetByte(i);
 
-            if (c > 31 && c < 127 && c != '\\')
+            if (c is > 31 and < 127 and not (sbyte)'\\')
             {
                if (size + 1 <= quotedStringLimit)
                {
diff --git a/test/Proton.Client.Tests/Client/Implementation/ClientConnectionTest.cs b/test/Proton.Client.Tests/Client/Implementation/ClientConnectionTest.cs
index 599aa7b..5fe11bb 100644
--- a/test/Proton.Client.Tests/Client/Implementation/ClientConnectionTest.cs
+++ b/test/Proton.Client.Tests/Client/Implementation/ClientConnectionTest.cs
@@ -239,7 +239,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
       }
 
       [Test]
-      public void TestCreateConnectionWithUnconfiguredContainerId()
+      public void TestCreateConnectionWithNotConfiguredContainerId()
       {
          using (ProtonTestServer peer = new ProtonTestServer(TestServerOptions(), loggerFactory))
          {
@@ -444,7 +444,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
       }
 
       [Test]
-      public void TestConnectionCloseGetsResponseWithErrorDoesNotThrowUntimedGet()
+      public void TestConnectionCloseGetsResponseWithErrorDoesNotThrowNonTimedGet()
       {
          DoTestConnectionCloseGetsResponseWithErrorDoesNotThrow(false);
       }
diff --git a/test/Proton.Client.Tests/Client/Implementation/ClientReceiverTest.cs b/test/Proton.Client.Tests/Client/Implementation/ClientReceiverTest.cs
index 935f4ff..f2e9106 100644
--- a/test/Proton.Client.Tests/Client/Implementation/ClientReceiverTest.cs
+++ b/test/Proton.Client.Tests/Client/Implementation/ClientReceiverTest.cs
@@ -2511,7 +2511,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             try
             {
                _ = delivery.RawInputStream;
-               Assert.Fail("Should not be able to use the inputstream once message is requested");
+               Assert.Fail("Should not be able to use the input stream once message is requested");
             }
             catch (ClientIllegalStateException)
             {
@@ -2567,7 +2567,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             try
             {
                _ = delivery.RawInputStream;
-               Assert.Fail("Should not be able to use the inputstream once message is requested");
+               Assert.Fail("Should not be able to use the input stream once message is requested");
             }
             catch (ClientIllegalStateException)
             {
diff --git a/test/Proton.Client.Tests/Client/Implementation/ClientReconnectTest.cs b/test/Proton.Client.Tests/Client/Implementation/ClientReconnectTest.cs
index cb11c20..5ca9531 100644
--- a/test/Proton.Client.Tests/Client/Implementation/ClientReconnectTest.cs
+++ b/test/Proton.Client.Tests/Client/Implementation/ClientReconnectTest.cs
@@ -717,7 +717,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
       }
 
       [Test]
-      public void TestConnectionReportsFailedAfterMaxinitialReconnectAttempts()
+      public void TestConnectionReportsFailedAfterMaxInitialReconnectAttempts()
       {
          using (ProtonTestServer peer = new ProtonTestServer(loggerFactory))
          {
@@ -774,7 +774,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
       }
 
       [Test]
-      public void TestConnectionReportsFailedAfterMaxinitialReconnectAttemptsWithBackOff()
+      public void TestConnectionReportsFailedAfterMaxInitialReconnectAttemptsWithBackOff()
       {
          using (ProtonTestServer peer = new ProtonTestServer(loggerFactory))
          {
diff --git a/test/Proton.Client.Tests/Client/Implementation/ClientStreamSenderTest.cs b/test/Proton.Client.Tests/Client/Implementation/ClientStreamSenderTest.cs
index 06eb984..cc4fa31 100644
--- a/test/Proton.Client.Tests/Client/Implementation/ClientStreamSenderTest.cs
+++ b/test/Proton.Client.Tests/Client/Implementation/ClientStreamSenderTest.cs
@@ -583,7 +583,7 @@ namespace Apache.Qpid.Proton.Client.Implementation
             }
             catch (ClientUnsupportedOperationException)
             {
-               // Expecteds
+               // Expected
             }
 
             message.Abort();
diff --git a/test/Proton.Client.Tests/Client/TestSupport/Wait.cs b/test/Proton.Client.Tests/Client/TestSupport/Wait.cs
index 2c508c1..c9709b3 100644
--- a/test/Proton.Client.Tests/Client/TestSupport/Wait.cs
+++ b/test/Proton.Client.Tests/Client/TestSupport/Wait.cs
@@ -24,8 +24,8 @@ namespace Apache.Qpid.Proton.Client.TestSupport
 {
    public static class Wait
    {
-      public static readonly int MAX_WAIT_MILLIS = 30 * 1000;
-      public static readonly int SLEEP_MILLIS = 200;
+      public static readonly int MAX_WAIT_MILLISECONDS = 30 * 1000;
+      public static readonly int SLEEP_MILLISECONDS = 200;
       public static readonly string DEFAULT_FAILURE_MESSAGE = "Expected condition was not met";
 
       public static void AssertTrue(Func<bool> condition)
@@ -45,7 +45,7 @@ namespace Apache.Qpid.Proton.Client.TestSupport
 
       public static void AssertFalse(String failureMessage, Func<bool> condition, int duration)
       {
-         AssertTrue(failureMessage, () => !condition(), duration, SLEEP_MILLIS);
+         AssertTrue(failureMessage, () => !condition(), duration, SLEEP_MILLISECONDS);
       }
 
       public static void AssertFalse(Func<bool> condition, int duration, int sleep)
@@ -55,17 +55,17 @@ namespace Apache.Qpid.Proton.Client.TestSupport
 
       public static void AssertTrue(Func<bool> condition, int duration)
       {
-         AssertTrue(DEFAULT_FAILURE_MESSAGE, condition, duration, SLEEP_MILLIS);
+         AssertTrue(DEFAULT_FAILURE_MESSAGE, condition, duration, SLEEP_MILLISECONDS);
       }
 
       public static void AssertTrue(String failureMessage, Func<bool> condition)
       {
-         AssertTrue(failureMessage, condition, MAX_WAIT_MILLIS);
+         AssertTrue(failureMessage, condition, MAX_WAIT_MILLISECONDS);
       }
 
       public static void AssertTrue(String failureMessage, Func<bool> condition, int duration)
       {
-         AssertTrue(failureMessage, condition, duration, SLEEP_MILLIS);
+         AssertTrue(failureMessage, condition, duration, SLEEP_MILLISECONDS);
       }
 
       public static void AssertTrue(Func<bool> condition, int duration, int sleep)
@@ -85,30 +85,30 @@ namespace Apache.Qpid.Proton.Client.TestSupport
 
       public static bool WaitFor(Func<bool> condition)
       {
-         return WaitFor(condition, MAX_WAIT_MILLIS);
+         return WaitFor(condition, MAX_WAIT_MILLISECONDS);
       }
 
       public static bool WaitFor(Func<bool> condition, int duration)
       {
-         return WaitFor(condition, duration, SLEEP_MILLIS);
+         return WaitFor(condition, duration, SLEEP_MILLISECONDS);
       }
 
-      public static bool WaitFor(Func<bool> condition, long durationMillis, int sleepMillis)
+      public static bool WaitFor(Func<bool> condition, long durationMilliseconds, int sleepMilliseconds)
       {
          try
          {
             Stopwatch watch = Stopwatch.StartNew();
             bool conditionSatisfied = condition();
 
-            while (!conditionSatisfied && watch.ElapsedMilliseconds < durationMillis)
+            while (!conditionSatisfied && watch.ElapsedMilliseconds < durationMilliseconds)
             {
-               if (sleepMillis == 0)
+               if (sleepMilliseconds == 0)
                {
                   Thread.Yield();
                }
                else
                {
-                  Thread.Sleep(sleepMillis);
+                  Thread.Sleep(sleepMilliseconds);
                }
 
                conditionSatisfied = condition();
diff --git a/test/Proton.Tests/Engine/Implementation/ProtonTransactionControllerTest.cs b/test/Proton.Tests/Engine/Implementation/ProtonTransactionControllerTest.cs
index e6ad48f..70b0b61 100644
--- a/test/Proton.Tests/Engine/Implementation/ProtonTransactionControllerTest.cs
+++ b/test/Proton.Tests/Engine/Implementation/ProtonTransactionControllerTest.cs
@@ -600,7 +600,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
 
          Assert.IsTrue(declareFailure);
          Assert.AreSame(txn, failedTxn);
-         Assert.AreEqual(TransactionState.DelcareFailed, txn.State);
+         Assert.AreEqual(TransactionState.DeclareFailed, txn.State);
          Assert.AreEqual(failureError, txn.Error);
          Assert.AreEqual(0, CountElements(txnController.Transactions));
 
@@ -1316,7 +1316,7 @@ namespace Apache.Qpid.Proton.Engine.Implementation
          ITransaction<ITransactionController> txn = txnController.Declare();
 
          Assert.IsNotNull(txn.Error);
-         Assert.AreEqual(TransactionState.DelcareFailed, txn.State);
+         Assert.AreEqual(TransactionState.DeclareFailed, txn.State);
          Assert.AreEqual(failureError, txn.Error);
          Assert.AreEqual(0, CountElements(txnController.Transactions));
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org