dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #07192
Re: test
Anders Logg skrev den 07/04-2008 følgende:
> On Fri, Apr 04, 2008 at 07:58:51PM +0200, Joachim B Haga wrote:
> > Joachim B Haga <jobh@xxxxxxxxxxxx> writes:
> >
> > > Anders Logg <logg@xxxxxxxxx> writes:
> > >
> > >> On Thu, Apr 03, 2008 at 07:48:45PM +0200, Ilmar Wilbers wrote:
> > >>> Any suggestions on how to use the demos as tests? We need to remove the
> > >>
> > >> Don't know. Ola?
> > >
> > > It would be fairly easy to do something like the following in plot.py
> > > (untested). Could of course be extended to actually make 'plot' save
> > > argument to a File, and compare for regression testing.
> >
> > Assuming lack of response is due to silent approval, I made it into a patch
> > (attached). To run without plotting, set the environment variable DOLFIN_NOPLOT
> > before execution.
> >
> > -j.
>
> I'll let Ola apply this if he likes it.
I'm on it. Seems to work, but my machine is in a state of pain today.
Ola
> --
> Anders
>
>
> > # HG changeset patch
> > # User "Joachim B Haga <jobh@xxxxxxxxx>"
> > # Date 1207331117 -7200
> > # Node ID fda8b41d190ba6d54e39f929141a861b23321737
> > # Parent ba94e1c3d30c9b15c12fef28a164ce6a18754cb9
> > Make plot() noninteractive if DOLFIN_NOPLOT is set.
> >
> > This is useful in automated testing.
> >
> > diff --git a/site-packages/dolfin/plot.py b/site-packages/dolfin/plot.py
> > --- a/site-packages/dolfin/plot.py
> > +++ b/site-packages/dolfin/plot.py
> > @@ -1,15 +1,29 @@ try:
> > -try:
> > - from viper.viper_dolfin import Viper, plot, update, interactive, save_plot, figure
> > -except:
> > - def figure(*args):
> > - raise RuntimeError, "Unable to plot (Viper plotter not available)"
> > - def plot(*args):
> > - raise RuntimeError, "Unable to plot (Viper plotter not available)"
> > +import os
> >
> > - class Plotter:
> > - def __getattr__(self, name):
> > +__all__ = ['Viper', 'plot', 'update', 'interactive', 'save_plot', 'figure']
> >
> > - def method(*args, **kwargs):
> > - raise RuntimeError, "Unable to plot (Viper plotter not available)"
> > +if os.environ.has_key('DOLFIN_NOPLOT'):
> > + from dolfin import File
> >
> > - return method
> > + def ignore(*args, **kwargs):
> > + pass
> > + for x in __all__:
> > + exec('%s = ignore' % x)
> > +
> > + # Override some functions, to save plot data for regression testing
> > + n=0
> > + def plot(u, *args, **kwargs):
> > + global n
> > + n += 1
> > + file = File('plot-output-%d.pvd' % n)
> > + file << u
> > +
> > +else:
> > + try:
> > + for x in __all__:
> > + exec ('from viper.viper_dolfin import %s' % x)
> > + except:
> > + def no_viper(*args, **kwargs):
> > + raise RuntimeError, "Unable to plot (Viper plotter not available)"
> > + for x in __all__:
> > + exec('%s = no_viper' % x)
>
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
>
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
References
-
test
From: Ilmar Wilbers, 2008-04-03
-
Re: test
From: Anders Logg, 2008-04-03
-
Re: test
From: Joachim B Haga, 2008-04-03
-
Re: test
From: Joachim B Haga, 2008-04-04
-
Re: test
From: Anders Logg, 2008-04-07