github.com/duskeagle/pop@v4.10.1-0.20190417200916-92f2b794aab5+incompatible/connection_test.go (about)

     1  package pop
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  )
     8  
     9  func Test_Connection_SimpleFlow(t *testing.T) {
    10  	r := require.New(t)
    11  
    12  	cd := &ConnectionDetails{
    13  		URL: "sqlite:///foo.db",
    14  	}
    15  	c, err := NewConnection(cd)
    16  	r.NoError(err)
    17  
    18  	err = c.Open()
    19  	r.NoError(err)
    20  	err = c.Open() // open again
    21  	r.NoError(err)
    22  	err = c.Close()
    23  	r.NoError(err)
    24  }
    25  
    26  func Test_Connection_Open_NoDialect(t *testing.T) {
    27  	r := require.New(t)
    28  
    29  	cd := &ConnectionDetails{
    30  		URL: "sqlite:///foo.db",
    31  	}
    32  	c, err := NewConnection(cd)
    33  	r.NoError(err)
    34  
    35  	c.Dialect = nil
    36  	err = c.Open()
    37  	r.Error(err)
    38  }
    39  
    40  func Test_Connection_Open_BadDialect(t *testing.T) {
    41  	r := require.New(t)
    42  
    43  	cd := &ConnectionDetails{
    44  		URL: "sqlite:///foo.db",
    45  	}
    46  	c, err := NewConnection(cd)
    47  	r.NoError(err)
    48  
    49  	cd.Dialect = "unknown"
    50  	err = c.Open()
    51  	r.Error(err)
    52  }