public void TestGetMessageSizes() { const string welcomeMessage = "+OK"; const string okUsername = "******"; const string okPassword = "******"; const string messageListAccepted = "+OK 2 messages (320 octets)"; const string messageSize1 = "1 120"; const string messageSize2 = "2 200"; const string messageListEnd = "."; const string serverResponses = welcomeMessage + "\r\n" + okUsername + "\r\n" + okPassword + "\r\n" + messageListAccepted + "\r\n" + messageSize1 + "\r\n" + messageSize2 + "\r\n" + messageListEnd + "\r\n"; Stream inputStream = new MemoryStream(Encoding.ASCII.GetBytes(serverResponses)); Stream outputStream = new MemoryStream(); Pop3Client client = new Pop3Client(); client.Connect(new CombinedStream(inputStream, outputStream)); client.Authenticate("test", "test"); // Message 9 should have size 200 List<int> messageSizes = client.GetMessageSizes(); // The list should have size 2 Assert.AreEqual(2, messageSizes.Count); // The first entry should have size 120 Assert.AreEqual(120, messageSizes[0]); // The second entry should have size 200 Assert.AreEqual(200, messageSizes[1]); }