response_parser_specs.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. import _ from 'lodash';
  2. import {describe, beforeEach, it, sinon, expect} from 'test/lib/common';
  3. import ResponseParser from '../response_parser';
  4. describe("influxdb response parser", () => {
  5. this.parser = new ResponseParser();
  6. describe("SHOW_TAGS response", () => {
  7. describe("response from 0.10.0", () => {
  8. var response = {
  9. "results": [
  10. {
  11. "series": [
  12. {
  13. "name": "hostnameTagValues",
  14. "columns": ["hostname"],
  15. "values": [ ["server1"], ["server2"] ]
  16. }
  17. ]
  18. }
  19. ]
  20. };
  21. var result = this.parser.parse('SHOW_TAGS', response);
  22. it("should get two responses", () => {
  23. expect(_.size(result)).to.be(2);
  24. expect(result[0].text).to.be("server1");
  25. expect(result[1].text).to.be("server2");
  26. });
  27. });
  28. describe("response from 0.11.0", () => {
  29. var response = {
  30. "results": [
  31. {
  32. "series": [
  33. {
  34. "name": "cpu",
  35. "columns": [ "key", "value"],
  36. "values": [ [ "source", "site" ], [ "source", "api" ] ]
  37. }
  38. ]
  39. }
  40. ]
  41. };
  42. var result = this.parser.parse('SHOW_TAGS', response);
  43. it("should get two responses", () => {
  44. expect(_.size(result)).to.be(2);
  45. expect(result[0].text).to.be('site');
  46. expect(result[1].text).to.be('api');
  47. });
  48. });
  49. });
  50. describe("SHOW_FIELDS response", () => {
  51. describe("response from 0.10.0", () => {
  52. var response = {
  53. "results": [
  54. {
  55. "series": [
  56. {
  57. "name": "measurements",
  58. "columns": ["name"],
  59. "values": [
  60. ["cpu"], ["derivative"], ["logins.count"], ["logs"], ["payment.ended"], ["payment.started"]
  61. ]
  62. }
  63. ]
  64. }
  65. ]
  66. };
  67. var result = this.parser.parse('SHOW_FIELDS', response);
  68. it("should get two responses", () => {
  69. expect(_.size(result)).to.be(6);
  70. });
  71. });
  72. describe("response from 0.11.0", () => {
  73. var response = {
  74. "results": [
  75. {
  76. "series": [
  77. {
  78. "name": "cpu",
  79. "columns": ["fieldKey"],
  80. "values": [ [ "value"] ]
  81. }
  82. ]
  83. }
  84. ]
  85. };
  86. var result = this.parser.parse('SHOW_FIELDS', response);
  87. it("should get two responses", () => {
  88. expect(_.size(result)).to.be(1);
  89. });
  90. });
  91. });
  92. });