A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Name | Action | Expected Result | Success | Missing Features | |||||||||||||||||||||
2 | Open Enso | Double-click the Enso executable. Select any of the authentication methods (Google, GitHub, Email). Follow the prompts. Wait for compilation to complete. | The Unnamed project opens with two connected nodes 0 . up_to 100 . to_vector . map noise and second sort. It should obey the following: - Connections should be coloured. - It should open without any issue on macOS and Windows. | 1. The scatterplot visualisation should be shown by default. 2. Signing is currently a problem on macOS | ||||||||||||||||||||||
3 | Open the Scatterplot | Select the sort node and open the visualisation with the eye icon and select "scatterplot". | A scatterplot should be visible showing the random data above. You should be able to - Zoom the scatter-plot view. - Pan when zoomed. - Show all data on the scatter-plot by pressing the "Fit" button. | |||||||||||||||||||||||
4 | Change the Visualisation | Change the visualisation, without selecting a new node, to: 1. JSON 2. Table 3. Histogram Detatch the visualisation and move it somewhere. Pin it back. | You see well-formed visualisations for the listed ones. | |||||||||||||||||||||||
5 | Maximise the Window | Maximise the IDE window using the following methods: - Clicking on the button. - Double-clicking on the titlebar (on Windows and Linux) | The IDE should be left in a maximised state, with things still working. | 1. There is no title-bar with which to maximise on the mac. | ||||||||||||||||||||||
6 | Zoom and Pan | Zoom out in the IDE, and pan to centre all nodes. Leave the IDE in a non-default zoom and pan state. | Everything should keep working. | |||||||||||||||||||||||
7 | Open the Searcher | Open the searcher by: 1. Moving the mouse far away from the existing nodes. 2. Pressing <TAB>. | The searcher should open under the mouse with the following properties: - Hints should be sorted by "popularity". - Common suggested examples should be at the top. - Documentation should be visible. | |||||||||||||||||||||||
8 | Choose an Example | Select the Example: Parse JSON and hit <enter>. | The example should be inserted into the document as a single node. The output should be a JSON structure { "a": 10, "b": 20 } | |||||||||||||||||||||||
9 | Change the Searcher Selection | Re-open the searcher. Change the selection by: - Using the up and down arrows. - Typing read and highlighting the first File.read entry. | File.read should show up when filtered for, and should have documentation. | |||||||||||||||||||||||
10 | Create a File | In a known location on disk (suggest: ~/enso_test) create a new file. Put the contents of the file as quux foo bar baz quux. | Check that the file contents match the the expected string. | |||||||||||||||||||||||
11 | Add `File.read` | Press <enter> in the searcher to add the File.read node. Provide it with the path (File.home / "enso_test"). | You have a File.read node that reads the specified file. It should not be a dataflow error. | |||||||||||||||||||||||
12 | Get `this` Suggestions | Select the File.read node and press <TAB>. Search for split. Select it and press <enter>. | The searcher opens below the read node with hints based on the result type. You should be able to: - Change the selected suggestion with the arrow keys. - Select split and have a new node created below the existing node. - The searcher should disappear. - The new split node should be selected. | |||||||||||||||||||||||
13 | Create a String | Click on the background to deselect the split node. Press <tab> and type "foo bar baz". | A new node is created with the expected text. | |||||||||||||||||||||||
14 | Connect the New Node | Connect the new text1 node to the split node in place of File.read. | The result of the split node should be ["foo", "bar", "baz"]. | |||||||||||||||||||||||
15 | Reconnect `split` | Connect the output of File.read to split. Ensure that the result is updated. | The result of the split node should be ["quux", "foo", "bar", "baz", "quux"]. | |||||||||||||||||||||||
16 | Get More Hints | Select the split node and press <tab>. Create the node .map (x -> x.characters.length). Check that the result is correct. | We get the following: - Hints for the Vector type. - The result of the node should be [3, 3, 3, 4]. | |||||||||||||||||||||||
17 | Edit the Node | Edit the map node by cmd + click ing on the node. Edit the lambda to .length. | The result of the node should be the same as above. The node should stay selected after editing. | |||||||||||||||||||||||
18 | Add a `sort` Node | Select the map node and press <tab>. Type sor and select sort. | We get the following: - Hints for Vector in the searcher. - The values in the list should be sorted (3, 3, 3, 4, 4). - The sort node should remain selected. | |||||||||||||||||||||||
19 | Get the `head` | With the sort node selected press <tab>. Type head and press <enter>. | You should see the head node created: - It should be selected. - Its result should be 3. | |||||||||||||||||||||||
20 | Do Maths | With the head node selected, press <tab>. Type + 3 and press <enter>. | The new node should be selected and have the result 6. | |||||||||||||||||||||||
21 | Edit the Number | Edit the number to 3.5 using cmd + click. | The new node should have the result 6.5. | |||||||||||||||||||||||
22 | Create a String | Create a new node containing the text Hello.txt. Connect this to the input of File.read. | The File.read node should become a dataflow error, stating that the file is not found. Hover over the output port to check the error. | |||||||||||||||||||||||
23 | Disconnect This Node | Replace the connection with the original path value in the File.read node. | The error disappears and the contents in the visualisation are quux foo bar bax quux. | |||||||||||||||||||||||
24 | Remove a Node | Select the File.read node and add a length node. Remove the length node by selecting it and pressing <delete>. | The node should be deleted, along with its incoming connection. | |||||||||||||||||||||||
25 | Group Nodes | Select, using a drag selection the nodes split, map, sort, and head. Press <cmd> + <g> to collapse the nodes into a function. | A new node, here.func1 appears on the "stage", with the result being 3. | |||||||||||||||||||||||
26 | Enter the Node | Double-click on here.func1 to enter the node. | You should enter the node and see the nodes split, map, sort, and head. These nodes should: - Have values be shown. - Have the same layout as before. - Not have any visualisation of the function input. | 1. Function inputs and outputs should be visualised. | ||||||||||||||||||||||
27 | Test Visusalisations | Open the visualisation on the sort node. Ensure that Table, JSON, Historgram, and Scatterplot all work as expected. Ensure that they can be panned and scrolled. | All visualisations are working correctly. | |||||||||||||||||||||||
28 | Exit the Function | Double-click on the background to go to the top level. | You should be back at the top level, and the breadcrumbs should show "Unnamed" > "func1" where "func1" is greyed out. | |||||||||||||||||||||||
29 | Rename the Project | Double-click on the project name in the top bar and rename it to My_Project. Press enter. | The project name changes and nothing else is edited. | |||||||||||||||||||||||
30 | Use Breadcrumbs | Click on the "func1" breadcrumb. | You have entered "func1" and the same things as above work. | |||||||||||||||||||||||
31 | Test Quick Vis Modes | Select the split node and press and hold <space>. Let go of space and press <space>. | The visualisation should: - Appear when holding space. - Disappear when letting go of space. - Appear when pressing space and stay when space is released. | |||||||||||||||||||||||
32 | Save the Project | While still in func1, press <cmd> + <s> to save the project. Exit the IDE. | The project should be saved under ~/enso/projects/My_Project. | |||||||||||||||||||||||
33 | Re-Open the IDE | Re-open the IDE. Press <cmd> + <o> to open a list of projects. It should contain My_Project. Select it and press <enter>. | The IDE should start with the normal Unnamed project. My_Project should be opened, with everything in the same place as before. It should: - Have the same visualisations open. - Have the view be inside func1. Currently, the zoom and pan state will be reset. This is expected. | 1. The project searcher should not show a node. 2. The project state should restore you to the same point in the call stack. | ||||||||||||||||||||||
34 | Edit the Function | Inside func` select the head node. Delete it. Open the code editor by pressing <cmd> + <~> or <cmd> + <`> and reconnect the output. Close the text editor. | The project should be functional and the text editor won't have broken things. | 1. Function inputs and outputs should be visualised. | ||||||||||||||||||||||
35 | Move Multiple Nodes | Select all of the nodes in the body of func1. Move them. | The nodes should move, maintaining their relative layout. | |||||||||||||||||||||||
36 | Go to the Top Level | Click on the breadcrumb named My_Project to go to the top level. | You see the top-level graph, and the breadcrumbs panel has been updated. | |||||||||||||||||||||||
37 | Edit in the Text | Open the text editor using the above command. Add a new parameter value with default 0 to the func1 definition. Close the text editor. | You will be unable to enter func1 for the moment. | |||||||||||||||||||||||
38 | Create a Number | Create a new node containing 3 and connect it to the second input to func1. | func1 should have a valid output and not display as an error. | |||||||||||||||||||||||
39 | Create another Number | Create a new node containing 15. Connect it in place of func1 in the node func1 + 3.5. | The result of that node should be 18.5. | |||||||||||||||||||||||
40 | Delete `here.func1`. | Select the node here.func1 and press <del>. | The node is deleted from the stage. All other nodes continue working. | 1. It should be removed from the breadcrumbs. | ||||||||||||||||||||||
41 | Undo your Deletion | Press cmd/ctrl + z to undo the deletion of func1. You may need to do it multiple times due to the fact that operations aren't yet batched. | After a few presses, func1 re-appears with its connections. | |||||||||||||||||||||||
42 | Redo an Operation | Select the 3 node and edit it to read 6. Press cmd + z to undo that operation. Press cmd + y to redo that operation. | The node's value should change back to 3 and then back to 6. | |||||||||||||||||||||||
43 | Test GeoMap | Press tab to create a node with the expression Geo.point 51.477 0. Open the visualisation using the eye icon and select "Geo Map" | The output of this node should be a Table with columns latitude longitude and elevation. When selecting Geo map you should see this point on the map at Greenwich in London. | |||||||||||||||||||||||
44 | Full Screen Visualisations | With the Geo.point node selected press <space> twice. Check that you can pan and zoom the map. Press <space> once to deactivate it. | The map visualisation should go full screen, and then when deactivating it should become small again. The map should be able to be panned and zoomed in both full-screen and windowed modes. | 1. There should be a button to full-screen visualisations. | ||||||||||||||||||||||
45 | Test Type-Based Colouring | Create a node containing "foo" and another node containing "bar". Concatenate the two nodes using +. | Both the original nodes and the output node should have the same port colouring. | |||||||||||||||||||||||
46 | Quick preview visualisation | Press cmd and hover over a nodes output. Hover over the output port. | A visualization should appear and be visible above other nodes. When you hover without <cmd> you should see, in order, the simple type name, long type name, and visualisation. | |||||||||||||||||||||||
47 | Test State Saving | Select the node concatenating the text and press <space> to open its visualisation. Select all three nodes in that network and save the project. Close and re-open the IDE, and then re-open My_Project | You should have the project re-opened with the same three nodes selected and the visualisation on the concatenation node open. | |||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | ||||||||||||||||||||||||||
50 | ||||||||||||||||||||||||||
51 | ||||||||||||||||||||||||||
52 | ||||||||||||||||||||||||||
53 | ||||||||||||||||||||||||||
54 | ||||||||||||||||||||||||||
55 | ||||||||||||||||||||||||||
56 | ||||||||||||||||||||||||||
57 | ||||||||||||||||||||||||||
58 | ||||||||||||||||||||||||||
59 | ||||||||||||||||||||||||||
60 | ||||||||||||||||||||||||||
61 | ||||||||||||||||||||||||||
62 | ||||||||||||||||||||||||||
63 | ||||||||||||||||||||||||||
64 | ||||||||||||||||||||||||||
65 | ||||||||||||||||||||||||||
66 | ||||||||||||||||||||||||||
67 | ||||||||||||||||||||||||||
68 | ||||||||||||||||||||||||||
69 | ||||||||||||||||||||||||||
70 | ||||||||||||||||||||||||||
71 | ||||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 | ||||||||||||||||||||||||||
76 | ||||||||||||||||||||||||||
77 | ||||||||||||||||||||||||||
78 | ||||||||||||||||||||||||||
79 | ||||||||||||||||||||||||||
80 | ||||||||||||||||||||||||||
81 | ||||||||||||||||||||||||||
82 | ||||||||||||||||||||||||||
83 | ||||||||||||||||||||||||||
84 | ||||||||||||||||||||||||||
85 | ||||||||||||||||||||||||||
86 | ||||||||||||||||||||||||||
87 | ||||||||||||||||||||||||||
88 | ||||||||||||||||||||||||||
89 | ||||||||||||||||||||||||||
90 | ||||||||||||||||||||||||||
91 | ||||||||||||||||||||||||||
92 | ||||||||||||||||||||||||||
93 | ||||||||||||||||||||||||||
94 | ||||||||||||||||||||||||||
95 | ||||||||||||||||||||||||||
96 | ||||||||||||||||||||||||||
97 | ||||||||||||||||||||||||||
98 | ||||||||||||||||||||||||||
99 | ||||||||||||||||||||||||||
100 |