/[escript]/trunk/escript/test/python/run_xml.py
ViewVC logotype

Diff of /trunk/escript/test/python/run_xml.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 149 by jgs, Thu Sep 1 03:31:39 2005 UTC revision 150 by jgs, Thu Sep 15 03:44:45 2005 UTC
# Line 210  class ModeltoDomTestCase(unittest.TestCa Line 210  class ModeltoDomTestCase(unittest.TestCa
210            
211      def testModelhasID(self):      def testModelhasID(self):
212          assert int(self._dom().getElementsByTagName("Model")[0].getAttribute("id"))>99          assert int(self._dom().getElementsByTagName("Model")[0].getAttribute("id"))>99
213    
214    class ModeltoDomTestCase(unittest.TestCase):
215        def _xml(self, modulename, modelname):
216            # returns a modelframe class, generated from the xml
217            return '''<?xml version="1.0" ?>
218    <ESys> <Simulation type="Simulation"> <Component rank="0">
219    
220        <Model id="127" module="%s" type="%s">
221    
222    <Parameter type="float"> <Name> a </Name> <Value> 0.9 </Value> </Parameter>
223    <Parameter type="Link"> <Name> f </Name> <Value> <Link> <Target> 128 </Target>
224    <Attribute> u </Attribute> </Link> </Value> </Parameter> <Parameter
225    type="float"> <Name> tend </Name> <Value>
226    1.0 </Value> </Parameter> <Parameter type="int"> <Name> u </Name> <Value> 10
227      </Value> </Parameter> <Parameter type="float"> <Name> tol </Name> <Value>
228      1e-08 </Value> </Parameter> <Parameter type="float"> <Name> dt </Name>
229      <Value>
230    0.01 </Value> </Parameter> <Parameter type="str"> <Name> message </Name>
231      <Value> current error = 9.516258e-01 </Value> </Parameter> </Model>
232      </Component> <Component rank="1"> <Model id="128" type="ODETEST"> <Parameter
233      type="float"> <Name> a </Name> <Value>
234    0.9 </Value> </Parameter> <Parameter type="Link"> <Name> f </Name> <Value>
235      <Link> <Target> 127 </Target> <Attribute> u </Attribute> </Link> </Value>
236      </Parameter> <Parameter type="float"> <Name> tend </Name> <Value>
237    1.0 </Value> </Parameter> <Parameter type="float"> <Name> u </Name> <Value>
238      -10.0 </Value> </Parameter> <Parameter type="float"> <Name> tol </Name>
239      <Value> 1e-08 </Value> </Parameter> <Parameter type="float"> <Name> dt
240      </Name> <Value>
241    0.1 </Value> </Parameter> <Parameter type="str"> <Name> message </Name> <Value>
242      current error = 1.904837e+01 </Value> </Parameter> </Model> </Component>
243      <Component rank="2"> <Model id="129" type="Messenger"> <Parameter
244      type="Link"> <Name> message </Name> <Value> <Link> <Target> 127 </Target>
245      <Attribute> message </Attribute> </Link> </Value> </Parameter> </Model>
246      </Component> </Simulation> <Model id="128" type="ODETEST"> <Parameter
247      type="float"> <Name> a </Name> <Value>
248    0.9 </Value> </Parameter> <Parameter type="Link"> <Name> f </Name> <Value>
249      <Link> <Target> 127 </Target> <Attribute> u </Attribute> </Link> </Value>
250      </Parameter> <Parameter type="float"> <Name> tend </Name> <Value>
251    1.0 </Value> </Parameter> <Parameter type="float"> <Name> u </Name> <Value>
252      -10.0 </Value> </Parameter> <Parameter type="float"> <Name> tol </Name>
253      <Value> 1e-08 </Value> </Parameter> <Parameter type="float"> <Name> dt
254      </Name> <Value>
255    0.1 </Value> </Parameter> <Parameter type="str"> <Name> message </Name> <Value>
256      current error = 1.904837e+01 </Value> </Parameter> </Model> <Model id="127"
257      type="ODETEST"> <Parameter type="float"> <Name> a </Name> <Value>
258    0.9 </Value> </Parameter> <Parameter type="Link"> <Name> f </Name> <Value>
259      <Link> <Target> 128 </Target> <Attribute> u </Attribute> </Link> </Value>
260      </Parameter> <Parameter type="float"> <Name> tend </Name> <Value>
261    1.0 </Value> </Parameter> <Parameter type="int"> <Name> u </Name> <Value> 10
262      </Value> </Parameter> <Parameter type="float"> <Name> tol </Name> <Value>
263      1e-08 </Value> </Parameter> <Parameter type="float"> <Name> dt </Name>
264      <Value>
265    0.01 </Value> </Parameter> <Parameter type="str"> <Name> message </Name>
266      <Value> current error = 9.516258e-01 </Value> </Parameter> </Model> <Model
267      id="127" type="ODETEST"> <Parameter type="float"> <Name> a </Name> <Value>
268    0.9 </Value> </Parameter> <Parameter type="Link"> <Name> f </Name> <Value>
269      <Link> <Target> 128 </Target> <Attribute> u </Attribute> </Link> </Value>
270      </Parameter> <Parameter type="float"> <Name> tend </Name> <Value>
271    1.0 </Value> </Parameter> <Parameter type="int"> <Name> u </Name> <Value> 10
272      </Value> </Parameter> <Parameter type="float"> <Name> tol </Name> <Value>
273      1e-08 </Value> </Parameter> <Parameter type="float"> <Name> dt </Name>
274      <Value>
275    0.01 </Value> </Parameter> <Parameter type="str"> <Name> message </Name>
276      <Value> current error = 9.516258e-01 </Value> </Parameter> </Model> </ESys>
277    ''' % (modulename, modelname)
278    
279        def testModuleAttribute(self):
280            modeldoc = parse(self._xml('test_xml', 'ODETEST'))
281    
282        def testModuleAttributeFails(self):
283            try:
284                modeldoc = parse(self._xml('a', 'b'))
285            except ImportError:
286                return # correct
287    
288            assert False, "This test should have resulted in an ImportError"
289                    
290  class Messenger(Model):  class Messenger(Model):
291      def __init__(self, *args, **kwargs):      def __init__(self, *args, **kwargs):
# Line 283  class ODETEST(Model): Line 359  class ODETEST(Model):
359      def finalize(self):      def finalize(self):
360          return self.__tn>=self.tend          return self.__tn>=self.tend
361    
362    
363            
364  if __name__ == "__main__":  if __name__ == "__main__":
365              unittest.main()      from test_xml import Messenger, ODETEST
366        unittest.main()
367    

Legend:
Removed from v.149  
changed lines
  Added in v.150

  ViewVC Help
Powered by ViewVC 1.1.26