Mock classes?

vdelbart wrote:
I create a JIRA : http://jira.jboss.com/jira/browse/JBRULES-1590

it's to complicate to me to create an unit test with a hibernate session.

thanks,

V.


Mark Proctor wrote:
  
Can you open a JIRA for this? If you provide a unit test with it, we'll 
see if we can include this in 4.0.7. 5.0 will now have shadow proxies 
any more, as default.

Mark
vdelbart wrote:
    
I think the method cloneObject 'ShadowProxyUtils' could be improve like
follow :

   public static Object cloneObject(Object original) {
        Object clone = null;
        if ( original instanceof Cloneable ) {
            try {
                Method cloneMethod = original.getClass().getMethod(
"clone",
                                                                    new
Class[0] );
                clone = cloneMethod.invoke( original,
                                            new Object[0] );
            } catch ( Exception e ) {
                /* Failed to clone.  Don't worry about it, and just
return
                 * the original object. */
                clone = null;
            }
        }

        if ( clone == null ) {
            try {
                if ( original instanceof Map && 
                     original != Collections.EMPTY_MAP && 
                     !UNMODIFIABLE_MAP.isAssignableFrom(
original.getClass()
) ) {
                    
                    /* empty and unmodifiable maps can't (and don't need
to)
be shadowed */
                    clone = original.getClass().newInstance();
                    ((Map) clone).putAll( (Map) original );
                    
                } else if ( original instanceof Collection && 
                            original != Collections.EMPTY_LIST && 
                            original != Collections.EMPTY_SET && 
                            !UNMODIFIABLE_COLLECTION.isAssignableFrom(
original.getClass() ) ) {
                    
                    /* empty and unmodifiable collections can't (and
don't
need to) be shadowed */
                    clone = original.getClass().newInstance();
                    ((Collection) clone).addAll( (Collection) original );
                    
                } else if ( original.getClass().isArray() ) {
                    clone = cloneArray( original );
                }
                
            } catch ( Exception e ) {
                /* Failed to clone.  Don't worry about it, and just
return
                 * the original object. */
                clone = null;
            }
        }

        if ( clone == null ) {
            clone = original;
        }

        return clone;
    }


In this way my PersistentSet will be not clone and I will be able to
continue to use shadow fact

What do you think about ?

V.

  
      
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users