github.com/HaswinVidanage/gqlgen@v0.8.1-0.20220609041233-69528c1bf712/internal/code/imports_test.go (about)

     1  package code
     2  
     3  import (
     4  	"os"
     5  	"path/filepath"
     6  	"testing"
     7  
     8  	"github.com/stretchr/testify/assert"
     9  	"github.com/stretchr/testify/require"
    10  )
    11  
    12  func TestImportPathForDir(t *testing.T) {
    13  	wd, err := os.Getwd()
    14  	require.NoError(t, err)
    15  
    16  	assert.Equal(t, "github.com/HaswinVidanage/gqlgen/internal/code", ImportPathForDir(wd))
    17  	assert.Equal(t, "github.com/HaswinVidanage/gqlgen/api", ImportPathForDir(filepath.Join(wd, "..", "..", "api")))
    18  
    19  	// doesnt contain go code, but should still give a valid import path
    20  	// assert.Equal(t, "github.com/HaswinVidanage/gqlgen/docs", ImportPathForDir(filepath.Join(wd, "..", "..", "docs")))
    21  
    22  	// directory does not exist
    23  	assert.Equal(t, "github.com/HaswinVidanage/gqlgen/dos", ImportPathForDir(filepath.Join(wd, "..", "..", "dos")))
    24  }
    25  
    26  func TestNameForPackage(t *testing.T) {
    27  	assert.Equal(t, "api", NameForPackage("github.com/HaswinVidanage/gqlgen/api"))
    28  
    29  	// does not contain go code, should still give a valid name
    30  	assert.Equal(t, "docs", NameForPackage("github.com/HaswinVidanage/gqlgen/docs"))
    31  	assert.Equal(t, "github_com", NameForPackage("github.com"))
    32  }