MCPcopy Create free account
hub / github.com/LissaGreense/GO4SQL / validateContainExpression

Function validateContainExpression

parser/parser_test.go:1120–1147  ·  view source on GitHub ↗
(expression ast.Expression, expectedContainExpression *ast.ContainExpression)

Source from the content-addressed store, hash-verified

1118}
1119
1120func validateContainExpression(expression ast.Expression, expectedContainExpression *ast.ContainExpression) bool {
1121 actualContainExpression, actualContainExpressionIsValid := expression.(ast.ContainExpression)
1122
1123 if !actualContainExpressionIsValid {
1124 return false
1125 }
1126
1127 if expectedContainExpression.Contains != actualContainExpression.Contains {
1128 return false
1129 }
1130
1131 if actualContainExpression.Left.GetToken().Literal != expectedContainExpression.Left.GetToken().Literal &&
1132 actualContainExpression.Left.IsIdentifier() == expectedContainExpression.Left.IsIdentifier() {
1133 return false
1134 }
1135
1136 if len(expectedContainExpression.Right) != len(actualContainExpression.Right) {
1137 return false
1138 }
1139
1140 for i := 0; i < len(expectedContainExpression.Right); i++ {
1141 if expectedContainExpression.Right[i] != actualContainExpression.Right[i] {
1142 return false
1143 }
1144 }
1145
1146 return true
1147}
1148
1149func validateConditionExpression(second ast.Expression, conditionExpression *ast.ConditionExpression) bool {
1150 secondConditionExpression, secondConditionExpressionIsValid := second.(ast.ConditionExpression)

Callers 1

expressionsAreEqualFunction · 0.85

Calls 2

GetTokenMethod · 0.65
IsIdentifierMethod · 0.65

Tested by

no test coverage detected