public void RemoveObserverInternal()
        {
            // call OnStartServer so that observers dict is created
            identity.StartServer();

            // add an observer connection
            INetworkConnection connection = Substitute.For <INetworkConnection>();

            identity.observers.Add(connection);

            INetworkConnection connection2 = Substitute.For <INetworkConnection>();

            // RemoveObserverInternal with invalid connection should do nothing
            identity.RemoveObserverInternal(connection2);
            Assert.That(identity.observers, Is.EquivalentTo(new[] { connection }));

            // RemoveObserverInternal with existing connection should remove it
            identity.RemoveObserverInternal(connection);
            Assert.That(identity.observers, Is.Empty);
        }