Hi Vincent,

On Wed, Mar 10, 2010 at 12:55 PM, Vincent Massol <[email protected]> wrote:

> Hi Asiri,
>
> Don't we have any tests for wiki macros? I don't see any test providing
> that it works. Since wiki macros are something introduced recently I'm
> surprised we don't have tests for it (or do we?).
>

There are tests for wiki macros. See
http://svn.xwiki.org/svnroot/xwiki/platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/test/java/org/xwiki/rendering/internal/macro/wikibridge/

and

http://svn.xwiki.org/svnroot/xwiki/platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/test/java/org/xwiki/rendering/macro/wikibridge/

If you are referring to this specific new feature or integration tests, No
there are none.

Thanks.

- Asiri


>
> Also could you explain the need for default parameter values in wiki macro
> parameter descriptor?
> Since the macro content is available in the content field, isn't it easy to
> use a default value there?
>
> So is this just for convenience or is there something I don't see?
>
> Thanks
> -Vincent
>
> On Mar 10, 2010, at 7:43 AM, asiri (SVN) wrote:
>
> > Author: asiri
> > Date: 2010-03-10 07:43:01 +0100 (Wed, 10 Mar 2010)
> > New Revision: 27562
> >
> > Modified:
> >
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroFactory.java
> >
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroInitializer.java
> >
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/WikiMacroConstants.java
> >
> platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/main/java/org/xwiki/rendering/macro/wikibridge/WikiMacroParameterDescriptor.java
> > Log:
> > XWIKI-4944: Add support for Default Values for XWiki Wiki Macros.
> >
> > * Applied anamaria's patch without changes.
> >
> > Modified:
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroFactory.java
> > ===================================================================
> > ---
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroFactory.java
>  2010-03-10 05:11:59 UTC (rev 27561)
> > +++
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroFactory.java
>  2010-03-10 06:43:01 UTC (rev 27562)
> > @@ -191,7 +191,8 @@
> >                 String parameterDescription =
> macroParameter.getStringValue(PARAMETER_DESCRIPTION_PROPERTY);
> >                 boolean parameterMandatory =
> >
> (macroParameter.getIntValue(PARAMETER_MANDATORY_PROPERTY) == 0) ? false :
> true;
> > -
> > +                String parameterDefaultValue =
> macroParameter.getStringValue(PARAMETER_DEFAULT_VALUE_PROPERTY);
> > +
> >                 // Verify parameter name.
> >                 if (StringUtils.isEmpty(parameterName)) {
> >                     throw new WikiMacroException(String.format(
> > @@ -203,10 +204,15 @@
> >                     String errorMessage = "Incomplete macro definition in
> [%s], macro parameter description is empty";
> >                     getLogger().debug(String.format(errorMessage,
> documentReference));
> >                 }
> > +
> > +                // If field empty, assume no default value was provided.
> > +                if (StringUtils.isEmpty(parameterDefaultValue)) {
> > +                    parameterDefaultValue = null;
> > +                }
> >
> >                 // Create the parameter descriptor.
> >                 parameterDescriptors.add(new
> WikiMacroParameterDescriptor(parameterName, parameterDescription,
> > -                    parameterMandatory));
> > +                    parameterMandatory, parameterDefaultValue));
> >             }
> >         }
> >
> >
> > Modified:
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroInitializer.java
> > ===================================================================
> > ---
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroInitializer.java
>      2010-03-10 05:11:59 UTC (rev 27561)
> > +++
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/DefaultWikiMacroInitializer.java
>      2010-03-10 06:43:01 UTC (rev 27562)
> > @@ -235,6 +235,7 @@
> >         needsUpdate |= bclass.addTextField(PARAMETER_NAME_PROPERTY,
> "Parameter name", 30);
> >         needsUpdate |=
> bclass.addTextAreaField(PARAMETER_DESCRIPTION_PROPERTY, "Parameter
> description", 40, 5);
> >         needsUpdate |=
> bclass.addBooleanField(PARAMETER_MANDATORY_PROPERTY, "Parameter mandatory",
> "yesno");
> > +        needsUpdate |=
> bclass.addTextField(PARAMETER_DEFAULT_VALUE_PROPERTY, "Parameter default
> value", 30);
> >
> >         if (needsUpdate) {
> >             update(doc);
> >
> > Modified:
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/WikiMacroConstants.java
> > ===================================================================
> > ---
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/WikiMacroConstants.java
>       2010-03-10 05:11:59 UTC (rev 27561)
> > +++
> platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/internal/WikiMacroConstants.java
>       2010-03-10 06:43:01 UTC (rev 27562)
> > @@ -111,4 +111,10 @@
> >      * Constant for representing parameter mandatory property.
> >      */
> >     String PARAMETER_MANDATORY_PROPERTY = "mandatory";
> > +
> > +    /**
> > +     * Constant for representing parameter defaultValue property.
> > +     * @since 2.3M1
> > +     */
> > +    String PARAMETER_DEFAULT_VALUE_PROPERTY = "defaultValue";
> > }
> >
> > Modified:
> platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/main/java/org/xwiki/rendering/macro/wikibridge/WikiMacroParameterDescriptor.java
> > ===================================================================
> > ---
> platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/main/java/org/xwiki/rendering/macro/wikibridge/WikiMacroParameterDescriptor.java
>  2010-03-10 05:11:59 UTC (rev 27561)
> > +++
> platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-wikibridge/src/main/java/org/xwiki/rendering/macro/wikibridge/WikiMacroParameterDescriptor.java
>  2010-03-10 06:43:01 UTC (rev 27562)
> > @@ -54,6 +54,11 @@
> >     private boolean mandatory;
> >
> >     /**
> > +     * Default value of the parameter.
> > +     */
> > +    private Object defaultValue;
> > +
> > +    /**
> >      * Creates a new {...@link WikiMacroParameterDescriptor} instance.
> >      *
> >      * @param id parameter identifier.
> > @@ -68,6 +73,23 @@
> >     }
> >
> >     /**
> > +     * Creates a new {...@link WikiMacroParameterDescriptor} instance.
> > +     *
> > +     * @param id parameter identifier.
> > +     * @param description parameter description.
> > +     * @param mandatory if the parameter is mandatory.
> > +     * @param defaultValue parameter default value.
> > +     * @since 2.3M1
> > +     */
> > +    public WikiMacroParameterDescriptor(String id, String description,
> boolean mandatory, Object defaultValue)
> > +    {
> > +        this.id = id;
> > +        this.description = description;
> > +        this.mandatory = mandatory;
> > +        this.defaultValue = defaultValue;
> > +    }
> > +
> > +    /**
> >      * {...@inheritdoc}
> >      */
> >     public String getId()
> > @@ -106,7 +128,7 @@
> >      */
> >     public Object getDefaultValue()
> >     {
> > -        return null;
> > +        return this.defaultValue;
> >     }
> >
> >     /**
> >
> > _______________________________________________
> > notifications mailing list
> > [email protected]
> > http://lists.xwiki.org/mailman/listinfo/notifications
>
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to