FormsRefresh

Student forms / form1-update

form1-update

Change the first course's description and save: PRE-UPDATE sets MODIFIED_DATE to SYSDATE and MODIFIED_BY to :GLOBAL.USER_ID.

0defects
50values match
1tolerated by policy
0waived
0unmapped

Three runs from a fresh database gave byte-identical diffs. Behaviour that looks odd in the migrated app but is the original's: faithful to the original and waivers. Files: scenario, golden record, target record, diff (JSON).

Scenario steps

Items are addressed by their Forms name (BLOCK.ITEM[row]), the same name in the original and, through the mapping, in the migrated app.

#StepActionChecked on the original
0Open form QAFE_FORM1
1Type COURSE.DESCRIPTION[0] = Dutch Grammar II
2saveClick Toolbar.Save

Screens, step by step

Left: the original Oracle Forms application, recorded on a virtual display. Right: the migrated application in headless Chromium. Screenshots are evidence only; the comparison works on the recorded values.

Step 0: open QAFE_FORM1

Original (Oracle Forms 14.1.2), step 00-open
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 00-open
Migrated (.NET, PostgreSQL)

Step 1: type

Original (Oracle Forms 14.1.2), step 01-type
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 01-type
Migrated (.NET, PostgreSQL)

Step 2: save

Original (Oracle Forms 14.1.2), step 02-save
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 02-save
Migrated (.NET, PostgreSQL)

Golden record of the original

After each step: the focus, the displayed values that changed, the message line and any alert. The full record (every item of every step, windows, lists of values) is in the JSON file.

#StepAction (by name)Focus afterDisplayed values that changedMessage lineAlertExpect
0Open form QAFE_FORM1COURSE.COURSE_NO[0]COURSE.COST[0] = 40
COURSE.COURSE_NO[0] = 456
COURSE.CREATED_BY[0] = Qafe
COURSE.CREATED_DATE[0] = 29-APR-2016
COURSE.DESCRIPTION[0] = Dutch Grammar
COURSE.MODIFIED_BY[0] = Qafe
COURSE.MODIFIED_DATE[0] = 29-APR-2016
1Type COURSE.DESCRIPTION[0] = Dutch Grammar IICOURSE.DESCRIPTION[0]COURSE.DESCRIPTION[0] = Dutch Grammar II
2saveClick Toolbar.SaveCOURSE.DESCRIPTION[0]COURSE.MODIFIED_DATE[0] = <date>FRM-40400: Transaction complete: 1 records applied and saved.

Database effects

COURSE updated: {"key": {"COURSE_NO": 456}, "changed": {"DESCRIPTION": {"before": "Dutch Grammar", "after": "Dutch Grammar II"}, "MODIFIED_DATE": {"before": "2016-04-29T00:00:00", "after": "<date>"}}}

Classified diff against the migrated app

Diff: form1-update
counts: match 50, tolerated 1, waived 0, defect 0, unmapped 0, harness 0
generated-id pairs (source -> target): none

waivers:
  S1 [proposed] Screen-reader announcement of the COURSE_NO item read as a message: applied to 0 value(s)

[tolerated] ui.values.COURSE.MODIFIED_DATE  rule=mask:audit-dates  x1

Waivers

No waiver applies to this scenario: every compared value matches or is within the tolerance policy.