axis.boundaryGap.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345
  1. describe('axis', function () {
  2. var uiHelper = window.uiHelper;
  3. var suites = [{
  4. name: 'boundaryGap',
  5. cases: [{
  6. name: 'should display gap for positive data',
  7. test: 'equalOption',
  8. option1: {
  9. xAxis: {
  10. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  11. },
  12. yAxis: {
  13. boundaryGap: '20%'
  14. },
  15. series: [{
  16. type: 'bar',
  17. data: [60, 15, 10, 12]
  18. }]
  19. },
  20. option2: {
  21. xAxis: {
  22. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  23. },
  24. yAxis: {
  25. min: 0,
  26. max: 70
  27. },
  28. series: [{
  29. type: 'bar',
  30. data: [60, 15, 10, 12]
  31. }]
  32. }
  33. }, {
  34. name: 'should not display negative gap for positive data',
  35. test: 'equalOption',
  36. option1: {
  37. xAxis: {
  38. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  39. },
  40. yAxis: {
  41. boundaryGap: '200%'
  42. },
  43. series: [{
  44. type: 'bar',
  45. data: [60, 15, 10, 12]
  46. }]
  47. },
  48. option2: {
  49. xAxis: {
  50. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  51. },
  52. yAxis: {
  53. min: 0,
  54. max: 180
  55. },
  56. series: [{
  57. type: 'bar',
  58. data: [60, 15, 10, 12]
  59. }]
  60. }
  61. }, {
  62. name: 'should not display positive gap for negative data',
  63. test: 'equalOption',
  64. option1: {
  65. xAxis: {
  66. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  67. },
  68. yAxis: {
  69. boundaryGap: '200%'
  70. },
  71. series: [{
  72. type: 'bar',
  73. data: [-60, -15, -10, -12]
  74. }]
  75. },
  76. option2: {
  77. xAxis: {
  78. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  79. },
  80. yAxis: {
  81. min: -180,
  82. max: 0
  83. },
  84. series: [{
  85. type: 'bar',
  86. data: [-60, -15, -10, -12]
  87. }]
  88. }
  89. }, {
  90. name: 'should display both gap for those containing positive '
  91. + 'and negative data',
  92. test: 'equalOption',
  93. option1: {
  94. xAxis: {
  95. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  96. },
  97. yAxis: {
  98. boundaryGap: '20%'
  99. },
  100. series: [{
  101. type: 'bar',
  102. data: [40, 15, -10, 12]
  103. }]
  104. },
  105. option2: {
  106. xAxis: {
  107. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  108. },
  109. yAxis: {
  110. min: -20,
  111. max: 50
  112. },
  113. series: [{
  114. type: 'bar',
  115. data: [40, 15, -10, 12]
  116. }]
  117. }
  118. }, {
  119. name: 'should not display gap by default',
  120. test: 'equalOption',
  121. option1: {
  122. xAxis: {
  123. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  124. },
  125. yAxis: {
  126. },
  127. series: [{
  128. type: 'bar',
  129. data: [40, 15, -10, 12]
  130. }]
  131. },
  132. option2: {
  133. xAxis: {
  134. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  135. },
  136. yAxis: {
  137. boundaryGap: 0
  138. },
  139. series: [{
  140. type: 'bar',
  141. data: [40, 15, -10, 12]
  142. }]
  143. }
  144. }, {
  145. name: 'should not display gap when boundaryGap is true for '
  146. + 'non-ordinal axis',
  147. test: 'equalOption',
  148. option1: {
  149. xAxis: {
  150. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  151. },
  152. yAxis: {
  153. boundaryGap: true
  154. },
  155. series: [{
  156. type: 'bar',
  157. data: [40, 15, -10, 12]
  158. }]
  159. },
  160. option2: {
  161. xAxis: {
  162. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  163. },
  164. yAxis: {
  165. boundaryGap: 0
  166. },
  167. series: [{
  168. type: 'bar',
  169. data: [40, 15, -10, 12]
  170. }]
  171. }
  172. }, {
  173. name: 'should have default value as true for ordinal axis',
  174. test: 'equalOption',
  175. option1: {
  176. xAxis: {
  177. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  178. },
  179. yAxis: {
  180. },
  181. series: [{
  182. type: 'bar',
  183. data: [40, 15, -10, 12]
  184. }]
  185. },
  186. option2: {
  187. xAxis: {
  188. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
  189. boundaryGap: true
  190. },
  191. yAxis: {
  192. },
  193. series: [{
  194. type: 'bar',
  195. data: [40, 15, -10, 12]
  196. }]
  197. }
  198. }, {
  199. name: 'should have no gap when boundaryGap is false for ordinal '
  200. + 'axis',
  201. test: 'notEqualOption',
  202. option1: {
  203. xAxis: {
  204. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
  205. boundaryGap: false
  206. },
  207. yAxis: {
  208. },
  209. series: [{
  210. type: 'line',
  211. data: [40, 15, -10, 12]
  212. }]
  213. },
  214. option2: {
  215. xAxis: {
  216. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
  217. boundaryGap: true
  218. },
  219. yAxis: {
  220. },
  221. series: [{
  222. type: 'line',
  223. data: [40, 15, -10, 12]
  224. }]
  225. }
  226. }, {
  227. name: 'should have positive gap for single positive data',
  228. test: 'equalOption',
  229. option1: {
  230. xAxis: {
  231. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  232. },
  233. yAxis: {
  234. boundaryGap: '20%'
  235. },
  236. series: [{
  237. type: 'bar',
  238. data: [40]
  239. }]
  240. },
  241. option2: {
  242. xAxis: {
  243. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  244. },
  245. yAxis: {
  246. min: 0,
  247. max: 50
  248. },
  249. series: [{
  250. type: 'bar',
  251. data: [40]
  252. }]
  253. }
  254. }, {
  255. name: 'should have negative gap for single negative data',
  256. test: 'equalOption',
  257. option1: {
  258. xAxis: {
  259. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  260. },
  261. yAxis: {
  262. boundaryGap: '20%'
  263. },
  264. series: [{
  265. type: 'bar',
  266. data: [-40]
  267. }]
  268. },
  269. option2: {
  270. xAxis: {
  271. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  272. },
  273. yAxis: {
  274. min: -50,
  275. max: 0
  276. },
  277. series: [{
  278. type: 'bar',
  279. data: [-40]
  280. }]
  281. }
  282. }, {
  283. name: 'should have positive gap for same positive data',
  284. test: 'equalOption',
  285. option1: {
  286. xAxis: {
  287. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  288. },
  289. yAxis: {
  290. boundaryGap: '20%'
  291. },
  292. series: [{
  293. type: 'bar',
  294. data: [40, 40, 40]
  295. }]
  296. },
  297. option2: {
  298. xAxis: {
  299. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  300. },
  301. yAxis: {
  302. min: 0,
  303. max: 50
  304. },
  305. series: [{
  306. type: 'bar',
  307. data: [40, 40, 40]
  308. }]
  309. }
  310. }, {
  311. name: 'should have negative gap for single negative data',
  312. test: 'equalOption',
  313. option1: {
  314. xAxis: {
  315. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  316. },
  317. yAxis: {
  318. boundaryGap: '20%'
  319. },
  320. series: [{
  321. type: 'bar',
  322. data: [-40, -40, -40]
  323. }]
  324. },
  325. option2: {
  326. xAxis: {
  327. data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
  328. },
  329. yAxis: {
  330. min: -50,
  331. max: 0
  332. },
  333. series: [{
  334. type: 'bar',
  335. data: [-40, -40, -40]
  336. }]
  337. }
  338. }]
  339. }];
  340. uiHelper.testOptionSpec('axis', suites, true);
  341. });