| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- package mqe
- import (
- "testing"
- "net/http"
- "strings"
- "io/ioutil"
- . "github.com/smartystreets/goconvey/convey"
- )
- var (
- dummieJson string
- )
- func TestMQEResponseParser(t *testing.T) {
- Convey("MQE response parser", t, func() {
- parser := NewResponseParser()
- Convey("Can parse response", func() {
- response := &http.Response{
- StatusCode: 200,
- Body: ioutil.NopCloser(strings.NewReader(dummieJson)),
- }
- res, err := parser.Parse(response)
- So(err, ShouldBeNil)
- So(len(res.Series), ShouldEqual, 2)
- So(len(res.Series[0].Points), ShouldEqual, 11)
- })
- })
- }
- func init() {
- dummieJson = `{
- "success": true,
- "name": "select",
- "body": [
- {
- "query": "os.disk.sda3.weighted_io_time",
- "name": "os.disk.sda3.weighted_io_time",
- "type": "series",
- "series": [
- {
- "tagset": {
- "app": "demoapp",
- "host": "staples-lab-1"
- },
- "values": [1,2,3,4,5,6,7,8,9,10,11]
- },
- {
- "tagset": {
- "app": "demoapp",
- "host": "staples-lab-2"
- },
- "values": [11,10,9,8,7,6,5,4,3,2,1]
- }
- ],
- "timerange": {
- "start": 1479287280000,
- "end": 1479287580000,
- "resolution": 30000
- }
- }
- ],
- "metadata": {
- "description": {
- "app": [
- "demoapp"
- ],
- "host": [
- "staples-lab-1",
- "staples-lab-2"
- ]
- },
- "notes": null,
- "profile": [
- {
- "name": "Parsing Query",
- "start": "2016-11-16T04:16:21.874354721-05:00",
- "finish": "2016-11-16T04:16:21.874762291-05:00"
- },
- {
- "name": "Cassandra GetAllTags",
- "start": "2016-11-16T04:16:21.874907171-05:00",
- "finish": "2016-11-16T04:16:21.876401922-05:00"
- },
- {
- "name": "CachedMetricMetadataAPI_GetAllTags_Expired",
- "start": "2016-11-16T04:16:21.874904751-05:00",
- "finish": "2016-11-16T04:16:21.876407852-05:00"
- },
- {
- "name": "CachedMetricMetadataAPI_GetAllTags",
- "start": "2016-11-16T04:16:21.874899491-05:00",
- "finish": "2016-11-16T04:16:21.876410382-05:00"
- },
- {
- "name": "Blueflood FetchSingleTimeseries Resolution",
- "description": "os.disk.sda3.weighted_io_time [app=demoapp,host=staples-lab-1]\n at 30s",
- "start": "2016-11-16T04:16:21.876623312-05:00",
- "finish": "2016-11-16T04:16:21.881763444-05:00"
- },
- {
- "name": "Blueflood FetchSingleTimeseries Resolution",
- "description": "os.disk.sda3.weighted_io_time [app=demoapp,host=staples-lab-2]\n at 30s",
- "start": "2016-11-16T04:16:21.876642682-05:00",
- "finish": "2016-11-16T04:16:21.881895914-05:00"
- },
- {
- "name": "Blueflood FetchMultipleTimeseries",
- "start": "2016-11-16T04:16:21.876418022-05:00",
- "finish": "2016-11-16T04:16:21.881921474-05:00"
- }
- ]
- }
- }
- `
- }
|