github.com/osdi23p228/fabric@v0.0.0-20221218062954-77808885f5db/bccsp/pkcs11/ecdsakey_test.go (about)

     1  // +build pkcs11
     2  
     3  /*
     4  Copyright IBM Corp. All Rights Reserved.
     5  
     6  SPDX-License-Identifier: Apache-2.0
     7  */
     8  
     9  package pkcs11
    10  
    11  import (
    12  	"crypto/x509"
    13  	"testing"
    14  
    15  	"github.com/osdi23p228/fabric/bccsp"
    16  	"github.com/stretchr/testify/assert"
    17  )
    18  
    19  func TestX509PublicKeyImportOptsKeyImporter(t *testing.T) {
    20  	ki := currentBCCSP
    21  
    22  	_, err := ki.KeyImport("Hello World", &bccsp.X509PublicKeyImportOpts{})
    23  	assert.Error(t, err)
    24  	assert.Contains(t, err.Error(), "[X509PublicKeyImportOpts] Invalid raw material. Expected *x509.Certificate")
    25  
    26  	_, err = ki.KeyImport(nil, &bccsp.X509PublicKeyImportOpts{})
    27  	assert.Error(t, err)
    28  	assert.Contains(t, err.Error(), "Invalid raw. Cannot be nil")
    29  
    30  	cert := &x509.Certificate{}
    31  	cert.PublicKey = "Hello world"
    32  	_, err = ki.KeyImport(cert, &bccsp.X509PublicKeyImportOpts{})
    33  	assert.Error(t, err)
    34  	assert.Contains(t, err.Error(), "Certificate's public key type not recognized. Supported keys: [ECDSA]")
    35  }