github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/apiserver/observer/metricobserver/package_test.go (about)

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package metricobserver_test
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/golang/mock/gomock"
    10  	gc "gopkg.in/check.v1"
    11  
    12  	"github.com/juju/juju/apiserver/observer/metricobserver/mocks"
    13  )
    14  
    15  func Test(t *testing.T) {
    16  	gc.TestingT(t)
    17  }
    18  
    19  func createMockMetrics(c *gc.C, labels interface{}) (*mocks.MockMetricsCollector, func()) {
    20  	ctrl := gomock.NewController(c)
    21  
    22  	counter := mocks.NewMockCounter(ctrl)
    23  	counter.EXPECT().Inc().AnyTimes()
    24  
    25  	counterVec := mocks.NewMockCounterVec(ctrl)
    26  	counterVec.EXPECT().With(labels).Return(counter).AnyTimes()
    27  
    28  	summary := mocks.NewMockSummary(ctrl)
    29  	summary.EXPECT().Observe(gomock.Any()).AnyTimes()
    30  
    31  	summaryVec := mocks.NewMockSummaryVec(ctrl)
    32  	summaryVec.EXPECT().With(labels).Return(summary).AnyTimes()
    33  
    34  	metricsCollector := mocks.NewMockMetricsCollector(ctrl)
    35  	metricsCollector.EXPECT().APIRequestDuration().Return(summaryVec).AnyTimes()
    36  
    37  	metricsCollector.EXPECT().DeprecatedAPIRequestsTotal().Return(counterVec).AnyTimes()
    38  	metricsCollector.EXPECT().DeprecatedAPIRequestDuration().Return(summaryVec).AnyTimes()
    39  
    40  	return metricsCollector, ctrl.Finish
    41  }