// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"assertEquals\(([^,]+),\s(.+)\);").unwrap();
let string = "package com.gdit.fwa.informant.model.definitions;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
import com.gdit.fwa.informant.model.base.definition.RelationalOperator;
import com.gdit.fwa.informant.model.base.definition.SqlConstants;
@SuppressWarnings(\"static-method\")
public class RelationalOperatorTest {
@Test
public void testGetRelOperatorSql() {
assertEquals(RelationalOperator.DEFAULT.getRelOperatorSql(), \"\");
assertEquals(RelationalOperator.IS.getRelOperatorSql(), \"IS\");
assertEquals(RelationalOperator.IS_NOT.getRelOperatorSql(), \"IS NOT\");
assertEquals(RelationalOperator.EQUAL.getRelOperatorSql(), \"=\");
assertEquals(RelationalOperator.NOT_EQUAL.getRelOperatorSql(), \"<>\");
assertEquals(RelationalOperator.GREATER_THAN.getRelOperatorSql(), \">\");
assertEquals(RelationalOperator.LESS_THAN.getRelOperatorSql(), \"<\");
assertEquals(RelationalOperator.GREATER_EQUAL.getRelOperatorSql(), \">=\");
assertEquals(RelationalOperator.LESS_EQUAL.getRelOperatorSql(), \"<=\");
assertEquals(RelationalOperator.BETWEEN.getRelOperatorSql(), \"BETWEEN\");
assertEquals(RelationalOperator.IN.getRelOperatorSql(), \"IN\");
assertEquals(RelationalOperator.NOT_IN.getRelOperatorSql(), \"NOT IN\");
assertEquals(RelationalOperator.LIKE.getRelOperatorSql(), \"LIKE\");
assertEquals(RelationalOperator.NOT_LIKE.getRelOperatorSql(), \"NOT LIKE\");
assertEquals(RelationalOperator.SOUNDS_LIKE.getRelOperatorSql(), \"SOUNDS LIKE\");
}
@Test
public void testGetRelationalOperator() {
assertEquals(RelationalOperator.DEFAULT, RelationalOperator.getRelationalOperator(\"\"));
assertEquals(RelationalOperator.IS, RelationalOperator.getRelationalOperator(\"IS\"));
assertEquals(RelationalOperator.IS_NOT, RelationalOperator.getRelationalOperator(\"IS NOT\"));
assertEquals(RelationalOperator.EQUAL, RelationalOperator.getRelationalOperator(\"=\"));
assertEquals(RelationalOperator.NOT_EQUAL, RelationalOperator.getRelationalOperator(\"<>\"));
assertEquals(RelationalOperator.GREATER_THAN, RelationalOperator.getRelationalOperator(\">\"));
assertEquals(RelationalOperator.LESS_THAN, RelationalOperator.getRelationalOperator(\"<\"));
assertEquals(RelationalOperator.GREATER_EQUAL, RelationalOperator.getRelationalOperator(\">=\"));
assertEquals(RelationalOperator.LESS_EQUAL, RelationalOperator.getRelationalOperator(\"<=\"));
assertEquals(RelationalOperator.BETWEEN, RelationalOperator.getRelationalOperator(\"BETWEEN\"));
assertEquals(RelationalOperator.IN, RelationalOperator.getRelationalOperator(\"IN\"));
assertEquals(RelationalOperator.NOT_IN, RelationalOperator.getRelationalOperator(\"NOT IN\"));
assertEquals(RelationalOperator.LIKE, RelationalOperator.getRelationalOperator(\"LIKE\"));
assertEquals(RelationalOperator.NOT_LIKE, RelationalOperator.getRelationalOperator(\"NOT LIKE\"));
assertEquals(RelationalOperator.SOUNDS_LIKE, RelationalOperator.getRelationalOperator(\"SOUNDS LIKE\"));
}
@Test
public void testRelOpEqualityFunctions() {
for (RelationalOperator relOp : RelationalOperator.values()) {
if (relOp == RelationalOperator.IS || relOp == RelationalOperator.IS_NOT){
assertEquals(relOp.isEquality(), true);
assertEquals(relOp.getNullLogicOperator(), SqlConstants.OR);
assertEquals(relOp.getNullRelOperator(), RelationalOperator.IS);
assertEquals(relOp.getRelOperatorFilterSql(), RelationalOperator.IN.getRelOperatorSql());
} else {
assertEquals(relOp.isEquality(), false);
assertEquals(relOp.getNullLogicOperator(), SqlConstants.AND);
assertEquals(relOp.getNullRelOperator(), RelationalOperator.IS_NOT);
assertEquals(relOp.getRelOperatorFilterSql(), RelationalOperator.NOT_IN.getRelOperatorSql());
}
}
}
@Test
@SuppressWarnings(\"deprecation\")
public void testGetNullValue() {
assertEquals(RelationalOperator.getNullValue(), SqlConstants.NULL);
}
@Test
public void testGetNullClause() {
for (RelationalOperator relOp : RelationalOperator.values()) {
switch (relOp) {
case IS:
case EQUAL:
assertEquals(relOp.getNullClause(\"Test\"), \" OR Test IS null\");
break;
case IS_NOT:
case NOT_EQUAL:
assertEquals(relOp.getNullClause(\"Test\"), \" AND Test IS NOT null\");
break;
default:
assertEquals(relOp.getNullClause(\"Test\"), \"\");
}
}
}
}
";
let substitution = "assertEquals\\($2\\, $1\\);";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/