code.gitea.io/gitea@v1.22.3/modules/git/object_id_test.go (about)

     1  // Copyright 2022 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  package git
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func TestIsValidSHAPattern(t *testing.T) {
    13  	h := Sha1ObjectFormat
    14  	assert.True(t, h.IsValid("fee1"))
    15  	assert.True(t, h.IsValid("abc000"))
    16  	assert.True(t, h.IsValid("9023902390239023902390239023902390239023"))
    17  	assert.False(t, h.IsValid("90239023902390239023902390239023902390239023"))
    18  	assert.False(t, h.IsValid("abc"))
    19  	assert.False(t, h.IsValid("123g"))
    20  	assert.False(t, h.IsValid("some random text"))
    21  	assert.Equal(t, "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", ComputeBlobHash(Sha1ObjectFormat, nil).String())
    22  	assert.Equal(t, "2e65efe2a145dda7ee51d1741299f848e5bf752e", ComputeBlobHash(Sha1ObjectFormat, []byte("a")).String())
    23  	assert.Equal(t, "473a0f4c3be8a93681a267e3b1e9a7dcda1185436fe141f7749120a303721813", ComputeBlobHash(Sha256ObjectFormat, nil).String())
    24  	assert.Equal(t, "eb337bcee2061c5313c9a1392116b6c76039e9e30d71467ae359b36277e17dc7", ComputeBlobHash(Sha256ObjectFormat, []byte("a")).String())
    25  }