Uploaded image for project: 'Magnolia Test Framework'
  1. Magnolia Test Framework
  2. MGNLTEST-67

Page object support for inline editing on content apps

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Neutral Neutral
    • None
    • None

      Extend existing page object(s) or create new one(s) to enable inline editing on the browser app of a content app like the jcr-browser.

      Use case(s)

      • jcr-browser app
      • (possibly) the (new) configuration app

       


      How inline editing could work within a UI test:

      1. Select a row

      A test containing inline editing of a field of a row of a content app browser first must select the row. We already have methods to select a row. Those have been implemented to select rows which are "items" - in the JCR context nodes.

      On the JCR browser app we also want to be able to select a row of a property.
      Apparently this works already to select /foobar@title, but it need 2 steps:

        app.selectRowByPath("/foobar");
        app.clickRow("title");
      

      Would be "nice" to do that in a one-liner. Maybe this can be achieved by improving the abilities of #selectRowByPath.

      2. Edit a field of a row via inline editing

      It should not be necessary within the test to use a series of commands like:

      • "double click cell"
      • "enter new value"
      • "press tab to save".

      Instead I Imagine something like:
      #inlineEdit(String oldValue, String newValue) 
      which should work, if the "oldValue" is unique within the row.

      If a row has mulitiple editable fields with the same value, it could be something like this:
      #inlineEdit(int fieldCount, String newValue).

      Such method(s) must include "leaving the cell" / "blur" - to ensure the value is saved.
      The question remains whether the row should remain selected or not - I vote for ending the method with the same row still selected.

      I propose to expose the methods directly to the content app PO. "Internally" we may need a row PO.

        Acceptance criteria

              Unassigned Unassigned
              cmeier Christoph Meier
              Foundation
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Work Started:

                  Task DoR