doc: add documentation and example for enttest (#453)

This commit is contained in:
Ariel Mashraki
2020-04-26 16:31:24 +03:00
committed by GitHub
parent 61c0f957b6
commit 7de4f4b758
3 changed files with 45 additions and 10 deletions

View File

@@ -19,9 +19,8 @@ import (
func TestSchemaHooks(t *testing.T) {
ctx := context.Background()
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1")
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1", enttest.WithMigrateOptions(migrate.WithGlobalUniqueID(true)))
defer client.Close()
require.NoError(t, client.Schema.Create(ctx, migrate.WithGlobalUniqueID(true)))
_, err := client.Card.Create().SetNumber("123").Save(ctx)
require.EqualError(t, err, "card number is too short", "error is returned from hook")
crd := client.Card.Create().SetNumber("1234").SaveX(ctx)
@@ -62,7 +61,6 @@ func TestRuntimeChain(t *testing.T) {
ctx := context.Background()
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1")
defer client.Close()
require.NoError(t, client.Schema.Create(ctx))
var (
chain hook.Chain
values []int
@@ -83,9 +81,8 @@ func TestRuntimeChain(t *testing.T) {
func TestMutationClient(t *testing.T) {
ctx := context.Background()
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1")
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1", enttest.WithMigrateOptions(migrate.WithGlobalUniqueID(true)))
defer client.Close()
require.NoError(t, client.Schema.Create(ctx, migrate.WithGlobalUniqueID(true)))
client.Card.Use(func(next ent.Mutator) ent.Mutator {
return hook.CardFunc(func(ctx context.Context, m *ent.CardMutation) (ent.Value, error) {
id, _ := m.OwnerID()
@@ -101,9 +98,8 @@ func TestMutationClient(t *testing.T) {
func TestMutationTx(t *testing.T) {
ctx := context.Background()
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1")
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1", enttest.WithMigrateOptions(migrate.WithGlobalUniqueID(true)))
defer client.Close()
require.NoError(t, client.Schema.Create(ctx, migrate.WithGlobalUniqueID(true)))
client.Card.Use(func(next ent.Mutator) ent.Mutator {
return hook.CardFunc(func(ctx context.Context, m *ent.CardMutation) (ent.Value, error) {
tx, err := m.Tx()
@@ -128,9 +124,8 @@ func TestMutationTx(t *testing.T) {
func TestDeletion(t *testing.T) {
ctx := context.Background()
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1")
client := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1", enttest.WithMigrateOptions(migrate.WithGlobalUniqueID(true)))
defer client.Close()
require.NoError(t, client.Schema.Create(ctx, migrate.WithGlobalUniqueID(true)))
client.User.Use(func(next ent.Mutator) ent.Mutator {
return hook.UserFunc(func(ctx context.Context, m *ent.UserMutation) (ent.Value, error) {
if !m.Op().Is(ent.OpDeleteOne) {