mirror of https://github.com/h44z/wg-portal.git
				
				
				
			
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
package domain
 | 
						|
 | 
						|
import (
 | 
						|
	"encoding/base64"
 | 
						|
	"testing"
 | 
						|
 | 
						|
	"github.com/stretchr/testify/assert"
 | 
						|
	"golang.zx2c4.com/wireguard/wgctrl/wgtypes"
 | 
						|
)
 | 
						|
 | 
						|
func TestKeyPair_GetPrivateKeyBytesReturnsCorrectBytes(t *testing.T) {
 | 
						|
	keyPair := KeyPair{PrivateKey: base64.StdEncoding.EncodeToString([]byte("privateKey"))}
 | 
						|
	expected := []byte("privateKey")
 | 
						|
	assert.Equal(t, expected, keyPair.GetPrivateKeyBytes())
 | 
						|
}
 | 
						|
 | 
						|
func TestKeyPair_GetPublicKeyBytesReturnsCorrectBytes(t *testing.T) {
 | 
						|
	keyPair := KeyPair{PublicKey: base64.StdEncoding.EncodeToString([]byte("publicKey"))}
 | 
						|
	expected := []byte("publicKey")
 | 
						|
	assert.Equal(t, expected, keyPair.GetPublicKeyBytes())
 | 
						|
}
 | 
						|
 | 
						|
func TestKeyPair_GetPrivateKeyReturnsCorrectKey(t *testing.T) {
 | 
						|
	privateKey, _ := wgtypes.GeneratePrivateKey()
 | 
						|
	keyPair := KeyPair{PrivateKey: privateKey.String()}
 | 
						|
	assert.Equal(t, privateKey, keyPair.GetPrivateKey())
 | 
						|
}
 | 
						|
 | 
						|
func TestKeyPair_GetPublicKeyReturnsCorrectKey(t *testing.T) {
 | 
						|
	privateKey, _ := wgtypes.GeneratePrivateKey()
 | 
						|
	keyPair := KeyPair{PublicKey: privateKey.PublicKey().String()}
 | 
						|
	assert.Equal(t, privateKey.PublicKey(), keyPair.GetPublicKey())
 | 
						|
}
 | 
						|
 | 
						|
func TestNewFreshKeypairGeneratesValidKeypair(t *testing.T) {
 | 
						|
	keyPair, err := NewFreshKeypair()
 | 
						|
	assert.NoError(t, err)
 | 
						|
	assert.NotEmpty(t, keyPair.PrivateKey)
 | 
						|
	assert.NotEmpty(t, keyPair.PublicKey)
 | 
						|
}
 | 
						|
 | 
						|
func TestNewPreSharedKeyGeneratesValidKey(t *testing.T) {
 | 
						|
	preSharedKey, err := NewPreSharedKey()
 | 
						|
	assert.NoError(t, err)
 | 
						|
	assert.NotEmpty(t, preSharedKey)
 | 
						|
}
 | 
						|
 | 
						|
func TestPublicKeyFromPrivateKeyReturnsCorrectPublicKey(t *testing.T) {
 | 
						|
	privateKey, _ := wgtypes.GeneratePrivateKey()
 | 
						|
	expected := privateKey.PublicKey().String()
 | 
						|
	assert.Equal(t, expected, PublicKeyFromPrivateKey(privateKey.String()))
 | 
						|
}
 | 
						|
 | 
						|
func TestPublicKeyFromPrivateKeyReturnsEmptyStringOnInvalidKey(t *testing.T) {
 | 
						|
	assert.Equal(t, "", PublicKeyFromPrivateKey("invalidKey"))
 | 
						|
}
 |