kubelatte-ce

Форк
2
Форк от sbertech/kubelatte-ce
/
reloadcerts_test.go 
68 строк · 2.4 Кб
1
package util
2

3
import (
4
	"github.com/spf13/afero"
5
	"github.com/stretchr/testify/assert"
6
	"testing"
7
	"time"
8
)
9

10
func startStopCertificatePKIReloader(t *testing.T, r *CertificatePKIReloader) error {
11
	err := r.Start()
12
	if err != nil {
13
		return err
14
	}
15
	assert.NoError(t, err, "certificate PKI reloader started successful")
16
	stopCH := r.stopCh
17
	r.Stop()
18

19
	select {
20
	case _ = <-stopCH:
21
		assert.False(t, r.IsRunning(), "certificate PKI reloader stopped successful")
22
		return nil
23
	}
24

25
}
26

27
func TestReloadCerts(t *testing.T) {
28
	var certPKIRelFullNill *CertificatePKIReloader
29
	fs := afero.NewOsFs()
30

31
	certs, err := GenerateTestCertificates()
32
	assert.NoError(t, err, "create certificates")
33

34
	certPKIRelFull := NewCertificatePKIReloaderFull(fs, certs.certFileName, certs.keyFileName, time.Duration(100))
35

36
	assert.NoError(t, startStopCertificatePKIReloader(t, certPKIRelFull), "certificate PKI reloader full start/stop successfully")
37

38
	certPKIRel := NewCertificatePKIReloader(certs.certFileName, certs.keyFileName, time.Duration(100))
39

40
	assert.NoError(t, startStopCertificatePKIReloader(t, certPKIRel), "certificate PKI reloader  start/stop successfully")
41

42
	certPKIRelWithErrHandler := NewCertificatePKIReloaderWithErrHandler(certs.certFileName, certs.keyFileName, time.Duration(100), func(err error) {
43
		assert.NoError(t, err, "certificate PKI reloader error handler function")
44
	})
45

46
	assert.NoError(t, startStopCertificatePKIReloader(t, certPKIRelWithErrHandler), "certificate PKI reloader with error handler function  start/stop successfully")
47

48
	certPKIRelFullWithErrHandler := NewCertificatePKIReloaderFullWithErrHandler(fs, certs.certFileName, certs.keyFileName, time.Duration(100), func(err error) {
49
		assert.NoError(t, err, "certificate PKI reloader full error handler function")
50
	})
51

52
	assert.NoError(t, startStopCertificatePKIReloader(t, certPKIRelFullWithErrHandler), "certificate PKI reloader full with error handler function start/stop successfully")
53

54
	assert.Panics(t, func() {
55
		_, _ = certPKIRelFullNill.GetCertificate()
56
	}, "uninit certificate PKI get certificate with panic")
57

58
	_, errC := readCert(fs, "/bad_cert_filepath", "/bad_key_filepath")
59
	assert.Error(t, errC, "uninit certificate PKI read certificate failed")
60

61
	tm, _ := readModTime(afero.OsFs{}, "/bad_file_path")
62
	assert.Zero(t, tm, "uninit certificate PKI read mod time failed")
63

64
	assert.Panics(t, func() {
65
		startStopCertificatePKIReloader(t, certPKIRelFullNill)
66
	}, "uninit certificate PKI reloader  start/stop with panic")
67

68
}
69

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.