yarn-rm-node-test.js 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. import { moduleForModel, test } from 'ember-qunit';
  19. moduleForModel('yarn-rm-node', 'Unit | Model | RMNode', {
  20. // Specify the other units that are required for this test.
  21. needs: []
  22. });
  23. test('Basic creation test', function(assert) {
  24. let model = this.subject();
  25. assert.ok(model);
  26. assert.ok(model._notifyProperties);
  27. assert.ok(model.didLoad);
  28. assert.ok(model.rack);
  29. assert.ok(model.state);
  30. assert.ok(model.nodeHostName);
  31. assert.ok(model.nodeHTTPAddress);
  32. assert.ok(model.lastHealthUpdate);
  33. assert.ok(model.healthReport);
  34. assert.ok(model.numContainers);
  35. assert.ok(model.usedMemoryMB);
  36. assert.ok(model.availMemoryMB);
  37. assert.ok(model.usedVirtualCores);
  38. assert.ok(model.availableVirtualCores);
  39. assert.ok(model.version);
  40. assert.ok(model.nodeLabels);
  41. assert.ok(model.nodeLabelsAsString);
  42. assert.ok(model.nodeStateStyle);
  43. assert.ok(model.isDummyNode);
  44. assert.ok(model.getMemoryDataForDonutChart);
  45. assert.ok(model.getVCoreDataForDonutChart);
  46. });
  47. test('test fields', function(assert) {
  48. let model = this.subject();
  49. Ember.run(function () {
  50. model.set("rack", "/default-rack");
  51. model.set("state", "RUNNING");
  52. model.set("nodeHostName", "localhost");
  53. model.set("id", "localhost:64318");
  54. model.set("nodeHTTPAddress", "localhost:8042");
  55. model.set("usedMemoryMB", 1024);
  56. model.set("availMemoryMB", 7168);
  57. model.set("usedVirtualCores", 1);
  58. model.set("availableVirtualCores", 7);
  59. model.set("nodeLabels", ["x"]);
  60. assert.equal(model.get("rack"), "/default-rack");
  61. assert.equal(model.get("state"), "RUNNING");
  62. assert.equal(model.get("nodeHostName"), "localhost");
  63. assert.equal(model.get("id"), "localhost:64318");
  64. assert.equal(model.get("nodeHTTPAddress"), "localhost:8042");
  65. assert.equal(model.get("usedMemoryMB"), 1024);
  66. assert.equal(model.get("availMemoryMB"), 7168);
  67. assert.equal(model.get("usedVirtualCores"), 1);
  68. assert.equal(model.get("availableVirtualCores"), 7);
  69. assert.equal(model.get("isDummyNode"), false);
  70. assert.deepEqual(model.get("nodeLabels"), ["x"]);
  71. assert.equal(model.get("nodeLabelsAsString"), "x");
  72. assert.deepEqual(model.get("nodeStateStyle"), "label label-success");
  73. assert.deepEqual(model.get("getMemoryDataForDonutChart"),
  74. [{label: "Used", value: 1024}, {label: "Available", value: 7168}]);
  75. assert.deepEqual(model.get("getVCoreDataForDonutChart"),
  76. [{label: "Used", value: 1}, {label: "Available", value: 7}]);
  77. model.set("state", "SHUTDOWN");
  78. assert.deepEqual(model.get("nodeStateStyle"), "label label-danger");
  79. model.set("state", "REBOOTED");
  80. assert.deepEqual(model.get("nodeStateStyle"), "label label-warning");
  81. model.set("state", "NEW");
  82. assert.deepEqual(model.get("nodeStateStyle"), "label label-default");
  83. model.set("nodeLabels", ["x","y"]);
  84. assert.equal(model.get("nodeLabelsAsString"), "x");
  85. model.set("nodeLabels", undefined);
  86. assert.equal(model.get("nodeLabelsAsString"), "");
  87. });
  88. });