blob: 2de6335f1d262562e866d36e4a04cd0f806ca0dd [file] [log] [blame]
package quotaBucket_test
//
//import (
// "github.com/30x/apidQuota/constants"
// . "github.com/30x/apidQuota/quotaBucket"
// . "github.com/onsi/ginkgo"
// . "github.com/onsi/gomega"
// "strings"
// "time"
//)
//
//var _ = Describe("Test QuotaPeriod", func() {
// It("Valid NewQuotaPeriod", func() {
// //startTime before endTime
// period := NewQuotaPeriod(time.Now().UTC().AddDate(0, -1, 0).Unix(),
// time.Now().UTC().AddDate(0, 0, -1).Unix(),
// time.Now().UTC().AddDate(0, 1, 0).Unix())
// isValid, err := period.Validate()
//
// if !isValid {
// Fail("expected isValid true but got false")
// }
// if err != nil {
// Fail("expected error <nil> but got " + err.Error())
// }
// })
//
// It("Invalid NewQuotaPeriod", func() {
// //startTime after endTime
// period := NewQuotaPeriod(time.Now().UTC().AddDate(0, -1, 0).Unix(),
// time.Now().UTC().AddDate(0, 1, 0).Unix(),
// time.Now().UTC().AddDate(0, 0, -1).Unix())
// isValid, err := period.Validate()
// if isValid {
// Fail("Expected isValid false but got true")
// }
//
// if err == nil {
// Fail(" Expected error but got <nil>")
// }
//
// //startTime same as endTime
// period = NewQuotaPeriod(time.Now().UTC().AddDate(0, -1, 0).Unix(),
// time.Now().UTC().AddDate(0, 1, 0).Unix(),
// time.Now().UTC().AddDate(0, 1, 0).Unix())
// isValid, err = period.Validate()
// if isValid {
// Fail("Expected isValid false but got true")
// }
//
// if err == nil {
// Fail(" Expected error but got <nil>")
// }
//
// })
//})
//
//var _ = Describe("Test AcceptedQuotaTimeUnitTypes", func() {
// It("testTimeUnit", func() {
// if !IsValidTimeUnit("second") {
// Fail("Expected true: second is a valid TimeUnit")
// }
// if !IsValidTimeUnit("minute") {
// Fail("Expected true: minute is a valid TimeUnit")
// }
// if !IsValidTimeUnit("hour") {
// Fail("Expected true: hour is a valid TimeUnit")
// }
// if !IsValidTimeUnit("day") {
// Fail("Expected true: day is a valid TimeUnit")
// }
// if !IsValidTimeUnit("week") {
// Fail("Expected true: week is a valid TimeUnit")
// }
// if !IsValidTimeUnit("month") {
// Fail("Expected true: month is a valid TimeUnit")
// }
//
// //invalid type
// if IsValidTimeUnit("invalidType") {
// Fail("Expected false: invalidType is not a valid TimeUnit")
// }
// })
//})
//
////Tests for QuotaBucket
//var _ = Describe("QuotaBucket", func() {
// It("Create with NewQuotaBucket", func() {
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// interval := 1
// timeUnit := "hour"
// quotaType := "calendar"
// preciseAtSecondsLevel := true
// maxCount := int64(10)
// weight := int64(1)
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// //start time before now()
// startTime := time.Now().UTC().AddDate(0, -1, 0).Unix()
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
// now := time.Now().UTC()
// currentHour := time.Date(now.Year(), now.Month(), now.Day(), now.Hour(), 0, 0, 0, time.UTC)
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// //also check if all the fields are set as expected
// sTime := time.Unix(startTime, 0)
// Expect(sTime).To(Equal(quotaBucket.GetStartTime()))
// Expect(edgeOrgID).To(Equal(quotaBucket.GetEdgeOrgID()))
// Expect(id).To(Equal(quotaBucket.GetID()))
// Expect(timeUnit).To(Equal(quotaBucket.GetTimeUnit()))
// Expect(quotaType).To(Equal(quotaBucket.GetType()))
// Expect(interval).To(Equal(quotaBucket.GetInterval()))
// Expect(maxCount).To(Equal(quotaBucket.GetMaxCount()))
// Expect(preciseAtSecondsLevel).To(Equal(quotaBucket.GetIsPreciseAtSecondsLevel()))
// getPeriod, err := quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
// Expect(getPeriod.GetPeriodInputStartTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodStartTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodEndTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodStartTime().String()).Should(Equal(currentHour.String()))
// Expect(getPeriod.GetPeriodEndTime().String()).Should(Equal(currentHour.Add(time.Hour).String()))
//
// //start time is after now() -> should still set period.
// startTime = time.Now().UTC().AddDate(0, 1, 0).Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// now = time.Now().UTC()
// currentHour = time.Date(now.Year(), now.Month(), now.Day(), now.Hour(), 0, 0, 0, time.UTC)
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// getPeriod, err = quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
// Expect(getPeriod.GetPeriodInputStartTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodStartTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodEndTime().String()).ShouldNot(BeEmpty())
// Expect(getPeriod.GetPeriodStartTime().String()).Should(Equal(currentHour.String()))
// Expect(getPeriod.GetPeriodEndTime().String()).Should(Equal(currentHour.Add(time.Hour).String()))
//
// })
//
// //end before start
// It("Test invalid quotaPeriod", func() {
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "calendar"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// startTime := time.Now().UTC().AddDate(0, -1, 0).Unix()
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 1, 0), time.Now().UTC().AddDate(0, 0, -1))
// err = quotaBucket.Validate()
// if err == nil {
// Fail("error expected but got <nil>")
// }
// if !strings.Contains(err.Error(), constants.InvalidQuotaPeriod) {
// Fail("expected: " + constants.InvalidQuotaPeriod + " in the error but got: " + err.Error())
// }
//
// })
//
// It("Test invalid timeUnitType", func() {
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "invalidTimeUnit"
// quotaType := "calendar"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// startTime := time.Now().UTC().AddDate(0, -1, 0).Unix()
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).To(HaveOccurred())
//
// if !strings.Contains(err.Error(), constants.InvalidQuotaTimeUnitType) {
// Fail("expected: " + constants.InvalidQuotaTimeUnitType + "but got: " + err.Error())
// }
// if quotaBucket != nil {
// Fail("quotaBucket returned should be nil.")
// }
//
// })
//
//})
//
//var _ = Describe("IsCurrentPeriod", func() {
// It("Test IsCurrentPeriod for RollingType Window - Valid TestCase", func() {
//
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "rollingwindow"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// //InputStart time is before now
// startTime := time.Now().UTC().AddDate(0, -1, 0).Unix()
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// period, err := quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected")
// }
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //InputStart time is now
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected")
// }
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
// })
//
// It("Test IsCurrentPeriod for RollingType Window - InValid TestCase", func() {
//
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "rollingwindow"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// //InputStart time is after now.
// startTime := time.Now().UTC().AddDate(0, 1, 0).Unix()
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, -1, 0), time.Now().UTC().AddDate(0, 0, 1))
// period, err := quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected true, returned: false")
// }
//
// //endTime before startTime in period
// startTime = time.Now().UTC().AddDate(0, -1, 0).Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC(), time.Now().UTC().AddDate(0, -1, 0))
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected false, returned: true")
// }
// })
//
// It("Test IsCurrentPeriod for calendarType Window - Valid TestCases", func() {
//
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "calendar"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// //InputStart time is before now
// startTime := time.Now().UTC().UTC().AddDate(-1, -1, 0).Unix()
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// period, err := quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //InputStart time is now
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //start Time in period is before now
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 0, -1),
// time.Now().UTC().AddDate(0, 1, 0))
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //start Time in period is now
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
// quotaBucket.SetPeriod(time.Now().UTC(),
// time.Now().UTC().AddDate(0, 1, 0))
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //end Time in period is after now
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 0, -1),
// time.Now().UTC().AddDate(0, 1, 0))
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
//
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// //start time in period is before end time
// startTime = time.Now().UTC().Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 0, -1),
// time.Now().UTC().AddDate(0, 1, 0))
// period, err = quotaBucket.GetPeriod()
// if err != nil {
// Fail("no error expected but returned " + err.Error())
// }
// period.IsCurrentPeriod(quotaBucket)
// if ok := period.IsCurrentPeriod(quotaBucket); !ok {
// Fail("Exprected true, returned: false")
// }
//
// })
//
// It("Test IsCurrentPeriod for calendarType Window InValid TestCase", func() {
//
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "calendar"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// //InputStart time is after now.
// period := NewQuotaPeriod(time.Now().UTC().AddDate(0, 1, 0).Unix(),
// time.Now().UTC().AddDate(0, 1, 0).Unix(), time.Now().AddDate(1, 0, 1).Unix())
// startTime := time.Now().UTC().AddDate(0, 1, 0).Unix()
//
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected true, returned: false")
// }
//
// //endTime is before start time
// startTime = time.Now().UTC().AddDate(0, -1, 0).Unix()
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC(), time.Now().UTC().AddDate(0, -1, 0))
//
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected true, returned: false")
// }
//
// //start time in period after now
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 1, 0), time.Now().UTC().AddDate(1, 1, 0))
//
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected true, returned: false")
// }
//
// //end time in period is before now
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(-1, -1, 0), time.Now().UTC().AddDate(0, -1, 0))
//
// if ok := period.IsCurrentPeriod(quotaBucket); ok {
// Fail("Exprected true, returned: false")
// }
//
// })
//})
//
//var _ = Describe("Test GetPeriod and setCurrentPeriod", func() {
// It("Valid GetPeriod", func() {
// edgeOrgID := "sampleOrg"
// id := "sampleID"
// timeUnit := "hour"
// quotaType := "rollingwindow"
// interval := 1
// maxCount := int64(10)
// weight := int64(1)
// preciseAtSecondsLevel := true
// distributed := true
// synchronous := true
// syncTimeInSec := int64(-1)
// syncMessageCount := int64(-1)
//
// //InputStart time is before now
// startTime := time.Now().UTC().AddDate(0, -1, 0).Unix()
// quotaBucket, err := NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(time.Now().UTC().AddDate(0, 0, -1), time.Now().UTC().AddDate(0, 1, 0))
// err = quotaBucket.Validate()
// Expect(err).NotTo(HaveOccurred())
// qPeriod, err := quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
//
// // check if the rolling window was set properly
// Expect(qPeriod.GetPeriodInputStartTime()).Should(Equal(quotaBucket.GetStartTime()))
// if !qPeriod.GetPeriodEndTime().After(qPeriod.GetPeriodStartTime()) {
// Fail("Rolling Window was not set as expected")
// }
// intervalDuration := qPeriod.GetPeriodEndTime().Sub(qPeriod.GetPeriodStartTime())
// expectedDuration, err := GetIntervalDurtation(quotaBucket)
// Expect(intervalDuration).Should(Equal(expectedDuration))
//
// //for non rolling Type window do not setCurrentPeriod as endTime is > time.now.
// quotaType = "calendar"
// pstartTime := time.Now().UTC().AddDate(0, -1, 0)
// pendTime := time.Now().UTC().AddDate(0, 1, 0)
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(pstartTime, pendTime)
// qPeriod, err = quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
// // check if the calendar window was set properly
// Expect(qPeriod.GetPeriodInputStartTime()).Should(Equal(quotaBucket.GetStartTime()))
// if !qPeriod.GetPeriodEndTime().After(qPeriod.GetPeriodStartTime()) {
// Fail("Rolling Window was not set as expected")
// }
//
// //for non rolling Type window setCurrentPeriod as endTime is < time.now.
// quotaType = "calendar"
// pstartTime = time.Now().UTC().AddDate(0, -1, 0)
// pendTime = time.Now().UTC().AddDate(0, -1, 0)
// quotaBucket, err = NewQuotaBucket(edgeOrgID, id, interval, timeUnit,
// quotaType, preciseAtSecondsLevel, startTime, maxCount,
// weight, distributed, synchronous, syncTimeInSec, syncMessageCount)
// Expect(err).NotTo(HaveOccurred())
//
// quotaBucket.SetPeriod(pstartTime, pendTime)
// qPeriod, err = quotaBucket.GetPeriod()
// Expect(err).NotTo(HaveOccurred())
// // check if the calendar window was set properly
// Expect(qPeriod.GetPeriodInputStartTime()).Should(Equal(quotaBucket.GetStartTime()))
// if !qPeriod.GetPeriodEndTime().After(qPeriod.GetPeriodStartTime()) {
// Fail("period for Non Rolling Window Type was not set as expected")
// }
// intervalDuration = qPeriod.GetPeriodEndTime().Sub(qPeriod.GetPeriodStartTime())
// expectedDuration, err = GetIntervalDurtation(quotaBucket)
// Expect(intervalDuration).Should(Equal(expectedDuration))
// })
//})