Files
ent/cmd/ent/ent_test.go
MasseElch 0239daca7b dialect/sql/schema: versioned migrations (#2337)
* dialect/sql/schema: fix go doc

* all: update atlas

* dialect/sql/schema: diff connected DB and defined schema and write changes to migration file

* dialect/sql/schema: use migration directory and formatter directly instead of a planner

* all: update atlas

* cmd: add command to create a new migration file

* entc/gen: generate main.go with migrate diff example

* all: regenerate

* cmd/internal/base: make linter happy

* all: support Go 1.16 in versioned migrations main.go

* entc/gen: put versioned migrations behind feature flag

* all: regenerate

* cmd/ent: driver-prefixed dsn in migrate diff command

* cmd/internal/base: remove prefix from migrate import

* cmd/internal/base: use cobra.CheckErr

* cmd: remove diff command

* entc/gen/template/dialect/sql/feature: remove generated main.go

* all: rebase on master and go mod tidy

* all: regenerate
2022-02-21 12:15:17 +02:00

40 lines
1.0 KiB
Go

// Copyright 2019-present Facebook Inc. All rights reserved.
// This source code is licensed under the Apache 2.0 license found
// in the LICENSE file in the root directory of this source tree.
package main
import (
"bytes"
"os"
"os/exec"
"testing"
"github.com/stretchr/testify/require"
)
func TestCmd(t *testing.T) {
defer os.RemoveAll("ent")
cmd := exec.Command("go", "run", "entgo.io/ent/cmd/ent", "init", "User")
stderr := bytes.NewBuffer(nil)
cmd.Stderr = stderr
require.NoError(t, cmd.Run())
require.Zero(t, stderr.String())
cmd = exec.Command("go", "run", "entgo.io/ent/cmd/ent", "init", "User")
require.Error(t, cmd.Run())
_, err := os.Stat("ent/generate.go")
require.NoError(t, err)
_, err = os.Stat("ent/schema/user.go")
require.NoError(t, err)
cmd = exec.Command("go", "run", "entgo.io/ent/cmd/ent", "generate", "./ent/schema")
stderr = bytes.NewBuffer(nil)
cmd.Stderr = stderr
require.NoError(t, cmd.Run())
require.Zero(t, stderr.String())
_, err = os.Stat("ent/user.go")
require.NoError(t, err)
}