forked from cloudfoundry/noaa
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sort_recent_test.go
34 lines (25 loc) · 944 Bytes
/
sort_recent_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package noaa_test
import (
"github.com/cloudfoundry/noaa"
"github.com/cloudfoundry/sonde-go/events"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
)
var _ = Describe("SortRecent", func() {
var messages []*events.LogMessage
BeforeEach(func() {
messages = []*events.LogMessage{createLogMessage("hello", 2), createLogMessage("konnichiha", 1)}
})
It("sorts messages", func() {
sortedMessages := noaa.SortRecent(messages)
Expect(*sortedMessages[0].Timestamp).To(Equal(int64(1)))
Expect(*sortedMessages[1].Timestamp).To(Equal(int64(2)))
})
It("sorts using a stable algorithm", func() {
messages = append(messages, createLogMessage("guten tag", 1))
sortedMessages := noaa.SortRecent(messages)
Expect(sortedMessages[0].GetMessage()).To(Equal([]byte("konnichiha")))
Expect(sortedMessages[1].GetMessage()).To(Equal([]byte("guten tag")))
Expect(sortedMessages[2].GetMessage()).To(Equal([]byte("hello")))
})
})