コード例 #1
0
        public void ReorderWithNoSpecificItemSetsValuesProperly()
        {
            using (var dbContext = NewDbTestContext())
                using (var connection = SqlConnections.NewByKey("Serenity"))
                {
                    foreach (var data in new[] { /* input in id order, expected output in same order */
                        new Tuple <int[], int[]>(new[] { 0, 0, 0, 0, 0 }, new[] { 1, 2, 3, 4, 5 }),
                        new Tuple <int[], int[]>(new[] { 1, 5, 3, 0, 4 }, new[] { 2, 5, 3, 1, 4 }),
                        new Tuple <int[], int[]>(new[] { 1, 2, 2, 9, 0 }, new[] { 2, 3, 4, 5, 1 }),
                        new Tuple <int[], int[]>(new[] { 0, 0, 3, 1, 4 }, new[] { 1, 2, 4, 3, 5 })
                    })
                    {
                        new SqlDelete(DisplayOrderRow.TableName)
                        .Execute(connection, ExpectedRows.Ignore);

                        for (var i = 0; i < data.Item1.Length; i++)
                        {
                            new SqlInsert(DisplayOrderRow.TableName)
                            .Set(fld.GroupID, 1)
                            .Set(fld.IsActive, 1)
                            .Set(fld.DisplayOrder, data.Item1[i])
                            .Execute(connection);
                        }

                        DisplayOrderHelper.ReorderValues(connection, DisplayOrderRow.Instance);

                        var row    = new DisplayOrderRow();
                        var actual = new SqlQuery().From(row).Select(fld.DisplayOrder).OrderBy(fld.ID)
                                     .List(connection, row).Select(x => x.DisplayOrder.Value).ToArray();

                        Assert.Equal(data.Item2, actual);
                    }
                }
        }
コード例 #2
0
ファイル: DisplayOrderRow.cs プロジェクト: fzhenmei/Serenity
 /// <summary>Initializes field definitions</summary>
 static DisplayOrderRow()
 {
     Fields = new RowFields();
     Instance = new DisplayOrderRow();
 }
コード例 #3
0
        public void ReorderWithNoSpecificItemSetsValuesProperly()
        {
            using (var dbContext = NewDbTestContext())
            using (var connection = SqlConnections.NewByKey("Serenity"))
            {
                foreach (var data in new[] { /* input in id order, expected output in same order */
                    new Tuple<int[], int[]>(new[] { 0, 0, 0, 0, 0 }, new[] { 1, 2, 3, 4, 5 }),
                    new Tuple<int[], int[]>(new[] { 1, 5, 3, 0, 4 }, new[] { 2, 5, 3, 1, 4 }),
                    new Tuple<int[], int[]>(new[] { 1, 2, 2, 9, 0 }, new[] { 2, 3, 4, 5, 1 }),
                    new Tuple<int[], int[]>(new[] { 0, 0, 3, 1, 4 }, new[] { 1, 2, 4, 3, 5 })
                })
                {
                    new SqlDelete(DisplayOrderRow.TableName)
                        .Execute(connection, ExpectedRows.Ignore);

                    for (var i = 0; i < data.Item1.Length; i++)
                    {
                        new SqlInsert(DisplayOrderRow.TableName)
                            .Set(fld.GroupID, 1)
                            .Set(fld.IsActive, 1)
                            .Set(fld.DisplayOrder, data.Item1[i])
                            .Execute(connection);
                    }

                    DisplayOrderHelper.ReorderValues(connection, DisplayOrderRow.Instance);

                    var row = new DisplayOrderRow();
                    var actual = new SqlQuery().From(row).Select(fld.DisplayOrder).OrderBy(fld.ID)
                        .List(connection, row).Select(x => x.DisplayOrder.Value).ToArray();

                    Assert.Equal(data.Item2, actual);
                }
            }
        }
コード例 #4
0
ファイル: DisplayOrderRow.cs プロジェクト: testpulse/Serenity
 /// <summary>Initializes field definitions</summary>
 static DisplayOrderRow()
 {
     Fields   = new RowFields();
     Instance = new DisplayOrderRow();
 }