public void CanPresentTotalCount() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 2, 1); Assert.Equal(7, cursor.TotalCount); Assert.Equal(4, cursor.Pages); } }
public void CanListFields() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 10, 1); var r = cursor.ToArray<dynamic>(); Assert.Equal(new[] { "id", "name" }, r[0].Columns); } }
public void CanUseParameters() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users WHERE [id]>@0 ORDER BY [id]", 10, 1, 1); var r = cursor.ToArray<dynamic>(); Assert.Equal(2, r[0]["id"]); Assert.Equal("bob", r[0]["name"]); } }
public void IsAccessibleByDynamicHelper() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 10, 1); var r = cursor.FirstOrDefault<dynamic>(); Assert.Equal("alice", DynamicHelper.GetValue("name", r)); Assert.Equal("alice", DynamicHelper.GetValue("Name", r)); } }
public void CanGetResultByIndexes() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 10, 1); var r = cursor.ToArray<dynamic>(); Assert.Equal(1, r[0]["id"]); Assert.Equal("alice", r[0]["name"]); Assert.Equal(1, r[0][0]); Assert.Equal("alice", r[0][1]); } }
public void CanGetResultByProperty() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 10, 1); var r = cursor.ToArray<dynamic>(); Assert.Equal(1, r[0].Id); Assert.Equal("alice", r[0].Name); Assert.Equal(2, r[1].Id); Assert.Equal("bob", r[1].Name); Assert.Equal(3, r[2].Id); Assert.Equal("cecil", r[2].Name); } }
public void CanPageResults() { using(var con = CreateConnection()) { con.Open(); var cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 2, 1); var r = cursor.ToArray<dynamic>(); Assert.Equal(2, r.Length); Assert.Equal("alice", r[0].Name); Assert.Equal("bob", r[1].Name); cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 2, 2); r = cursor.ToArray<dynamic>(); Assert.Equal(2, r.Length); Assert.Equal("cecil", r[0].Name); Assert.Equal("dave", r[1].Name); cursor = new ServerSideSqlCursor(con, "SELECT * FROM Users ORDER BY [id]", 2, 3); r = cursor.ToArray<dynamic>(); Assert.Equal(2, r.Length); Assert.Equal("eve", r[0].Name); Assert.Equal("fergie", r[1].Name); } }