github.com/hechain20/hechain@v0.0.0-20220316014945-b544036ba106/orderer/common/blockcutter/metrics_test.go (about)

     1  /*
     2  Copyright hechain. All Rights Reserved.
     3  
     4  SPDX-License-Identifier: Apache-2.0
     5  */
     6  
     7  package blockcutter_test
     8  
     9  import (
    10  	. "github.com/onsi/ginkgo"
    11  	. "github.com/onsi/gomega"
    12  
    13  	"github.com/hechain20/hechain/orderer/common/blockcutter"
    14  	"github.com/hechain20/hechain/orderer/common/blockcutter/mock"
    15  )
    16  
    17  var _ = Describe("Metrics", func() {
    18  	Describe("NewMetrics", func() {
    19  		var fakeProvider *mock.MetricsProvider
    20  
    21  		BeforeEach(func() {
    22  			fakeProvider = &mock.MetricsProvider{}
    23  			fakeProvider.NewHistogramReturns(&mock.MetricsHistogram{})
    24  		})
    25  
    26  		It("uses the provider to initialize its field", func() {
    27  			metrics := blockcutter.NewMetrics(fakeProvider)
    28  			Expect(metrics).NotTo(BeNil())
    29  			Expect(metrics.BlockFillDuration).To(Equal(&mock.MetricsHistogram{}))
    30  
    31  			Expect(fakeProvider.NewHistogramCallCount()).To(Equal(1))
    32  		})
    33  	})
    34  })