use of org.cactoos.map.MapEntry in project cactoos-jdbc by fabriciofx.
the class PhonebookTest method addContact.
@Test
public void addContact() throws Exception {
try (Servers servers = new Servers(new ServerH2(new ScriptSql(new ResourceOf(new Joined("/", "com/github/fabriciofx/cactoos/jdbc/phonebook", "phonebook-h2.sql")))), new ServerPgsql(new ScriptSql(new ResourceOf(new Joined("/", "com/github/fabriciofx/cactoos/jdbc/phonebook", "phonebook-pgsql.sql")))))) {
for (final Session session : servers.sessions()) {
final Phonebook phonebook = new PhonebookSql(session);
final Contact contact = phonebook.contact(new MapOf<String, String>(new MapEntry<>("name", "Donald Knuth")));
contact.phones().add(new MapOf<String, String>(new MapEntry<>("number", "99991234"), new MapEntry<>("carrier", "TIM")));
contact.phones().add(new MapOf<String, String>(new MapEntry<>("number", "98812564"), new MapEntry<>("carrier", "Oi")));
MatcherAssert.assertThat(XhtmlMatchers.xhtml(contact.about()), XhtmlMatchers.hasXPaths("/contact/name[text()='Donald Knuth']", "/contact/phones/phone/number[text()='99991234']", "/contact/phones/phone/carrier[text()='TIM']", "/contact/phones/phone/number[text()='98812564']", "/contact/phones/phone/carrier[text()='Oi']"));
}
}
}
use of org.cactoos.map.MapEntry in project cactoos-jdbc by fabriciofx.
the class PhonebookTest method renameContact.
@Test
public void renameContact() throws Exception {
try (Servers servers = new Servers(new ServerH2(new ScriptSql(new ResourceOf(new Joined("/", "com/github/fabriciofx/cactoos/jdbc/phonebook", "phonebook-h2.sql")))), new ServerPgsql(new ScriptSql(new ResourceOf(new Joined("/", "com/github/fabriciofx/cactoos/jdbc/phonebook", "phonebook-pgsql.sql")))))) {
for (final Session session : servers.sessions()) {
final Phonebook phonebook = new PhonebookSql(session);
final Contact contact = phonebook.filter("maria").iterator().next();
contact.update(new MapOf<String, String>(new MapEntry<>("name", "Maria Lima")));
MatcherAssert.assertThat(XhtmlMatchers.xhtml(new PhonebookSql(session).filter("maria").iterator().next().about()), XhtmlMatchers.hasXPaths("/contact/name[text()='Maria Lima']"));
}
}
}
use of org.cactoos.map.MapEntry in project cactoos-jdbc by fabriciofx.
the class StatementTransactionTest method commit.
@Test
public void commit() throws Exception {
final Transacted transacted = new Transacted(new SessionNoAuth(new SourceH2("safedb")));
new ScriptSql(new ResourceOf("com/github/fabriciofx/cactoos/jdbc/phonebook/phonebook-h2.sql")).run(transacted);
MatcherAssert.assertThat("Can't perform a transaction commit", XhtmlMatchers.xhtml(new ResultAsValue<>(new StatementTransaction<>(transacted, () -> {
final Phonebook phonebook = new PhonebookSql(transacted);
final Contact contact = phonebook.contact(new MapOf<String, String>(new MapEntry<>("name", "Albert Einstein")));
contact.phones().add(new MapOf<String, String>(new MapEntry<>("number", "99991234"), new MapEntry<>("carrier", "TIM")));
contact.phones().add(new MapOf<String, String>(new MapEntry<>("number", "98812564"), new MapEntry<>("carrier", "Oi")));
return contact.about();
})).value()), XhtmlMatchers.hasXPaths("/contact/name[text()='Albert Einstein']", "/contact/phones/phone/number[text()='99991234']", "/contact/phones/phone/carrier[text()='TIM']", "/contact/phones/phone/number[text()='98812564']", "/contact/phones/phone/carrier[text()='Oi']"));
}
Aggregations