Esempio n. 1
0
        public void GetByLogsSomeAttributesWithDuplicateValues()
        {
            var registry = CreateLogRegistry();
            var entry    = registry.AddLog(DateTime.Now.ToString(), "testmsg1");

            Assert.That(entry, Is.Not.Null);

            registry.AddValueToLog(entry, LogAttribute.Level, "cookie");

            entry = registry.AddLog(DateTime.Now.ToString(), "testmsg2");
            Assert.That(entry, Is.Not.Null);

            registry.AddValueToLog(entry, LogAttribute.Level, "cookie");

            entry = registry.AddLog(DateTime.Now.ToString(), "testmsg3");
            Assert.That(entry, Is.Not.Null);

            var logs = registry.GetBy(LogAttribute.Level);

            Assert.That(logs, Is.Not.ExEmpty());

            Assert.That(logs.Select(group => group.Key), HasEx.ExMember("cookie").And.ExExactly(1).Items);
            Assert.That(logs.Concat().Select(log => log.Message), IsEx.ExSubsetOf(new string[] { "testmsg1", "testmsg2" }));
        }