You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

42 lines
1.2 KiB

package test
import (
"testing"
"github.com/gobuffalo/packr/v2"
"github.com/jmoiron/sqlx"
migrate "github.com/rubenv/sql-migrate"
"github.com/stretchr/testify/assert"
)
// AssertUSD asserts pointers to float64, and checks that they are equal
// with a tolerance of 0.01%. After that, the actual value is setted to the expected value
// in order to be able to perform further assertions using the standar assert functions.
func AssertUSD(t *testing.T, expected, actual *float64) {
if actual == nil {
assert.Equal(t, expected, actual)
return
}
if *expected < *actual {
assert.InEpsilon(t, *actual, *expected, 0.0001)
} else if *expected > *actual {
assert.InEpsilon(t, *expected, *actual, 0.0001)
}
*expected = *actual
}
// WipeDB redo all the migrations of the SQL DB (HistoryDB and L2DB),
// efectively recreating the original state
func WipeDB(db *sqlx.DB) {
migrations := &migrate.PackrMigrationSource{
Box: packr.New("hermez-db-migrations", "../db/migrations"),
}
_, err := migrate.Exec(db.DB, "postgres", migrations, migrate.Down)
if err != nil {
panic(err)
}
_, err = migrate.Exec(db.DB, "postgres", migrations, migrate.Up)
if err != nil {
panic(err)
}
}