certmanager updated
This commit is contained in:
263
internal/test/logic_issuer_create_test.go
Normal file
263
internal/test/logic_issuer_create_test.go
Normal file
@@ -0,0 +1,263 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
cmapi "certmanager/api/certmanagercontrol"
|
||||
"certmanager/internal/config"
|
||||
"certmanager/internal/database"
|
||||
"certmanager/internal/logic"
|
||||
"certmanager/pkg/cm509"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestIssuerCreateV0(t *testing.T) {
|
||||
var err error
|
||||
var lg *logic.Logic
|
||||
{
|
||||
conf := config.NewConfig()
|
||||
err = conf.ReadFile()
|
||||
require.NoError(t, err)
|
||||
|
||||
db, err := database.NewDatabase(conf.DataDir)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, db)
|
||||
|
||||
err = db.InitDatabase()
|
||||
require.NoError(t, err)
|
||||
|
||||
logicConfig := &logic.LogicConfig{
|
||||
Auths: conf.Auths,
|
||||
Database: db,
|
||||
}
|
||||
lg, err = logic.NewLogic(logicConfig)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, lg)
|
||||
}
|
||||
|
||||
ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)
|
||||
|
||||
signerCommonName := "foo.bar"
|
||||
var signerID int64
|
||||
var signerCert string
|
||||
var signerName string
|
||||
{
|
||||
createIssuerPairParams := &cmapi.CreateIssuerPairParams{
|
||||
IssuerCommonName: signerCommonName,
|
||||
}
|
||||
createIssuerPairRes, err := lg.CreateIssuerPair(ctx, createIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, createIssuerPairRes)
|
||||
|
||||
signerID = createIssuerPairRes.IssuerID
|
||||
printObj("signerID", signerID)
|
||||
|
||||
signerCert = createIssuerPairRes.Certificate
|
||||
printObj("signerCert", signerCert)
|
||||
|
||||
signerName = createIssuerPairRes.IssuerName
|
||||
printObj("signerName", signerName)
|
||||
|
||||
signerCertObj, err := cm509.ParseDoubleEncodedCerificate(signerCert)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, signerCertObj)
|
||||
printObj("signerCertObj Subject", signerCertObj.Subject.String())
|
||||
printObj("signerCertObj Issuer", signerCertObj.Issuer.String())
|
||||
}
|
||||
issuerCommonName := "make.love.not.war"
|
||||
var issuerID int64
|
||||
var issuerCert string
|
||||
var issuerName string
|
||||
{
|
||||
createIssuerPairParams := &cmapi.CreateIssuerPairParams{
|
||||
IssuerCommonName: issuerCommonName,
|
||||
SignerID: signerID,
|
||||
}
|
||||
createIssuerPairRes, err := lg.CreateIssuerPair(ctx, createIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, createIssuerPairRes)
|
||||
|
||||
issuerID = createIssuerPairRes.IssuerID
|
||||
printObj("issuerID", issuerID)
|
||||
|
||||
issuerCert = createIssuerPairRes.Certificate
|
||||
printObj("issuerCert", issuerCert)
|
||||
|
||||
issuerName = createIssuerPairRes.IssuerName
|
||||
printObj("issuerName", issuerName)
|
||||
|
||||
issuerCertObj, err := cm509.ParseDoubleEncodedCerificate(issuerCert)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, issuerCertObj)
|
||||
printObj("issuerCertObj Subject", issuerCertObj.Subject.String())
|
||||
printObj("issuerCertObj Issuer", issuerCertObj.Issuer.String())
|
||||
|
||||
require.NotEqual(t, issuerCertObj.Subject.String(), issuerCertObj.Issuer.String())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func XXXTestIssuerCreate(t *testing.T) {
|
||||
var err error
|
||||
var lg *logic.Logic
|
||||
{
|
||||
conf := config.NewConfig()
|
||||
err = conf.ReadFile()
|
||||
require.NoError(t, err)
|
||||
|
||||
db, err := database.NewDatabase(conf.DataDir)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, db)
|
||||
|
||||
err = db.InitDatabase()
|
||||
require.NoError(t, err)
|
||||
|
||||
logicConfig := &logic.LogicConfig{
|
||||
Auths: conf.Auths,
|
||||
Database: db,
|
||||
}
|
||||
lg, err = logic.NewLogic(logicConfig)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, lg)
|
||||
}
|
||||
|
||||
ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)
|
||||
|
||||
issuerCommonName := "foo.bar"
|
||||
var issuerID int64
|
||||
var issuerCert string
|
||||
{
|
||||
createIssuerPairParams := &cmapi.CreateIssuerPairParams{
|
||||
IssuerCommonName: issuerCommonName,
|
||||
}
|
||||
createIssuerPairRes, err := lg.CreateIssuerPair(ctx, createIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, createIssuerPairRes)
|
||||
issuerID = createIssuerPairRes.IssuerID
|
||||
printObj("issuerID", issuerID)
|
||||
printObj("issuerID", issuerID)
|
||||
}
|
||||
{
|
||||
getIssuerCertificateParams := &cmapi.GetIssuerCertificateParams{
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
getIssuerCertificateRes, err := lg.GetIssuerCertificate(ctx, getIssuerCertificateParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, getIssuerCertificateRes)
|
||||
require.NotZero(t, len(getIssuerCertificateRes.Certificate))
|
||||
|
||||
printObj("getIssuerCertificateRes", getIssuerCertificateRes)
|
||||
require.NoError(t, err)
|
||||
|
||||
issuerCert = getIssuerCertificateRes.Certificate
|
||||
require.NotZero(t, len(issuerCert))
|
||||
printObj("issuerCert", string(issuerCert))
|
||||
}
|
||||
{
|
||||
revokeIssuerPairParams := &cmapi.RevokeIssuerPairParams{
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
revokeIssuerPairRes, err := lg.RevokeIssuerPair(ctx, revokeIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, revokeIssuerPairRes)
|
||||
|
||||
printObj("revokeIssuerPairRes", revokeIssuerPairRes)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
{
|
||||
getIssuerCertificateParams := &cmapi.GetIssuerCertificateParams{
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
getIssuerCertificateRes, err := lg.GetIssuerCertificate(ctx, getIssuerCertificateParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, getIssuerCertificateRes)
|
||||
require.NotZero(t, len(getIssuerCertificateRes.Certificate))
|
||||
require.True(t, getIssuerCertificateRes.Revoked)
|
||||
|
||||
printObj("getIssuerCertificateRes", getIssuerCertificateRes)
|
||||
}
|
||||
{
|
||||
unrevokeIssuerPairParams := &cmapi.UnrevokeIssuerPairParams{
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
unrevokeIssuerPairRes, err := lg.UnrevokeIssuerPair(ctx, unrevokeIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, unrevokeIssuerPairRes)
|
||||
|
||||
printObj("unrevokeIssuerPairRes", unrevokeIssuerPairRes)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
{
|
||||
getIssuerCertificateParams := &cmapi.GetIssuerCertificateParams{
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
getIssuerCertificateRes, err := lg.GetIssuerCertificate(ctx, getIssuerCertificateParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, getIssuerCertificateRes)
|
||||
require.NotZero(t, len(getIssuerCertificateRes.Certificate))
|
||||
require.False(t, getIssuerCertificateRes.Revoked)
|
||||
|
||||
printObj("getIssuerCertificateRes", getIssuerCertificateRes)
|
||||
}
|
||||
{
|
||||
listIssuerPairsParams := &cmapi.ListIssuerPairsParams{}
|
||||
listIssuerPairsRes, err := lg.ListIssuerPairs(ctx, listIssuerPairsParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, listIssuerPairsRes)
|
||||
require.NotZero(t, len(listIssuerPairsRes.Issuers))
|
||||
|
||||
printObj("listIssuerPairRes", listIssuerPairsRes)
|
||||
}
|
||||
{
|
||||
for i := 0; i < 3; i++ {
|
||||
createIssuerPairParams := &cmapi.CreateIssuerPairParams{
|
||||
IssuerCommonName: fmt.Sprintf("sub%0d.%s", i, issuerCommonName),
|
||||
}
|
||||
createIssuerPairRes, err := lg.CreateIssuerPair(ctx, createIssuerPairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, createIssuerPairRes)
|
||||
issuerID = createIssuerPairRes.IssuerID
|
||||
printObj("issuerID", issuerID)
|
||||
}
|
||||
}
|
||||
{
|
||||
listIssuerPairsParams := &cmapi.ListIssuerPairsParams{}
|
||||
listIssuerPairsRes, err := lg.ListIssuerPairs(ctx, listIssuerPairsParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, listIssuerPairsRes)
|
||||
require.NotZero(t, len(listIssuerPairsRes.Issuers))
|
||||
|
||||
printObj("listIssuerPairRes", listIssuerPairsRes)
|
||||
}
|
||||
serviceCommonName := "make.love.not.war"
|
||||
var serviceID int64
|
||||
{
|
||||
createServicePairParams := &cmapi.CreateServicePairParams{
|
||||
ServiceCommonName: serviceCommonName,
|
||||
IssuerID: issuerID,
|
||||
}
|
||||
createServicePairRes, err := lg.CreateServicePair(ctx, createServicePairParams)
|
||||
printObj("createServicePairRes", createServicePairRes)
|
||||
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, createServicePairRes)
|
||||
serviceID = createServicePairRes.ServiceID
|
||||
printObj("serviceID", serviceID)
|
||||
}
|
||||
{
|
||||
getServicePairParams := &cmapi.GetServicePairParams{
|
||||
ServiceID: serviceID,
|
||||
}
|
||||
getServicePairRes, err := lg.GetServicePair(ctx, getServicePairParams)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, getServicePairRes)
|
||||
require.NotZero(t, len(getServicePairRes.Certificate))
|
||||
require.False(t, getServicePairRes.Revoked)
|
||||
|
||||
printObj("getServicePairRes", getServicePairRes)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user