/// <summary>
        /// Creates Facebook event object by parsing JSON data from content of HTTP message.
        /// </summary>
        /// <param name="msgJson">JSON data from content of HTTP message.</param>
        /// <param name="exportObject">For referencing FacebookSnooperExport from Facebook object.</param>
        /// <param name="index">Index to array inside JSON data where we can relevant data.</param>
        /// <returns>Parsed event object from Facebook conversation.</returns>
        private static FacebookEventTyping GetFacebookEventTyping(JObject msgJson, SnooperExportBase exportObject, int index)
        {
            var parsedToken = msgJson["ms"][index];
            var fbEvent     = new FacebookEventTyping(exportObject)
            {
                EventType = (string)parsedToken["type"],
                UserId    = (ulong)msgJson["u"],
                ThreadId  = (ulong)parsedToken["thread_fbid"],
                SenderId  = (ulong)parsedToken["from"]
            };

            return(fbEvent);
        }
        public void AddProperyPersistenceObjectTest()
        {
            var dbx     = this.WindsorContainer.Resolve <NetfoxDbContext>();
            var exports = this.WindsorContainer.Resolve <VirtualizingObservableDBSetPagedCollection <SnooperExportBase> >();

            var exportFacebook = new FacebookSnooperExport();
            var exportObject   = new FacebookEventTyping(exportFacebook);

            exportObject.ExportSources.Add(new EmailExportResult());
            exportFacebook.OnBeforeProtocolParsing();
            exportFacebook.OnAfterProtocolParsing();
            exportFacebook.OnBeforeDataExporting();
            exportFacebook.AddExportObject(exportObject);
            exportFacebook.OnAfterDataExporting();
            dbx.SnooperExports.Add(exportFacebook);
            dbx.SaveChanges();

            Assert.AreEqual(1, exports.Count);
            Assert.AreEqual(1, dbx.SnooperExports.Count());
            Assert.AreEqual(1, dbx.SnooperExportedObjects.Count());
        }