github.com/wrgl/wrgl@v0.14.0/pkg/conf/remote_test.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // Copyright © 2022 Wrangle Ltd 3 4 package conf 5 6 import ( 7 "testing" 8 9 "github.com/stretchr/testify/assert" 10 ) 11 12 func TestRemoteFetchDstMatchRef(t *testing.T) { 13 cr := &Remote{ 14 Fetch: []*Refspec{ 15 MustParseRefspec("+refs/heads/*:refs/remotes/origin/*"), 16 MustParseRefspec("refs/tags/v1.0.0:refs/tags/v1.0.0"), 17 }, 18 } 19 assert.True(t, cr.FetchDstMatchRef("refs/remotes/origin/abc")) 20 assert.True(t, cr.FetchDstMatchRef("refs/tags/v1.0.0")) 21 assert.False(t, cr.FetchDstMatchRef("refs/tags/v2.1.0")) 22 } 23 24 func TestRemoteFetchDstForRef(t *testing.T) { 25 cr := &Remote{ 26 Fetch: []*Refspec{ 27 MustParseRefspec("+refs/heads/*:refs/remotes/origin/*"), 28 MustParseRefspec("refs/tags/v1.0.0:refs/tags/v1.0.0"), 29 MustParseRefspec("^refs/heads/nah"), 30 }, 31 } 32 assert.Equal(t, cr.FetchDstForRef("refs/heads/abc"), "refs/remotes/origin/abc") 33 assert.Equal(t, cr.FetchDstForRef("refs/heads/nah"), "") 34 assert.Equal(t, cr.FetchDstForRef("refs/tags/v1.0.0"), "refs/tags/v1.0.0") 35 assert.Equal(t, cr.FetchDstForRef("refs/tags/v1.1.0"), "") 36 }