Ejemplo n.º 1
0
 def start_simulation(self):
     metadataprovider = IMetaDataProvider(self)
     point_type = metadataprovider.get_meta('point_type', 'scalar')
     point_value = metadataprovider.get_meta('value', 0)
     if point_type == 'scalar':
         self.parent.scalarcount += 1
         try: 
             minvalue = int(point_value)
         except ValueError: 
             minvalue = float(point_value)
         maxvalue = 100
         stepvalue = 1
         upmagnitude = not (self.parent.scalarcount % 5)
         if upmagnitude:
             minvalue += 500
             maxvalue *= 10
         oddscalar = self.parent.scalarcount % 2
         if oddscalar:
             step = 0.5
         minvalue = metadataprovider.get_meta('min', str(minvalue))
         maxvalue = metadataprovider.get_meta('max', str(maxvalue))
         stepvalue = metadataprovider.get_meta('step', str(stepvalue))
         scalartype = simulators.SequentialInteger
         conversion = int
         try: 
             minvalue = int(minvalue)
         except ValueError: 
             conversion = float
             minvalue = float(minvalue)
             scalartype = simulators.SequentialNumber
         try:
             maxvalue = int(maxvalue)
         except ValueError:
             conversion = float
             maxvalue = float(maxvalue)
             scalartype = simulators.SequentialNumber
         try:
             stepvalue = int(stepvalue)
         except ValueError:
             conversion = float
             stepvalue = float(stepvalue)
             scalartype = simulators.SequentialNumber
         #self.scalarconversion = conversion
         # Overriding for demonstration which uses all floats.
         self.scalarconversion = float
         self._simulator = scalartype(minvalue, maxvalue, stepvalue)
     elif point_type == 'enumeration':
         values = point_value.keys()
         values.sort()
         names = map(point_value.get, values)
         enumerations = map(EnumeratedValue, values, names)
         self._simulator = simulators.SequentialEnumeration(enumerations)
     self.pointtype = point_type
     periodvalue = 15
     periodvalue = metadataprovider.get_meta('period', str(periodvalue))
     try:
         periodvalue = int(periodvalue)
     except ValueError:
         periodvalue = float(periodvalue)
     self._simulator = simulators.PeriodicModifier(self._simulator, periodvalue)
     self.mode = 'simulation'
Ejemplo n.º 2
0
del(meta1)
del(meta2)

meta2 = IMetaDataProvider(first)
assert items == meta2.get_items(), 'Mismatched data'
assert items is not meta2.get_items(), 'Should not be same object'
assert meta_dict == meta2.get_meta_dictionary(), 'Mismatched data'
assert predicates == meta2.get_predicates(), 'Mismatched data'
assert triples == meta2.get_triples(), 'Mismatched data'
assert values == meta2.get_values(), 'Mismatched data'

meta3 = IMetaDataProvider(first)
assert meta2 is not meta3, 'Should not be same object'
meta3.add_meta('Test', 'test')
assert meta2.get_meta('Test') == 'test', 'Changes not reflected.'

try: meta3['no such predicate']
except KeyError: pass
else: assert True, 'Should have raised exception'

try: predicate = meta3.get_meta('no such predicate', 'predicate')
except KeyError: assert True, 'Should have returned default'
else: assert predicate == 'predicate', 'Wrong default returned'

try: meta3['no such predicate']
except KeyError: pass
else: assert True, 'Still should have raised exception'

try: predicate = meta3.setdefault_meta('no such predicate', 'predicate')
except KeyError: assert True, 'Should have returned default'
Ejemplo n.º 3
0
del (meta1)
del (meta2)

meta2 = IMetaDataProvider(first)
assert items == meta2.get_items(), 'Mismatched data'
assert items is not meta2.get_items(), 'Should not be same object'
assert meta_dict == meta2.get_meta_dictionary(), 'Mismatched data'
assert predicates == meta2.get_predicates(), 'Mismatched data'
assert triples == meta2.get_triples(), 'Mismatched data'
assert values == meta2.get_values(), 'Mismatched data'

meta3 = IMetaDataProvider(first)
assert meta2 is not meta3, 'Should not be same object'
meta3.add_meta('Test', 'test')
assert meta2.get_meta('Test') == 'test', 'Changes not reflected.'

try:
    meta3['no such predicate']
except KeyError:
    pass
else:
    assert True, 'Should have raised exception'

try:
    predicate = meta3.get_meta('no such predicate', 'predicate')
except KeyError:
    assert True, 'Should have returned default'
else:
    assert predicate == 'predicate', 'Wrong default returned'