github.com/hawser/git-hawser@v2.5.2+incompatible/tq/transfer_queue_test.go (about) 1 package tq 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestManifestDefaultsToFixedRetries(t *testing.T) { 10 assert.Equal(t, 8, NewManifest(nil, nil, "", "").MaxRetries()) 11 } 12 13 func TestRetryCounterDefaultsToFixedRetries(t *testing.T) { 14 rc := newRetryCounter() 15 assert.Equal(t, 8, rc.MaxRetries) 16 } 17 18 func TestRetryCounterIncrementsObjects(t *testing.T) { 19 rc := newRetryCounter() 20 rc.Increment("oid") 21 assert.Equal(t, 1, rc.CountFor("oid")) 22 } 23 24 func TestRetryCounterCanNotRetryAfterExceedingRetryCount(t *testing.T) { 25 rc := newRetryCounter() 26 rc.MaxRetries = 1 27 rc.Increment("oid") 28 29 count, canRetry := rc.CanRetry("oid") 30 assert.Equal(t, 1, count) 31 assert.False(t, canRetry) 32 } 33 34 func TestBatchSizeReturnsBatchSize(t *testing.T) { 35 q := NewTransferQueue( 36 Upload, NewManifest(nil, nil, "", ""), "origin", WithBatchSize(3)) 37 38 assert.Equal(t, 3, q.BatchSize()) 39 }