1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
from nexusformat.nexus.tree import NXentry, NXgroup, NXroot
def test_attribute_paths(field1):
root = NXroot(NXentry())
root.entry.g1 = NXgroup(field1)
assert root.entry.g1.nxpath == "/entry/g1"
assert root["entry/g1"] is root.entry.g1
assert root["entry/g1/f1"] is root.entry.g1.f1
assert "g1" in root.entry
assert "f1" in root.entry.g1
assert "entry/g1/f1" in root
assert root.entry.g1.f1.nxroot is root
def test_dictionary_paths(field1):
root = NXroot(NXentry())
root["entry/g1"] = NXgroup(field1)
assert root.entry.g1.nxpath == "/entry/g1"
assert root["entry/g1"] is root.entry.g1
assert root["entry/g1/f1"] is root.entry.g1.f1
assert "g1" in root["/entry"]
assert "f1" in root["/entry/g1"]
assert "/entry/g1/f1" in root
assert root["/entry/g1/f1"].nxroot is root
def test_relative_paths(field1):
root = NXroot(NXentry())
root["entry/g1"] = NXgroup()
root["entry/g1/g2"] = NXgroup()
root["entry/g1/g2/f1"] = field1
assert "f1" in root["entry/g1/g2"]
assert "g2/f1" in root["entry/g1"]
assert "g1/g2/f1" in root["entry"]
assert root["entry/g1/g2/f1"].nxpath == "/entry/g1/g2/f1"
assert "entry" in root
|