Esempio n. 1
0
 public DaemonService(PeerBus bus, IOntologyLog ontology, ILogStore logs, IRecordStore records,
                      RecordEvents events, IOptionsMonitor <WebServerOptions> options, ILogger <DaemonService> logger)
 {
     _bus      = bus;
     _ontology = ontology;
     _logs     = logs;
     _records  = records;
     _events   = events;
     _options  = options;
     _logger   = logger;
 }
Esempio n. 2
0
        public void TestCrudEvents()
        {
            var recorder = new RecordEvents <int, string>();
            var test     = new LurchTable <int, string>(LurchTableOrder.Access, 3, 1103, 10, 10, EqualityComparer <int> .Default);

            test.ItemAdded   += recorder.ItemAdded;
            test.ItemUpdated += recorder.ItemUpdated;
            test.ItemRemoved += recorder.ItemRemoved;
            test[1]           = "a";
            Assert.AreEqual("a", recorder.LastAdded.Value);
            test[2] = "b";
            Assert.AreEqual("b", recorder.LastAdded.Value);
            test[3] = "c";
            Assert.AreEqual("c", recorder.LastAdded.Value);
            Assert.AreEqual(3, test.Count);
            Assert.AreEqual("b", test[2]); //access moves to front..
            test[4] = "d";
            Assert.AreEqual("d", recorder.LastAdded.Value);
            Assert.AreEqual("a", recorder.LastRemove.Value);
            test[5] = "e";
            Assert.AreEqual("e", recorder.LastAdded.Value);
            Assert.AreEqual("c", recorder.LastRemove.Value);
            test[2] = "B";
            Assert.AreEqual("B", recorder.LastUpdate.Value);
            test[6] = "f";
            Assert.AreEqual("f", recorder.LastAdded.Value);
            Assert.AreEqual("d", recorder.LastRemove.Value);

            Assert.AreEqual(3, test.Count); // still 3 items
            string value;

            Assert.IsTrue(test.TryRemove(5, out value));
            Assert.AreEqual("e", value);
            Assert.AreEqual("e", recorder.LastRemove.Value);

            Assert.AreEqual("B", test.Dequeue().Value);
            Assert.AreEqual("f", test.Dequeue().Value);
            Assert.AreEqual(0, test.Count);
        }