05_creating_dsl.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. let test_utils = require('./test_utils');
  2. let user = "./users/testuser/";
  3. module.exports = {
  4. beforeEach: function (client) {
  5. client.url('http://localhost:8124/atompm').pause(300);
  6. },
  7. 'Login': function (client) {
  8. test_utils.login(client);
  9. },
  10. 'Create model': function (client) {
  11. let filename = '/Formalisms/__LanguageSyntax__/SimpleClassDiagram/SimpleClassDiagram.umlIcons.metamodel';
  12. test_utils.load_toolbar(client, [filename]);
  13. let classIcon = "#\\/Formalisms\\/__LanguageSyntax__\\/SimpleClassDiagram\\/SimpleClassDiagram\\.umlIcons\\.metamodel\\/ClassIcon";
  14. client.waitForElementPresent(classIcon, 2000, "Check for class icon...");
  15. client.click(classIcon);
  16. console.log("Moving");
  17. let canvas = "#div_canvas";
  18. client.waitForElementPresent(canvas, 1000, "Checking for canvas...");
  19. let start_x = 50;
  20. let x_diff = 350;
  21. let x_coords = [start_x, start_x + x_diff, start_x + 2 * x_diff];
  22. let start_y = 200;
  23. let y_diff = 150;
  24. let y_coords = [start_y, start_y + y_diff, start_y + 2 * y_diff];
  25. for (let x of x_coords){
  26. for (let y of y_coords){
  27. client
  28. .moveToElement(canvas, x, y)
  29. .mouseButtonClick('right')
  30. .pause(500);
  31. }
  32. }
  33. let name_field = "#tr_name > td:nth-child(2) > textarea";
  34. for (let i = 0; i < 9; i++){
  35. let class_name = "Class" + String.fromCharCode(65 + i);
  36. let class_div = "#div_canvas > svg > g:nth-child(" + (3 + i) +")";
  37. client.waitForElementPresent(class_div, 1000, "Looking for class");
  38. client.moveToElement(class_div, 10, 10)
  39. .mouseButtonClick('middle')
  40. .waitForElementPresent("#dialog_btn", 1000, "Editing menu opens")
  41. .clearValue(name_field)
  42. .setValue(name_field, class_name)
  43. .click("#dialog_btn")
  44. .waitForElementNotPresent("#dialog_btn", 1000, "Editing menu closes")
  45. .moveToElement(canvas, 0, 100)
  46. .mouseButtonClick('left')
  47. .pause(1000)
  48. ;
  49. }
  50. // let element = ;
  51. // let element2 = "#div_canvas > svg > g:nth-child(4)";
  52. //
  53. // client.pause(100)
  54. // .moveToElement(element, 10, 10)
  55. // .mouseButtonClick('middle');
  56. //client.pause(000);
  57. },
  58. after: function (client) {
  59. client.end();
  60. },
  61. };