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

     1  package pop
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  )
     8  
     9  func Test_Scopes(t *testing.T) {
    10  	r := require.New(t)
    11  	oql := "SELECT enemies.A FROM enemies AS enemies"
    12  
    13  	m := &Model{Value: &Enemy{}}
    14  
    15  	q := PDB.Q()
    16  	s, _ := q.ToSQL(m)
    17  	r.Equal(oql, s)
    18  
    19  	q.Scope(func(qy *Query) *Query {
    20  		return qy.Where("id = ?", 1)
    21  	})
    22  
    23  	s, _ = q.ToSQL(m)
    24  	r.Equal(ts(oql+" WHERE id = ?"), s)
    25  }