[ 
https://issues.apache.org/jira/browse/OFBIZ-11456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17150793#comment-17150793
 ] 

ASF subversion and git services commented on OFBIZ-11456:
---------------------------------------------------------

Commit 3bc59aeb140da99ee74a9c5a8232889587b0b8ed in ofbiz-framework's branch 
refs/heads/trunk from Daniel Watford
[ https://gitbox.apache.org/repos/asf?p=ofbiz-framework.git;h=3bc59ae ]

Improved: Added new MacroFormRenderer unit tests (OFBIZ-11456) (#213)

Improved: Suppress deprecation warning on test method used to ensure behaviour 
is preserved until the deprecated method is removed. (OFBIZ-11456)

* Improved: Unit Tests for MacroFormRenderer

As part of refactoring MacroFormRender, unit tests have been created for
the main render methods to help ensure consistent behaviour is
maintained when MacroFormRender is changed.

More in-depth unit testing may be added when the more complex parts of
MacroFormRenderer are modified in the future.

> MacroFormRenderer refactoring
> -----------------------------
>
>                 Key: OFBIZ-11456
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-11456
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: framework/widget
>    Affects Versions: Trunk
>            Reporter: Daniel Watford
>            Assignee: Daniel Watford
>            Priority: Minor
>
> Class MacroFormRender is 3400 lines long and performs the following:
>  * Renders the various form structure parts and field widgets to FTL macros 
> calls.
>  * Configures the FTL environment.
>  * Executes the FTL macro calls to generate HTML and write it to a caller 
> provided Appendable.
> Implementing the above means that MacroFormRenderer does not meet the Single 
> Responsibility Principle. The current implementation of multiple 
> responsibilities makes unit testing difficult.
> As discussed on the dev mailing list 
> https://markmail.org/message/adtkk6cb6o7mmy7f it is proposed that 
> MacroFormRenderer is refactored.
> Refactoring should separate the rendering of form structure parts and field 
> widgets to FTL macro calls from the execution of those macros.
> To support the refactoring effort JMockit is being introduced (OFBIZ-4035) to 
> allow test creation against the current implementation of MacroFormRenderer, 
> helping to ensure functionality is preserved once refactoring is complete.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to