Summary
Version 17 includes several new features and a number of bug fixes: What's new in version 17? Every new feature and bug fix has been tested to ensure that is works as expected and does not adversely impact any existing Lawmaker functionality.
Tests were performed using a combination of newly created documents, documents imported from legislation.gov.uk, and existing real-world documents copied from the Production environment.
To test UK Bills functionality, we used the Leasehold and Freehold Reform Bill, Renters' Reform Bill, and Digital Markets, Competition and Consumers Bill, along with the corresponding tabled amendments to those bills. Version 17 introduces a new feature which makes it possible to download and upload large lists of amendments to a bill version for testing; we made use of this new feature to perform tests on those bills using large numbers of real-world amendments.
We also imported UK Act content from legislation.gov.uk to test performance on large documents, including the Energy Act 2023 and Online Safety Act 2023.
See below for more information on the specific testing outcomes related to new features and bug fixes in version 17.
Automatic tagging of references
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4272 | Pass | Extend XML markup generation to add <mref> around reference groups | |
LDAPP-4372 | Pass | Allow users to create manual cross-references from provisions in the Editor | |
LDAPP-4459 | Pass | Update tag x-ref behaviour to account for existing unmodified refs | |
LDAPP-4460 | Pass | Update tag x-ref behaviour to handle manual refs | Identified and fixed issues relating to:
|
LDAPP-4455 | Pass | Change presentation in Editor of valid internal and external x-refs | |
LDAPP-4427 | Pass | Tag document alias references | |
LDAPP-4417 | Pass | Extend //mref markup to internal references when manually generating x-refs (from the Structure View or Context Menu) | |
LDAPP-4380 | Pass | Handle ephemeral block context outside of amending provisions | |
LDAPP-4378 | Pass | Ignore X-refs in quoted text and in parenthetical descriptions | |
LDAPP-4375 | Pass | Improve behaviour of contextual references | |
LDAPP-4366 | Pass | Tag references inside quoted structures and quoted text | |
LDAPP-4365 | Pass | X-refs not tagged in text preceding quoted structures with following text | |
LDAPP-4364 | Pass | Stop //ref elements being editable directly in the Editor | |
LDAPP-4356 | Pass | Update all the "x-ref"/"x-refs" titles to "reference"/"references" | |
LDAPP-4354 | Pass | Investigate a method of stopping certain elements being editable | |
LDAPP-4343 | Pass | Prevent inline elements (and PIs) from breaking X-refs | Identified and fixed a related issue where re-tagging or removing the reference tags from a reference in a document containing line numbering sometimes resulted in the reference text disappearing. |
LDAPP-4276 | Pass | Handle isolated external provision references | |
LDAPP-4273 | Pass | Identify and mark up document alias definitions | |
LDAPP-4258 | Pass | Convert hybrid ID of external provision references to http://legislation.gov.uk URLs | |
LDAPP-4419 | Pass | Line number missing when ref with @ukl:alternativeReference attribute spans multiple lines |
Version 17 includes a number of significant improvements to the automatic Tag x-refs function. This function will now identify both internal cross-references and external references to existing legislation, and tag them.
Our testing focused on the new behaviour of the automatic tagging function in a variety of document types, using real-world test data.
Documents containing the newly tagged references were then used in end-to-end tests, to ensure that existing Lawmaker functionality is unaffected by the refinements to the automatic tagging function and the tags generated by that function. We did not identify any issues relating to the interaction of core Lawmaker functions and references as part of our end-to-end tests.
Referencing toolbar and the Edit ref modal
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4353 | Pass | Edit existing cross-references via modal (simplified) | |
LDAPP-4333 | Pass | Jump to x-ref target from Editor | |
LDAPP-4478 | Pass | Handle manual references - UI |
We tested the newly expanded referencing toolbar (which appears when double-clicking on a reference in the Editor) in all document types. We checked for potential user interface problems connected to the expanded toolbar, and we checked that initiating actions from the toolbar produced the same result as initiating those actions from the right-click menu.
We checked that the new reference toolbar had no effect on the performance of the Editor when opening larger documents.
User testing on Staging helped us to identify an issue with the appearance and layout of the ‘Edit ref’ modal on smaller screens. We intend to fix this in the next minor Lawmaker release.
Generation of citation footnotes in SIs
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4241 | Pass | Investigate and design auto-generation of citation footnotes | |
LDAPP-4385 | Pass | Generate amending statements | |
LDAPP-4389 | Pass | Retrieve amending infomation for rrefs | |
LDAPP-4388 | Pass | UI - Insert a footnote for an individual reference or group of references | |
LDAPP-4386 | Pass | Merge amending statements into a single citation footnote | |
LDAPP-4446 | Pass | Handle edge cases in parsing textual amendments with malformed amended provisions | |
LDAPP-4472 | Pass | Fix capitalisation of provisions and presentation of SI titles in citation footnotes |
Version 17 gives users the ability to automatically generate citation footnotes in SIs. We checked the content and format of these auto-generated footnotes using a large number of real SI documents imported from legislation.gov.uk.
Improved sorting of amendments on the Amendment Manager tab
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4448 | Pass | Rework OoC sort function so it sorts amendments correctly - Back End | |
LDAPP-4410 | Pass | Rework OoC sort function so it sorts amendments correctly - Front End |
Version 17 replaces the ‘OoC Sort’ button on the Amendment Manager tab with a ‘Sort by Marshalled Order’ button that correctly sorts amendments in the table according to the order in which they will appear in official lists. We tested the new sorting using Commons, Lords, and Scottish Parliament amendments, and ensured that the ordering logic was correct. We also tested using large numbers of real amendments imported from the Production environment.
Quoted text
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4404 | Pass | Inserting Quoted Text in Editor and CSS | |
LDAPP-4405 | Pass | Changing quote marks in Quoted Text via modal | |
LDAPP-4432 | Pass | Adjust Quoted Text formatting | |
LDAPP-4407 | Pass | Handling Quoted Text in PDFs | |
LDAPP-4457 | Pass | Allow insertion of a Quoted Structure when cursor is in a Quoted Text element | |
LDAPP-4433 | Pass | Fix duplicate //mod issue when inserting a Quoted Text or Quoted Structure outside a //mod | |
LDAPP-4453 | Pass | Quoted text causes line numbering to skip when appearing first on subsequent lines |
We tested adding Quoted Text elements in UK Bills, Scottish Bills, and SIs. We checked that existing Editor functions continued to work in documents containing these elements. We checked that PDF rendering and line numbering continued to work correctly in provisions which contained Quoted Text elements.
Church Measures
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-321 | Pass | Create a new Church Measure project | |
LDAPP-3087 | Pass | Church Measure template | |
LDAPP-4458 | Pass | Church Measure XML/PDF - Refactoring hardcoded 'HL Paper' and 'HC' texts on the front cover | |
LDAPP-3089 | Pass | Convert Church Measure to enacted | |
LDAPP-4438 | Pass | Add Church Measure doctype to Insert Quoted Structure and Update Quoted Structure modals | |
LDAPP-4413 | Pass | Modify Document Information fields for Church Measures | |
SPT-1631 | Pass | Incorrect Document Push in Copy Provisions Operation | |
LDAPP-3088 | Pass | Modify "Insert front cover" and "Insert back cover" functions (and "Finalise version" modal) for Church Measures | |
LDAPP-411 | Pass | Generate a PDF of a Church Measure with correct styling, and display Church Measures in the Editor with correct styling | |
LDAPP-4466 | Pass | Submit enacted Measure to TNA | |
LDAPP-4465 | Pass | Enable Push/Pull and Insert/Update Origin Information functions for Church Measures |
Version 17 adds supports for Church Measures documents. We tested the core Lawmaker functions in the Editor and on the Project tab for Church Measures projects to ensure that users can draft and manage Measures in Lawmaker.
User testing enabled us to identify some features which were not enabled for Church Measures (including the push/pull function and the ‘Submit to TNA’ action for enacted Measures). We worked with the development team to enable and test those features for Measures, and have included the necessary changes in the final version 17 release.
Uploading amendment list XML to create new amendments
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4441 | Pass | Upload amendment list XML - backend | |
LDAPP-4399 | Pass | Upload amendment list XML - front-end |
Editing fragments of a schedule
Ticket reference | Testing result | Description | Notes |
---|---|---|---|
LDAPP-4373 | Pass | Implement fragmentation below the Schedule level | |
LDAPP-4397 | Pass | Update structure view to show fragments in schedules |
Bill and Amendment testing
Bill title | Amendments tested | Notes |
---|---|---|
Renters Reform (HoC, As Introduced) | 170 OPC amendments | Auto-apply outputs from Production compared with Staging; no differences found |
Digital Markets, Competition and Consumers (HoL, As Brought from the Commons) | 50 amendments tested | Auto-apply outputs from Production compared with Staging; no differences found |
Leasehold and Freehold Reform (HoC, As Introduced) | 124 amendments tested | Auto-apply outputs from Production compared with Staging; no differences found |
End-to-end tests performed
Significant issues found during testing
We identified a bug which prevented images displaying in the Editor. This has been fixed in the final version 17 build.
We identified a problem with the tag x-refs function and the ‘remove reference tag’ action which affected some references in documents containing line numbering. Where a reference extended over the end of a line, using the automatic tagging function or the ‘remove reference tag’ action (from the right-click menu or the floating toolbar) would sometimes remove both the XML tags and the textual content of the reference. Only the reference tags should be removed. This has been fixed in the final version 17 build.
We observed that the automatic reference tagging function sometimes added additional reference tags around existing references; that has been fixed in the final build.
Bug fixes tested
SI/SSIs
Issue key | Summary | User support ticket | Test result |
---|---|---|---|
SPT-1703 | Error when copying an SI to another project when SI doesn't have enacting text |
| Pass |
SPT-1700 | Smart paste of SI prov1 with auto-renumber ON strips trailing full stop from num |
| Pass |
SPT-1695 | Updated SI subject heading list |
| Pass |
SPT-1689 | SI Paragraph (1) spacing differs in quoted structure as starting element |
| Pass |
SPT-1679 | Specific wordings of SI/SSI dates still causes line break |
| Pass |
SPT-1676 | Procedure of SI on the Project tab or Dashboard is locked in after creation and unchangeable |
| Pass |
SPT-1671 | Add OFGEM and OFCOM as new organisations |
| Pass |
Editor
Issue key | Summary | User support ticket | Test result |
---|---|---|---|
SPT-1713 | Editor fails to revert to using the correct document filter after an unknown action in the editor results in a failure to switch back to the LDAPPDocumentFilter | Pass | |
SPT-1690 | Wrong placement of material dragged into containers in amendment QSs | Pass | |
SPT-1711 | Oxygen sometimes fails to retrieve the XML from the server for operations like auto-save, save and structure view updates | Pass | |
SPT-1706 | The "A problem has occurred" modal appears in documents with lots of spelling errors. | Pass | |
SPT-1702 | Performance issue in getElementByGuid(Oxygen client-side code) (included in patch release 16.2.1) |
| Pass |
SPT-1701 | TNA - Screen Jumps On Paste |
| Pass |
SPT-1699 | Poor performance when copying a reasonable number of provisions (included in patch release 16.2.1) |
| Pass |
SPT-1683 | Mark as done toggle not working in certain cases |
| Pass |
SPT-1672 | Issues with rejecting "surround" tracked changes in Oxygen v25.1. |
| Pass |
SPT-1653 | Updates to document during a renumber operation result in strange document modifications |
| Pass |
SPT-1656 | Promote/Demote of closing words unwraps inline formatting and footnotes |
| Pass |
SPT-1631 | Incorrect Document Push in Copy Provisions Operation |
| Pass |
SPT-1616 | Strange restrictions on using the Structure View to move a Schedule in a version of a bill where a New Schedule amendment has been applied | Pass | |
SPT-1611 | Oxygen exceptions occurring when a user accepts tracked change edits ("A problem has occurred") (included in patch release 16.2.1) | Pass | |
SPT-1609 | Cross references inside tracked change deletions are re-added without deleted markup after updating cross references in the provision | Pass |
PDFs
Issue key | Summary | User support ticket | Test result |
---|---|---|---|
SPT-1696 | Quoted structure in change track have incorrect indent |
| Pass |
SPT-1693 | Text in ukpga quoted structure //section/intro is not justified in PDF |
| Pass |
SPT-1692 | Page numbering broken from page 10 onwards in Scottish Parliamentary Amendment lists |
| Pass |
SPT-1691 | Empty paragraph element wrongly aligned in PDF |
| Pass |
SPT-1682 | Long hyperlinks (URLs) that are split across multiple lines have line spacing issues in the PDF and CSS issues in footnotes in the editor |
| Pass |
SPT-1558 | Resolve PDF rendering issues caused by missing attributes on quotedStructures (ukl:docName and ukl:indent) |
| Pass |
Amendments
Issue key | Summary | User support ticket | Test result |
---|---|---|---|
SPT-1651 | Auto-apply: amendments which leave out words after a Defined term can't be applied if the quotation marks on the defined term are included in the amendment instruction | Pass | |
SPT-1646 | Extra spaces appear in certain substituting amendments when auto-applied to a bill version |
| Pass |
SPT-1633 | Auto-applying amendments to rref elements sometimes results in too much text being included in the rref; original rref's href attributes also persist | Pass | |
SPT-1632 | Auto-applied amendment which inserts text beginning with punctuation after a <ref> element adds the text inside the <ref> when accepted | Pass | |
SPT-1266 | Side-lining on auto-applied insert section amendment goes down too far | Pass | |
SPT-1608 | Moving an amendment in a LoDA using the Structure View with tracked changes turned on results in the amendment being duplicated | Pass | |
SPT-1541 | Auto-saved traditional amendments in an inline LoDA cannot be restored into the working version |
| Pass |
Document management (Project tab, comparison, permissions etc.)
Issue key | Summary | User support ticket | Test result |
---|---|---|---|
SPT-1662 | Duplicating an 'Auto backup' snapshot results in the wrong XML content being retrieved - later changes are included in the duplicate |
| Pass |
SPT-1218 | User who first created document still has read-only access when their permissions are removed |
| Pass |
SPT-1677 | ALL CAPS text is displayed with additional spacing in the Edit Portion dropdown |
| Pass |
SPT-1648 | Opening an Edit portion document in parallel with others causes issues |
| Pass |
SPT-1645 | When logging out with two Editor tabs open (one containing a portion of a version), it's not possible to 'Save all changes' in the 'Unsaved changes' modal |
| Pass |
SPT-1665 | Comparison output moves opening words into the wrong position on Scottish Bill |
| Pass |
SPT-1657 | XML comparison functionality doesn't handle processing instructions appropriately |
| Pass |
SPT-1627 | Incorrect comparison result when an x-ref has been updated within a <mod> | Pass |