{
  "ADD_A_RETRY": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_A&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=1790000000123&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=101&form%5Bduration%5D=61&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success",
    "form": {
      "mac": "CDXRE11D7C2_A",
      "mode": "free",
      "modeLabel": "CDX精确跳绳",
      "stoppedAt": "1790000000123",
      "dateKey": "2097-11-02",
      "dateLabel": "2097 marker",
      "timeLabel": "12:34:56",
      "count": "101",
      "duration": "61",
      "calories": "12.25",
      "fatBurnEfficiency": "0.1250",
      "avgFreq": "100",
      "maxFreq": "120",
      "mostJump": "90",
      "ropeTrips": "2",
      "target": {
        "seconds": "60"
      },
      "data": [
        {
          "second": "1",
          "count": "3"
        },
        {
          "second": "2",
          "count": "4"
        }
      ]
    }
  },
  "LATEST_A": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "ADD_B": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_B&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=9007199254740991&form%5BdateKey%5D=2097-11-01&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=102&form%5Bduration%5D=62&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success",
    "form": {
      "mac": "CDXRE11D7C2_B",
      "mode": "free",
      "modeLabel": "CDX精确跳绳",
      "stoppedAt": "9007199254740991",
      "dateKey": "2097-11-01",
      "dateLabel": "2097 marker",
      "timeLabel": "12:34:56",
      "count": "102",
      "duration": "62",
      "calories": "12.25",
      "fatBurnEfficiency": "0.1250",
      "avgFreq": "100",
      "maxFreq": "120",
      "mostJump": "90",
      "ropeTrips": "2",
      "target": {
        "seconds": "60"
      },
      "data": [
        {
          "second": "1",
          "count": "3"
        },
        {
          "second": "2",
          "count": "4"
        }
      ]
    }
  },
  "LATEST_B": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "ADD_C": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_C&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=9007199254740993&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=103&form%5Bduration%5D=63&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success",
    "form": {
      "mac": "CDXRE11D7C2_C",
      "mode": "free",
      "modeLabel": "CDX精确跳绳",
      "stoppedAt": "9007199254740993",
      "dateKey": "2097-11-02",
      "dateLabel": "2097 marker",
      "timeLabel": "12:34:56",
      "count": "103",
      "duration": "63",
      "calories": "12.25",
      "fatBurnEfficiency": "0.1250",
      "avgFreq": "100",
      "maxFreq": "120",
      "mostJump": "90",
      "ropeTrips": "2",
      "target": {
        "seconds": "60"
      },
      "data": [
        {
          "second": "1",
          "count": "3"
        },
        {
          "second": "2",
          "count": "4"
        }
      ]
    }
  },
  "LATEST_C": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "ADD_D": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_D&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=9223372036854775807&form%5BdateKey%5D=2097-11-01&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=104&form%5Bduration%5D=64&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success",
    "form": {
      "mac": "CDXRE11D7C2_D",
      "mode": "free",
      "modeLabel": "CDX精确跳绳",
      "stoppedAt": "9223372036854775807",
      "dateKey": "2097-11-01",
      "dateLabel": "2097 marker",
      "timeLabel": "12:34:56",
      "count": "104",
      "duration": "64",
      "calories": "12.25",
      "fatBurnEfficiency": "0.1250",
      "avgFreq": "100",
      "maxFreq": "120",
      "mostJump": "90",
      "ropeTrips": "2",
      "target": {
        "seconds": "60"
      },
      "data": [
        {
          "second": "1",
          "count": "3"
        },
        {
          "second": "2",
          "count": "4"
        }
      ]
    }
  },
  "LATEST_D": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "LIST_ALL": {
    "method": "GET",
    "path": "/api/RopeSkipping/list",
    "query": "",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "LIST_P1": {
    "method": "GET",
    "path": "/api/RopeSkipping/list",
    "query": "pagesize=1&page=1",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "LIST_P2": {
    "method": "GET",
    "path": "/api/RopeSkipping/list",
    "query": "pagesize=1&page=2",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "LIST_P3": {
    "method": "GET",
    "path": "/api/RopeSkipping/list",
    "query": "pagesize=1&page=3",
    "body_raw": "",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "EMPTY_LATEST": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "two",
    "host": "rope2.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "EMPTY_LIST": {
    "method": "GET",
    "path": "/api/RopeSkipping/list",
    "query": "",
    "body_raw": "",
    "actor": "two",
    "host": "rope2.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "success"
  },
  "CROSS_TOKEN": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "two",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "user_missing"
  },
  "MISSING_TOKEN": {
    "method": "GET",
    "path": "/api/RopeSkipping/latest",
    "query": "",
    "body_raw": "",
    "actor": "none",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "token_missing"
  },
  "INVALID_OVER": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_INVALID_OVER&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=9223372036854775808&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=101&form%5Bduration%5D=61&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "integer"
  },
  "INVALID_ABC": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_INVALID_ABC&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D=abc&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=101&form%5Bduration%5D=61&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "integer"
  },
  "INVALID_ARRAY": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_INVALID_ARRAY&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BstoppedAt%5D%5Bx%5D=1&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=101&form%5Bduration%5D=61&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "integer"
  },
  "INVALID_MISSING": {
    "method": "POST",
    "path": "/api/RopeSkipping/add",
    "query": "",
    "body_raw": "form%5Bmac%5D=CDXRE11D7C2_INVALID_MISSING&form%5Bmode%5D=free&form%5BmodeLabel%5D=CDX%E7%B2%BE%E7%A1%AE%E8%B7%B3%E7%BB%B3&form%5BdateKey%5D=2097-11-02&form%5BdateLabel%5D=2097+marker&form%5BtimeLabel%5D=12%3A34%3A56&form%5Bcount%5D=101&form%5Bduration%5D=61&form%5Bcalories%5D=12.25&form%5BfatBurnEfficiency%5D=0.1250&form%5BavgFreq%5D=100&form%5BmaxFreq%5D=120&form%5BmostJump%5D=90&form%5BropeTrips%5D=2&form%5Btarget%5D%5Bseconds%5D=60&form%5Bdata%5D%5B0%5D%5Bsecond%5D=1&form%5Bdata%5D%5B0%5D%5Bcount%5D=3&form%5Bdata%5D%5B1%5D%5Bsecond%5D=2&form%5Bdata%5D%5B1%5D%5Bcount%5D=4",
    "actor": "one",
    "host": "rope1.exact.invalid",
    "platform": "APP",
    "version": "2.0.46",
    "expected": "required"
  }
}
