def test_to_canonical_value_with_dict(self): self.assertEqual(type_utils.to_canonical_value({ 'a': 1, 'b': 0.1, }), structure.Struct([ ('a', 1), ('b', 0.1), ])) self.assertEqual(type_utils.to_canonical_value({ 'b': 0.1, 'a': 1, }), structure.Struct([ ('a', 1), ('b', 0.1), ]))
def test_to_canonical_value_with_dict(self): self.assertEqual( type_utils.to_canonical_value({ 'a': 1, 'b': 0.1, }), anonymous_tuple.AnonymousTuple([ ('a', 1), ('b', 0.1), ])) self.assertEqual( type_utils.to_canonical_value({ 'b': 0.1, 'a': 1, }), anonymous_tuple.AnonymousTuple([ ('a', 1), ('b', 0.1), ]))
def test_to_canonical_value_with_list_of_dict(self): self.assertEqual(type_utils.to_canonical_value([{ 'a': 1, 'b': 0.1, }]), [anonymous_tuple.AnonymousTuple([ ('a', 1), ('b', 0.1), ])])
def test_to_canonical_value_with_list_of_dict(self): self.assertEqual(type_utils.to_canonical_value([{ 'a': 1, 'b': 0.1, }]), [structure.Struct([ ('a', 1), ('b', 0.1), ])])
def test_to_canonical_value_with_ordered_dict(self): self.assertEqual( type_utils.to_canonical_value( collections.OrderedDict([ ('a', 1), ('b', 0.1), ])), anonymous_tuple.AnonymousTuple([ ('a', 1), ('b', 0.1), ])) self.assertEqual( type_utils.to_canonical_value( collections.OrderedDict([ ('b', 0.1), ('a', 1), ])), anonymous_tuple.AnonymousTuple([ ('b', 0.1), ('a', 1), ]))
def test_to_canonical_value_with_ordered_dict(self): self.assertEqual( type_utils.to_canonical_value( collections.OrderedDict([ ('a', 1), ('b', 0.1), ])), structure.Struct([ ('a', 1), ('b', 0.1), ])) self.assertEqual( type_utils.to_canonical_value( collections.OrderedDict([ ('b', 0.1), ('a', 1), ])), structure.Struct([ ('b', 0.1), ('a', 1), ]))
def capture_computed_value_from_graph(value, type_spec): """Captures `value` from a TensorFlow graph. Args: value: A Python object made of tensors in `graph`, `tf.data.Dataset`s, `anonymous_tuple.AnonymousTuple`s and other structures, to be captured as an instance of `ComputedValue`. type_spec: The type of the value to be captured. Returns: An instance of `ComputedValue`. """ type_spec = computation_types.to_type(type_spec) py_typecheck.check_type(type_spec, computation_types.Type) value = type_utils.to_canonical_value(value) return ComputedValue(to_representation_for_type(value, type_spec), type_spec)
def test_to_canonical_value_with_list_of_strings(self): self.assertEqual(type_utils.to_canonical_value(['a', 'b', 'c']), ['a', 'b', 'c'])
def test_to_canonical_value_with_list_of_bools(self): self.assertEqual(type_utils.to_canonical_value([True, False]), [True, False])
def test_to_canonical_value_with_list_of_floats(self): self.assertEqual(type_utils.to_canonical_value([1.0, 2.0, 3.0]), [1.0, 2.0, 3.0])
def test_to_canonical_value_with_list_of_ints(self): self.assertEqual(type_utils.to_canonical_value([1, 2, 3]), [1, 2, 3])
def test_to_canonical_value_with_string(self): self.assertEqual(type_utils.to_canonical_value('a'), 'a')
def test_to_canonical_value_with_bool(self): self.assertEqual(type_utils.to_canonical_value(True), True) self.assertEqual(type_utils.to_canonical_value(False), False)
def test_to_canonical_value_with_float(self): self.assertEqual(type_utils.to_canonical_value(1.0), 1.0)
def test_to_canonical_value_with_int(self): self.assertEqual(type_utils.to_canonical_value(1), 1)
def test_to_canonical_value_with_none(self): self.assertEqual(type_utils.to_canonical_value(None), None)