summaryrefslogtreecommitdiff
path: root/tests/plugins/grpc/plugin_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'tests/plugins/grpc/plugin_test.go')
-rw-r--r--tests/plugins/grpc/plugin_test.go178
1 files changed, 0 insertions, 178 deletions
diff --git a/tests/plugins/grpc/plugin_test.go b/tests/plugins/grpc/plugin_test.go
deleted file mode 100644
index cfbe0121..00000000
--- a/tests/plugins/grpc/plugin_test.go
+++ /dev/null
@@ -1,178 +0,0 @@
-package grpc
-
-import (
- "io/ioutil"
- "os"
- "os/exec"
- "strings"
- "testing"
-
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
-)
-
-func init() {
- err := build()
- if err != nil {
- panic(err)
- }
-}
-
-func build() error {
- cmd := exec.Command("go", "build", "-o", "plugin", "../../../plugins/grpc/protoc_plugins/protoc-gen-php-grpc")
- return cmd.Run()
-}
-
-func protoc(t *testing.T, args []string) {
- cmd := exec.Command("protoc", "--plugin=protoc-gen-php-grpc=./plugin")
- cmd.Args = append(cmd.Args, args...)
- out, err := cmd.CombinedOutput()
-
- if len(out) > 0 || err != nil {
- t.Log("RUNNING: ", strings.Join(cmd.Args, " "))
- }
-
- if len(out) > 0 {
- t.Log(string(out))
- }
-
- if err != nil {
- t.Fatalf("protoc: %v", err)
- }
-}
-
-func Test_Simple(t *testing.T) {
- workdir, _ := os.Getwd()
- tmpdir, err := ioutil.TempDir("", "proto-test")
- require.NoError(t, err)
-
- defer func() {
- assert.NoError(t, os.RemoveAll(tmpdir))
- }()
-
- args := []string{
- "-Itestdata",
- "--php-grpc_out=" + tmpdir,
- "simple/simple.proto",
- }
-
- protoc(t, args)
-
- assertEqualFiles(
- t,
- workdir+"/testdata/simple/TestSimple/SimpleServiceInterface.php",
- tmpdir+"/TestSimple/SimpleServiceInterface.php",
- )
-}
-
-func Test_PhpNamespaceOption(t *testing.T) {
- workdir, _ := os.Getwd()
- tmpdir, err := ioutil.TempDir("", "proto-test")
- require.NoError(t, err)
-
- defer func() {
- assert.NoError(t, os.RemoveAll(tmpdir))
- }()
-
- args := []string{
- "-Itestdata",
- "--php-grpc_out=" + tmpdir,
- "php_namespace/service.proto",
- }
- protoc(t, args)
-
- assertEqualFiles(
- t,
- workdir+"/testdata/php_namespace/Test/CustomNamespace/ServiceInterface.php",
- tmpdir+"/Test/CustomNamespace/ServiceInterface.php",
- )
-}
-
-func Test_UseImportedMessage(t *testing.T) {
- workdir, _ := os.Getwd()
- tmpdir, err := ioutil.TempDir("", "proto-test")
- require.NoError(t, err)
-
- defer func() {
- assert.NoError(t, os.RemoveAll(tmpdir))
- }()
-
- args := []string{
- "-Itestdata",
- "--php-grpc_out=" + tmpdir,
- "import/service.proto",
- }
- protoc(t, args)
-
- assertEqualFiles(
- t,
- workdir+"/testdata/import/Import/ServiceInterface.php",
- tmpdir+"/Import/ServiceInterface.php",
- )
-}
-
-func Test_PhpNamespaceOptionInUse(t *testing.T) {
- workdir, _ := os.Getwd()
- tmpdir, err := ioutil.TempDir("", "proto-test")
- require.NoError(t, err)
-
- defer func() {
- assert.NoError(t, os.RemoveAll(tmpdir))
- }()
-
- args := []string{
- "-Itestdata",
- "--php-grpc_out=" + tmpdir,
- "import_custom/service.proto",
- }
- protoc(t, args)
-
- assertEqualFiles(
- t,
- workdir+"/testdata/import_custom/Test/CustomImport/ServiceInterface.php",
- tmpdir+"/Test/CustomImport/ServiceInterface.php",
- )
-}
-
-func Test_UseOfGoogleEmptyMessage(t *testing.T) {
- workdir, _ := os.Getwd()
- tmpdir, err := ioutil.TempDir("", "proto-test")
- require.NoError(t, err)
-
- defer func() {
- assert.NoError(t, os.RemoveAll(tmpdir))
- }()
-
- args := []string{
- "-Itestdata",
- "--php-grpc_out=" + tmpdir,
- "use_empty/service.proto",
- }
- protoc(t, args)
-
- assertEqualFiles(
- t,
- workdir+"/testdata/use_empty/Test/ServiceInterface.php",
- tmpdir+"/Test/ServiceInterface.php",
- )
-
- assert.NoError(t, os.RemoveAll("plugin"))
-}
-
-func assertEqualFiles(t *testing.T, original, generated string) {
- assert.FileExists(t, generated)
-
- originalData, err := ioutil.ReadFile(original)
- if err != nil {
- t.Fatal("Can't find original file for comparison")
- }
-
- generatedData, err := ioutil.ReadFile(generated)
- if err != nil {
- t.Fatal("Can't find generated file for comparison")
- }
-
- // every OS has a special boy
- r := strings.NewReplacer("\r\n", "", "\n", "")
- assert.Equal(t, r.Replace(string(originalData)), r.Replace(string(generatedData)))
-}