github.com/wrgl/wrgl@v0.14.0/pkg/ingest/profile_test.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // Copyright © 2022 Wrangle Ltd 3 4 package ingest 5 6 import ( 7 "os" 8 "testing" 9 10 "github.com/go-logr/logr/testr" 11 "github.com/stretchr/testify/assert" 12 "github.com/stretchr/testify/require" 13 "github.com/wrgl/wrgl/pkg/objects" 14 objmock "github.com/wrgl/wrgl/pkg/objects/mock" 15 "github.com/wrgl/wrgl/pkg/sorter" 16 "github.com/wrgl/wrgl/pkg/testutils" 17 ) 18 19 func TestProfileTable(t *testing.T) { 20 rows := testutils.BuildRawCSV(4, 700) 21 f := writeCSV(t, rows) 22 defer os.Remove(f.Name()) 23 db := objmock.NewStore() 24 s, err := sorter.NewSorter() 25 require.NoError(t, err) 26 logger := testr.New(t) 27 28 sum, err := IngestTable(db, s, f, rows[0][:1], logger) 29 require.NoError(t, err) 30 tbl, err := objects.GetTable(db, sum) 31 require.NoError(t, err) 32 tblProf, err := objects.GetTableProfile(db, sum) 33 require.NoError(t, err) 34 require.NoError(t, objects.DeleteTableProfile(db, sum)) 35 36 require.NoError(t, ProfileTable(db, sum, tbl)) 37 tblSum2, err := objects.GetTableProfile(db, sum) 38 require.NoError(t, err) 39 assert.Equal(t, tblProf, tblSum2) 40 }