AsyncAutoRollback

trait AsyncAutoRollback extends LoanPattern

AsyncAutoRollback for ScalaTest

import org.scalatest.fixture.AsyncFlatSpec
class MemberSpec extends AsyncFlatSpec with AsyncAutoRollback {
 describe of "Member"
 it should "create a new record" in { implicit session =>
  Future {
    Member.create(1, "Alice")
    Member.find(1).isDefined should be(true)
  }
 }
}
class LegacyAccountSpec extends AsyncFlatSpec with AsyncAutoRollback {
 override def db() = NamedDB('db2).toDB
 override def fixture(implicit session: DBSession) {
   SQL("insert into legacy_accounts values ...").update.apply()
 }

 it should "create a new record" in { implicit session =>
   Future {
     LegacyAccount.create(2, "Bob")
     LegacyAccount.find(2).isDefined should be(true)
   }
 }
}
trait LoanPattern
class Object
trait Matchable
class Any

Type members

Types

type FixtureParam = DBSession

Inherited types

type Closable = { def close(): Unit; }
Inherited from
LoanPattern

Value members

Concrete methods

def db(): DB

Creates a scalikejdbc.DB instance.

Creates a scalikejdbc.DB instance.

Returns

DB instance

def fixture(implicit session: DBSession): Unit

Prepares database for the test.

Prepares database for the test.

Value Params
session

db session implicitly

override def withFixture(test: <none>): FutureOutcome

Provides transactional block

Provides transactional block

Value Params
test

one arg test

Definition Classes

Inherited methods

def futureUsing[R <: Closable, A](resource: R)(f: R => Future[A])(implicit ec: ExecutionContext): Future[A]

Guarantees a Closeable resource will be closed after being passed to a block that takes the resource as a parameter and returns a Future.

Guarantees a Closeable resource will be closed after being passed to a block that takes the resource as a parameter and returns a Future.

Inherited from
LoanPattern
def using[R <: Closable, A](resource: R)(f: R => A): A
Inherited from
LoanPattern