Exemplo n.º 1
0
        protected async Task <IBoardPostCollection> ReadThread(string resourceFile, ThreadLink link = null, int?firstPosts = null)
        {
            var jsonStr = await TestResources.ReadTestTextFile(resourceFile);

            var dto = JsonConvert.DeserializeObject <BoardEntity2>(jsonStr);

            if (firstPosts != null)
            {
                dto.Threads[0].Posts = dto.Threads[0].Posts.Take(firstPosts.Value).ToArray();
            }
            Assert.IsNotNull(dto, "dto != null");
            var parser = _provider.FindNetworkDtoParser <ThreadData, IBoardPostCollectionEtag>();

            Assert.IsNotNull(parser, "parser != null");
            var param = new ThreadData()
            {
                Link = link ?? new ThreadLink()
                {
                    Board = "mobi", Engine = MakabaConstants.MakabaEngineId, OpPostNum = 1153568
                },
                Etag       = "##etag##",
                LoadedTime = DateTimeOffset.Now,
                Entity     = dto
            };

            var collection = parser.Parse(param);

            return(collection);
        }
Exemplo n.º 2
0
        public async Task BoardReferenceUploadDataBenchmark()
        {
            const int iterations = 10;
            var       boards     = await TestResources.LoadBoardReferencesFromResource();

            var parser = _provider.FindNetworkDtoParser <MobileBoardInfoCollection, IList <IBoardReference> >();
            var result = parser.Parse(boards);

            var st = new Stopwatch();

            st.Start();
            for (var i = 0; i < iterations; i++)
            {
                await _store.UpdateReferences(result, true);
            }
            st.Stop();
            Logger.LogMessage("Время загрузки полного списка досок в базу: {0:F2} сек. всего, {1:F2} мс на итерацию", st.Elapsed.TotalSeconds, st.Elapsed.TotalMilliseconds / iterations);
        }
Exemplo n.º 3
0
        private async Task <IBoardPostCollection> ReadThread(string resourceFile)
        {
            var jsonStr = await ReadTestTextFile(resourceFile);

            var dto    = JsonConvert.DeserializeObject <BoardEntity2>(jsonStr);
            var parser = _provider.FindNetworkDtoParser <ThreadData, IBoardPostCollectionEtag>();
            var param  = new ThreadData()
            {
                Link = new ThreadLink()
                {
                    Board = "mobi", Engine = MakabaConstants.MakabaEngineId, OpPostNum = 1153568
                },
                Etag       = "##etag##",
                LoadedTime = DateTimeOffset.Now,
                Entity     = dto
            };

            var collection = parser.Parse(param);

            return(collection);
        }