Esempio n. 1
0
        public async Task MergeByAccountTestFullTxList()
        {
            var     txList  = _dataUtil.GetFullTxList();
            Grouper grouper = new Grouper(new MockResourceUsageDetectionService());
            var     grouped = (await grouper.ProcessNaive(Hash.Generate(), txList.Select(x => x).ToList())).Item1;
            var     s       = grouped.Select(
                x => _dataUtil.StringRepresentation(x)
                ).ToList();

            Assert.Equal(_dataUtil.StringRepresentation(_dataUtil.GetFirstGroupTxList().Select(x => x).ToList()), s[0]);
            Assert.Equal(_dataUtil.StringRepresentation(_dataUtil.GetSecondGroupTxList().Select(x => x).ToList()), s[1]);
        }
Esempio n. 2
0
        public async Task MergeByAccountTest()
        {
            var     txDic   = GetTestData();
            Grouper grouper = new Grouper(new MockResourceUsageDetectionService());
            var     grouped = (await grouper.ProcessNaive(Hash.Generate(), txDic.Values.SelectMany(x => x).ToList())).Item1;
            var     s       = grouped.Select(
                x =>
                String.Join(" ", x.OrderBy(y => _accountList.IndexOf(y.From)).ThenBy(z => _accountList.IndexOf(z.To)).Select(
                                y => String.Format("({0}-{1})", _accountList.IndexOf(y.From), _accountList.IndexOf(y.To))
                                ))
                ).OrderBy(b => b).ToList();

            //group 1: {0-1}; {2-1, 2-4}; {3-2}; {4-5}
            Assert.Equal("(0-1) (2-1) (2-4) (3-2) (4-5)", s[0]);

            //group 2: {6-7}; {8-7}
            Assert.Equal("(6-7) (8-7)", s[1]);

            //group 3: {9-10}; {10-11}
            Assert.Equal("(9-10) (10-11)", s[2]);
        }