2020-08-06 20:58:47 +03:00
|
|
|
package cli_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
|
|
|
|
"github.com/neilotoole/sq/testh"
|
|
|
|
"github.com/neilotoole/sq/testh/sakila"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestCmdRemove(t *testing.T) {
|
|
|
|
th := testh.New(t)
|
|
|
|
|
|
|
|
// 1. Should fail if bad handle
|
2023-04-22 16:37:07 +03:00
|
|
|
ru := newRun(th.Context, t, nil)
|
2023-01-01 06:17:44 +03:00
|
|
|
err := ru.Exec("rm", "@not_a_source")
|
2020-08-06 20:58:47 +03:00
|
|
|
require.Error(t, err)
|
|
|
|
|
|
|
|
// 2. Check normal operation
|
|
|
|
src := th.Source(sakila.SL3)
|
2023-04-22 16:37:07 +03:00
|
|
|
ru = newRun(th.Context, t, nil).add(*src)
|
2020-08-06 20:58:47 +03:00
|
|
|
|
|
|
|
// The src we just added should be the active src
|
2023-04-19 08:28:09 +03:00
|
|
|
activeSrc := ru.rc.Config.Collection.Active()
|
2020-08-06 20:58:47 +03:00
|
|
|
require.NotNil(t, activeSrc)
|
|
|
|
require.Equal(t, src.Handle, activeSrc.Handle)
|
|
|
|
|
2023-01-01 06:17:44 +03:00
|
|
|
err = ru.Exec("rm", src.Handle)
|
2020-08-06 20:58:47 +03:00
|
|
|
require.NoError(t, err)
|
|
|
|
|
2023-04-19 08:28:09 +03:00
|
|
|
activeSrc = ru.rc.Config.Collection.Active()
|
2020-08-06 20:58:47 +03:00
|
|
|
require.Nil(t, activeSrc, "should be no active src anymore")
|
|
|
|
}
|