public void MostRecentThreeShouldReturnThreeMessages()
        {
            ChatHistory history = new ChatHistory();

            history.AddMessage(new ChatMessage("0", "MSA"));             // first
            history.AddMessage(new ChatMessage("1", "MSA"));             // second
            history.AddMessage(new ChatMessage("2", "MSA"));             // third
            history.AddMessage(new ChatMessage("3", "MSA"));             // fourth

            List <ChatMessage> recentMessages = history.MostRecent(3);

            Assert.AreEqual(3, recentMessages.Count);
        }
        public void MostRecentThreeShouldReturnThreeMostRecentMessages()
        {
            ChatHistory history = new ChatHistory();

            history.AddMessage(new ChatMessage("0", "MSA"));             // first
            history.AddMessage(new ChatMessage("1", "MSA"));             // second
            history.AddMessage(new ChatMessage("2", "MSA"));             // third
            history.AddMessage(new ChatMessage("3", "MSA"));             // fourth

            List <ChatMessage> recentMessages = history.MostRecent(3);

            Assert.That(recentMessages[0].Equals(new ChatMessage("1", "MSA")));
            Assert.That(recentMessages[1].Equals(new ChatMessage("2", "MSA")));
            Assert.That(recentMessages[2].Equals(new ChatMessage("3", "MSA")));
        }
Exemple #3
0
        public void TestAddDelete()
        {
            // 数据存储在文件中,每次运行只测试新加消息。
            using ChatHistory ch = new ChatHistory(".", 0, -1, -1);
            List <long> addedIds = new List <long>();

            for (int i = 0; i < 10; ++i)
            {
                addedIds.Add(ch.AddMessage("" + i, "" + i));
            }
            List <long> deletedIds = new List <long>();

            foreach (long id in addedIds)
            {
                if (id % 2 == 0)
                {
                    continue;
                }
                ch.DeleteMessage(id);
                deletedIds.Add(id);
            }

            for (int i = 0; i < addedIds.Count; ++i)
            {
                long id = addedIds[i];
                List <ChatHistoryMessage> msgs = ch.ReadMessage(id, 1);
                Assert.IsTrue(msgs.Count == 1);
                ChatHistoryMessage msg = msgs[^ 1];
        public void MostRecentZeroShouldReturnEmptyList()
        {
            ChatHistory history = new ChatHistory();

            history.AddMessage(message);

            Assert.That(history.MostRecent(0).Count == 0);
        }
        public void MostRecentShouldNotReturnMoreMessagesThanItHas()
        {
            ChatHistory history = new ChatHistory();

            history.AddMessage(new ChatMessage("0", "MSA"));             // first

            List <ChatMessage> recents = history.MostRecent(3);

            Assert.AreEqual(recents.Count, 1);
        }
        public void AddedMessagesShouldBeInHistory()
        {
            ChatHistory history = new ChatHistory();

            history.AddMessage(message);

            bool containsMessage = ContainsMessage(history, new ChatMessage(message.message, "MSA"));

            Assert.IsTrue(containsMessage);
        }
        public void AddEmptyMessageThrowsArgumentException()
        {
            ChatHistory history = new ChatHistory();

            try {
                history.AddMessage(new ChatMessage("", "MSA"));
                Assert.Fail("didn't throw ArgumentException when adding a message with an empty body");
            }
            catch (System.ArgumentException e) {
                Assert.Pass(e.Message);
            }
        }