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  }