use of com.cadenzauk.siesta.model.SalespersonRow in project siesta by cadenzauk.
the class ExpectingSelectTest method testSelect.
@ParameterizedTest
@MethodSource("argsForSelect")
void testSelect(BiFunction<ExpectingSelect<SalespersonRow>, Alias<SalespersonRow>, Select<?>> method, String expectedSql) {
MockitoAnnotations.initMocks(this);
Database database = testDatabase(new AnsiDialect());
Alias<SalespersonRow> alias = database.table(SalespersonRow.class).as("s");
method.apply(database.from(alias), alias).list(transaction);
verify(transaction).query(sql.capture(), args.capture(), rowMapper.capture());
assertThat(sql.getValue(), is("select " + expectedSql + " from SIESTA.SALESPERSON s"));
assertThat(args.getValue(), arrayWithSize(0));
}
use of com.cadenzauk.siesta.model.SalespersonRow in project siesta by cadenzauk.
the class InProjectionExpectingCommaTest method testComma.
@ParameterizedTest
@MethodSource("argsForComma")
void testComma(BiFunction<InProjectionExpectingComma1<String>, Alias<SalespersonRow>, Select<?>> method, String expectedSql, Object[] expectedArgs) {
MockitoAnnotations.initMocks(this);
Database database = testDatabase(new AnsiDialect());
Alias<SalespersonRow> alias = database.table(SalespersonRow.class).as("s");
InProjectionExpectingComma1<String> sut = database.from(alias).select(SalespersonRow::firstName, "name");
method.apply(sut, alias).list(transaction);
verify(transaction).query(sql.capture(), args.capture(), rowMapper.capture());
Pattern pattern = Pattern.compile("select s.FIRST_NAME as name, " + expectedSql + " from SIESTA.SALESPERSON s");
assertThat(pattern.matcher(sql.getValue()).matches(), is(true));
assertThat(args.getValue(), is(expectedArgs));
}
use of com.cadenzauk.siesta.model.SalespersonRow in project siesta by cadenzauk.
the class DatabaseIntegrationTestH2 method ormDelete.
@Test
void ormDelete() {
Database database = testDatabase(dataSource);
SalespersonRow salespersonRow = aRandomSalesperson();
database.insert(salespersonRow);
int count = countOf(database, salespersonRow);
assertThat(count, is(1));
database.delete(salespersonRow);
count = countOf(database, salespersonRow);
assertThat(count, is(0));
}
use of com.cadenzauk.siesta.model.SalespersonRow in project siesta by cadenzauk.
the class BooleanExpressionTest method testAnd.
@ParameterizedTest
@MethodSource("argsForAnd")
void testAnd(BiFunction<Alias<SalespersonRow>, BooleanExpression, BooleanExpression> method, String expectedSql) {
MockitoAnnotations.initMocks(this);
Database database = testDatabase(new AnsiDialect());
Alias<SalespersonRow> alias = database.table(SalespersonRow.class).as("s");
Scope scope = new Scope(database, alias);
when(sut.precedence()).thenReturn(Precedence.UNARY);
method.apply(alias, sut);
verify(sut).appendAnd(appendArg.capture());
assertThat(appendArg.getValue().sql(scope), is(expectedSql));
}
use of com.cadenzauk.siesta.model.SalespersonRow in project siesta by cadenzauk.
the class BooleanExpressionTest method testOr.
@ParameterizedTest
@MethodSource("argsForOr")
void testOr(BiFunction<Alias<SalespersonRow>, BooleanExpression, BooleanExpression> method, String expectedSql) {
MockitoAnnotations.initMocks(this);
Database database = testDatabase(new AnsiDialect());
Alias<SalespersonRow> alias = database.table(SalespersonRow.class).as("s");
Scope scope = new Scope(database, alias);
when(sut.precedence()).thenReturn(Precedence.UNARY);
method.apply(alias, sut);
verify(sut).appendOr(appendArg.capture());
assertThat(appendArg.getValue().sql(scope), is(expectedSql));
}
Aggregations