Пример #1
0
        public async Task Async_Caching_SendInvalidEvents_Throws()
        {
            var client = new KeenClient(SettingsEnv, new EventCacheMemory());

            if (UseMocks)
            {
                client.Event = new EventMock(SettingsEnv,
                                             addEvents: new Func <JObject, IProjectSettings, IEnumerable <CachedEvent> >((e, p) =>
                {
                    var err = e.SelectToken("$.AddEventTest[2]") as JObject;
                    if (null == err)
                    {
                        throw new Exception("Unexpected error, test data not found");
                    }

                    return(new List <CachedEvent>()
                    {
                        new CachedEvent("AddEventTest", e)
                    });
                }));
            }

            object invalidEvent = new ExpandoObject();

            ((IDictionary <string, object>)invalidEvent).Add("$" + new string('.', 260), "AValue");

            var events = (from i in Enumerable.Range(1, 2)
                          select new { AProperty = "AValue" + i }).ToList <object>();

            events.Add(invalidEvent);

            await client.AddEventsAsync("AddEventTest", events);

            await client.SendCachedEventsAsync();
        }
Пример #2
0
        public async Task Async_AddEvents_Success()
        {
            var client = new KeenClient(SettingsEnv);

            if (UseMocks)
            {
                client.Event = new EventMock(SettingsEnv,
                                             addEvents: new Func <JObject, IProjectSettings, IEnumerable <CachedEvent> >((e, p) =>
                {
                    Assert.AreEqual(p, SettingsEnv, "Unexpected settings object");
                    Assert.AreEqual(e.Property("AddEventTest").Value.AsEnumerable().Count(), 3, "Expected exactly 3 collection members");
                    return(new List <CachedEvent>());
                }));
            }

            var events = from e in Enumerable.Range(1, 3)
                         select new { AProperty = "Value" + e };

            await client.AddEventsAsync("AddEventTest", events);
        }
Пример #3
0
 public async Task Async_AddEvents_NullCollection_Throws()
 {
     var client = new KeenClient(SettingsEnv);
     await client.AddEventsAsync("AddEventTest", null);
 }
Пример #4
0
        public void Async_AddEvents_NullCollection_Throws()
        {
            var client = new KeenClient(SettingsEnv);

            Assert.ThrowsAsync <Keen.Core.KeenException>(() => client.AddEventsAsync("AddEventTest", null));
        }