Example #1
0
def get_or_create_output_group(calculation):
    """
    For a given Calculation, get or create a new frozendict Data node that
    has as its values all output Data nodes of the Calculation.

    :param calculation: Calculation
    """
    if not isinstance(calculation, Calculation):
        raise TypeError("Can only create output groups for type Calculation")

    outputs = calculation.get_outputs_dict(link_type=LinkType.CREATE)
    outputs.update(calculation.get_outputs_dict(link_type=LinkType.RETURN))

    return FrozenDict(dict=outputs)
Example #2
0
 def test_length(self):
     input = {'a': Int(5).store(), 'b': Str('testing').store()}
     d = FrozenDict(dict=input)
     self.assertEqual(len(input), len(d))
Example #3
0
 def test_iterate(self):
     input = {'a': Int(5).store(), 'b': Str('testing').store()}
     d = FrozenDict(dict=input)
     for k, v in d.iteritems():
         self.assertEqual(input[k], v)
Example #4
0
 def test_get_value(self):
     input = {'a': Int(5).store()}
     d = FrozenDict(dict=input)
     self.assertEqual(d['a'], input['a'])
Example #5
0
 def test_create_invalid(self):
     with self.assertRaises(AssertionError):
         d = FrozenDict(dict={'a': 5})
Example #6
0
 def test_create(self):
     d = FrozenDict(dict={})