Skip to content

Commit

Permalink
Add contexts for the delete case
Browse files Browse the repository at this point in the history
  • Loading branch information
jmrodri committed Jul 30, 2020
1 parent 4aeafe4 commit 3aa8b62
Showing 1 changed file with 60 additions and 23 deletions.
83 changes: 60 additions & 23 deletions handler/instrumented_enqueue_object_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,30 +80,67 @@ var _ = Describe("InstrumentedEnqueueRequestForObject", func() {
})

Describe("Delete", func() {
It("should enqueue a request & remove the metric on a DeleteEvent", func() {
evt := event.DeleteEvent{
Object: pod,
Meta: pod.GetObjectMeta(),
}

// test the delete
instance.Delete(evt, q)

// verify workqueue
Expect(q.Len()).To(Equal(1))
i, _ := q.Get()
Expect(i).To(Equal(reconcile.Request{
NamespacedName: types.NamespacedName{
Namespace: pod.Namespace,
Name: pod.Name,
},
}))

// verify metrics
gauges, err := metrics.Registry.Gather()
Expect(err).NotTo(HaveOccurred())
Expect(len(gauges)).To(Equal(0))
Context("when a gauge already exists", func() {
BeforeEach(func() {
evt := event.CreateEvent{
Object: pod,
Meta: pod.GetObjectMeta(),
}
instance.Create(evt, q)
Expect(q.Len()).To(Equal(1))
})
It("should enqueue a request & remove the metric on a DeleteEvent", func() {
evt := event.DeleteEvent{
Object: pod,
Meta: pod.GetObjectMeta(),
}

// test the delete
instance.Delete(evt, q)

// verify workqueue
Expect(q.Len()).To(Equal(1))
i, _ := q.Get()
Expect(i).To(Equal(reconcile.Request{
NamespacedName: types.NamespacedName{
Namespace: pod.Namespace,
Name: pod.Name,
},
}))

// verify metrics
gauges, err := metrics.Registry.Gather()
Expect(err).NotTo(HaveOccurred())
Expect(len(gauges)).To(Equal(0))
})
})
Context("when a gauge does not exist", func() {
It("should enqueue a request & there should be no new metric on a DeleteEvent", func() {
evt := event.DeleteEvent{
Object: pod,
Meta: pod.GetObjectMeta(),
}

// test the delete
instance.Delete(evt, q)

// verify workqueue
Expect(q.Len()).To(Equal(1))
i, _ := q.Get()
Expect(i).To(Equal(reconcile.Request{
NamespacedName: types.NamespacedName{
Namespace: pod.Namespace,
Name: pod.Name,
},
}))

// verify metrics
gauges, err := metrics.Registry.Gather()
Expect(err).NotTo(HaveOccurred())
Expect(len(gauges)).To(Equal(0))
})
})

})

Describe("Update", func() {
Expand Down

0 comments on commit 3aa8b62

Please sign in to comment.