github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/tiltfile/dockerprune/docker_prune_test.go (about)

     1  package dockerprune
     2  
     3  import (
     4  	"testing"
     5  	"time"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  
     9  	"github.com/tilt-dev/tilt/internal/tiltfile/starkit"
    10  	"github.com/tilt-dev/tilt/pkg/model"
    11  )
    12  
    13  func TestDockerPrune(t *testing.T) {
    14  	f := NewFixture(t)
    15  	f.File("Tiltfile", `
    16  docker_prune_settings(disable=True, max_age_mins=1)
    17  `)
    18  	result, err := f.ExecFile("Tiltfile")
    19  	assert.NoError(t, err)
    20  	assert.False(t, MustState(result).Enabled)
    21  	assert.Equal(t, time.Minute, MustState(result).MaxAge)
    22  
    23  	f.File("Tiltfile.empty", `
    24  `)
    25  	result, err = f.ExecFile("Tiltfile.empty")
    26  	assert.NoError(t, err)
    27  	assert.True(t, MustState(result).Enabled)
    28  	assert.Equal(t, model.DockerPruneDefaultMaxAge, MustState(result).MaxAge)
    29  }
    30  
    31  func TestDockerPruneKeepRecent(t *testing.T) {
    32  	f := NewFixture(t)
    33  	f.File("Tiltfile", `
    34  docker_prune_settings(keep_recent=5)
    35  `)
    36  	result, err := f.ExecFile("Tiltfile")
    37  	assert.NoError(t, err)
    38  	assert.True(t, MustState(result).Enabled)
    39  	assert.Equal(t, 5, MustState(result).KeepRecent)
    40  
    41  	f.File("Tiltfile.empty", `
    42  `)
    43  	result, err = f.ExecFile("Tiltfile.empty")
    44  	assert.NoError(t, err)
    45  	assert.Equal(t, model.DockerPruneDefaultKeepRecent, MustState(result).KeepRecent)
    46  }
    47  
    48  func NewFixture(tb testing.TB) *starkit.Fixture {
    49  	return starkit.NewFixture(tb, NewPlugin())
    50  }