10_undo_test.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. let test_utils = require('./test_utils');
  2. let model_building_utils = require('./model_building_utils');
  3. let user = "./users/testuser/";
  4. module.exports = {
  5. beforeEach : function (client) {
  6. client.url('http://localhost:8124/atompm').pause(300);
  7. },
  8. 'Login' : function (client) {
  9. test_utils.login(client);
  10. },
  11. 'Check undo of deletion' : function (client) {
  12. let filename = '/Formalisms/__LanguageSyntax__/SimpleClassDiagram/SimpleClassDiagram.umlIcons.metamodel';
  13. test_utils.load_toolbar(client, [filename]);
  14. let classIcon = "#\\/Formalisms\\/__LanguageSyntax__\\/SimpleClassDiagram\\/SimpleClassDiagram\\.umlIcons\\.metamodel\\/ClassIcon";
  15. client.waitForElementPresent(classIcon, 2000, "Check for class icon...");
  16. client.click(classIcon);
  17. let canvas = "#div_canvas";
  18. client.waitForElementPresent(canvas, 1000, "Checking for canvas...");
  19. let num_elements = 0;
  20. //BUILD CLASS
  21. let class_div = model_building_utils.create_class(client, 50, 200, 0);
  22. //DELETE CLASS
  23. model_building_utils.delete_element(client, class_div);
  24. //CHECK FOR PRESENCE
  25. client.waitForElementNotPresent(class_div, 1000, "Class deleted");
  26. //UNDO
  27. let undoBtn = "#\\/Toolbars\\/MainMenu\\/MainMenu\\.buttons\\.model\\/undo";
  28. client.waitForElementPresent(undoBtn, 2000, "Check for undo button...");
  29. client.click(undoBtn);
  30. client.waitForElementPresent(class_div, 1000, "Class restored");
  31. //SECOND DELETE
  32. model_building_utils.delete_element(client, class_div);
  33. //SECOND CHECK FOR PRESENCE
  34. client.waitForElementNotPresent(class_div, 1000, "Class deleted for second time")
  35. },
  36. after : function (client) {
  37. client.end();
  38. },
  39. };