public void QueryRequestTest3() { var query = DynamoExpression.FromExpression(Expression.Eq("name", "sortable")); var request = new DynamoQuery { TableName = "Libraries", KeyConditionExpression = query.Text, ExpressionAttributeValues = query.AttributeValues, ExpressionAttributeNames = query.AttributeNames, Limit = 1 }; Assert.Equal(@"{ ""TableName"": ""Libraries"", ""KeyConditionExpression"": ""#name = :v0"", ""ExpressionAttributeNames"": { ""#name"": ""name"" }, ""ExpressionAttributeValues"": { "":v0"": { ""S"": ""sortable"" } }, ""Limit"": 1 }", request.ToJson().ToString()); }
public void Function1() { var de = DynamoExpression.Conjunction( Func("attribute_exists", new Symbol("name")), Gt("price", 5) ); Assert.Equal("attribute_exists(#name) and price > :v0", de.Text); Assert.Equal("name", de.AttributeNames["#name"].ToString()); }
public void Expression6() { var de = DynamoExpression.Conjunction(Eq("name", "banana"), Eq("active", 1)); Assert.Equal("#name = :v0 and active = :v1", de.Text); Assert.Equal("banana", de.AttributeValues[":v0"].Value); Assert.Equal(1, de.AttributeValues[":v1"].Value); Assert.Equal("name", de.AttributeNames["#name"].ToString()); }
public void Expression2() { var expression = And(Eq("category", "shoes"), NotEq("price", 5)); var de = DynamoExpression.FromExpression(expression); Assert.Equal("category = :v0 and price <> :v1", de.Text); Assert.Equal("shoes", de.AttributeValues[":v0"].Value); Assert.Equal(5, de.AttributeValues[":v1"].Value); }
public void Function2() { var de = DynamoExpression.Conjunction( Func("exists", new Symbol("category")), Lt("price", 25) ); Assert.Equal("attribute_exists(category) and price < :v0", de.Text); Assert.Equal(25, de.AttributeValues[":v0"].Value); }
public void Conjuction1() { var expression = Conjunction(Eq("category", "shoes"), Gt("price", 5), IsNull("deleted")); var de = DynamoExpression.FromExpression(expression); Assert.Equal("category = :v0 and price > :v1 and attribute_not_exists(deleted)", de.Text); Assert.Equal("shoes", de.AttributeValues[":v0"].Value); Assert.Equal(5, de.AttributeValues[":v1"].Value); }
public void Expression3() { var expression = And(Eq("category", "shoes"), Between("price", Constant(5), Constant(10))); var de = DynamoExpression.FromExpression(expression); Assert.Equal("category = :v0 and price between :v1 and :v2", de.Text); Assert.Equal("shoes", de.AttributeValues[":v0"].Value); Assert.Equal(5L, de.AttributeValues[":v1"].Value); Assert.Equal(10L, de.AttributeValues[":v2"].Value); }
public void Function3() { var de = DynamoExpression.Conjunction( Exists("category"), NotExists("soldOut"), Lt("price", 25) ); Assert.Equal("attribute_exists(category) and attribute_not_exists(soldOut) and price < :v0", de.Text); Assert.Equal(25, de.AttributeValues[":v0"].Value); }