github.com/adharshmk96/stk@v1.2.3/pkg/sqlMigrator/repo_file_test.go (about) 1 package sqlmigrator 2 3 import ( 4 "testing" 5 6 "github.com/adharshmk96/stk/testutils" 7 "github.com/stretchr/testify/assert" 8 ) 9 10 var TEST_FILE_CONTENT = `1_create_users_table_up 11 2_create_posts_table_up 12 3_create_comments_table_up 13 4_create_likes_table_down 14 5_create_followers_table_down 15 6_create_messages_table_down 16 ` 17 18 func TestReadLines(t *testing.T) { 19 t.Run("reads a file and returns all lines", func(t *testing.T) { 20 filePath, removeTempFile := testutils.CreateTempFile(t, TEST_FILE_CONTENT) 21 lines, err := ReadLines(filePath) 22 23 defer removeTempFile() 24 25 expected := []string{ 26 "1_create_users_table_up", 27 "2_create_posts_table_up", 28 "3_create_comments_table_up", 29 "4_create_likes_table_down", 30 "5_create_followers_table_down", 31 "6_create_messages_table_down", 32 } 33 34 assert.NoError(t, err) 35 assert.Equal(t, expected, lines) 36 }) 37 38 t.Run("returns an error if file does not exist", func(t *testing.T) { 39 _, err := ReadLines("non-existent-file.txt") 40 41 assert.Error(t, err) 42 }) 43 } 44 45 func TestReadContent(t *testing.T) { 46 47 }