Esempio n. 1
0
 def setUp(self):
     self.onefield = Metadata(data=np.arange(200))
     self.multifield = Metadata(data={
         "a": np.arange(200),
         "b": np.arange(200, 400),
         "c": np.arange(200)**2
     })
     return
Esempio n. 2
0
 def test_addfield(self):
     # data, field syntax used in order to specify field order
     md = Metadata([("F R. Lillie", 3784), ("School St.", 78),
                    ("Quissett Ave.", 83)],
                   fields=("street", "number"))
     md.setfield("driveway", [True, True, False])
     ans = Metadata([("F R. Lillie", 3784, True), ("School St.", 78, True),
                     ("Quissett Ave.", 83, False)],
                    fields=("street", "number", "driveway"))
     self.assertEqual(md, ans)
     return
Esempio n. 3
0
 def test_updatefield(self):
     md = Metadata({
         "street": ["F. R. Lillie", "School St.", "Quissett Ave."],
         "number": [3784, 78, 83]
     })
     md.setfield("number", [3782, 78, 83])
     ans = Metadata({
         "street": ["F. R. Lillie", "School St.", "Quissett Ave."],
         "number": [3782, 78, 83]
     })
     self.assertEqual(md, ans)
     return
Esempio n. 4
0
 def test_extend(self):
     md1 = Metadata({
         "street": ["F. R. Lillie", "School St.", "Quissett Ave."],
         "number": [3784, 78, 83]
     })
     md2 = Metadata({
         "street": ["Winding Ln.", "Oyster Pond Rd."],
         "color": ["Grey", "White"]
     })
     md1.extend(md2)
     self.assertEqual(len(md1), 5)
     self.assertEqual(set((None, "Winding Ln.")), set(md1[3]))
     return
Esempio n. 5
0
 def test_reference_vs_value_dict(self):
     # metadata objects should carry values rather than references
     D = {"A": [1, 2, 3, 4, 5], "B": [6, 7, 8, 9, 10]}
     md = Metadata(D)
     D["A"][3] = -99
     self.assertEqual(md.getfield("A"), [1, 2, 3, 4, 5])
     return
Esempio n. 6
0
 def test_reference_vs_value_list(self):
     # metadata objects should carry values rather than references
     L = [1, 2, 3, 4, 5]
     md = Metadata(L)
     L[3] = -99
     self.assertEqual(md.getfield("value"), [1, 2, 3, 4, 5])
     return
Esempio n. 7
0
 def test_init_specified_fields2(self):
     md = Metadata([("by air", ), ("by land,"), ("by sea", )],
                   fields=("mode", ))
     self.assertEqual(md.data, [("by air", ), ("by land,"), ("by sea", )])
     self.assertEqual(md.fields, ("mode", ))
     return
Esempio n. 8
0
 def test_init_specified_fields(self):
     md = Metadata([(1, 2, 3), (4, 5, 6), (7, 8, 9)],
                   fields=("a", "b", "c"))
     self.assertEqual(md.data, [(1, 2, 3), (4, 5, 6), (7, 8, 9)])
     self.assertEqual(md.fields, ("a", "b", "c"))
     return
Esempio n. 9
0
 def test_none_values(self):
     D = {"A": [1, None, 3, 4, 5], "B": [6, 7, 8, None, 10]}
     md = Metadata(D)
     self.assertTrue(md.getfield("A")[1] is None)
     self.assertEqual(md.getfield("A"), md.getfield("A"))
     return
Esempio n. 10
0
 def test_nan_values(self):
     D = {"A": [1, np.nan, 3, 4, 5], "B": [6, 7, 8, np.nan, 10]}
     md = Metadata(D)
     self.assertTrue(np.isnan(md.getfield("A")[1]))
     self.assertEqual(md.getfield("A"), md.getfield("A"))
     return