code.gitea.io/gitea@v1.19.3/modules/avatar/identicon/identicon_test.go (about)

     1  // Copyright 2021 The Gitea Authors. All rights reserved.
     2  // SPDX-License-Identifier: MIT
     3  
     4  //go:build test_avatar_identicon
     5  
     6  package identicon
     7  
     8  import (
     9  	"image/color"
    10  	"image/png"
    11  	"os"
    12  	"strconv"
    13  	"testing"
    14  
    15  	"github.com/stretchr/testify/assert"
    16  )
    17  
    18  func TestGenerate(t *testing.T) {
    19  	dir, _ := os.Getwd()
    20  	dir = dir + "/testdata"
    21  	if st, err := os.Stat(dir); err != nil || !st.IsDir() {
    22  		t.Errorf("can not save generated images to %s", dir)
    23  	}
    24  
    25  	backColor := color.White
    26  	imgMaker, err := New(64, backColor, DarkColors...)
    27  	assert.NoError(t, err)
    28  	for i := 0; i < 100; i++ {
    29  		s := strconv.Itoa(i)
    30  		img := imgMaker.Make([]byte(s))
    31  
    32  		f, err := os.Create(dir + "/" + s + ".png")
    33  		if !assert.NoError(t, err) {
    34  			continue
    35  		}
    36  		defer f.Close()
    37  		err = png.Encode(f, img)
    38  		assert.NoError(t, err)
    39  	}
    40  }