示例#1
0
def test_get_value_invalid_offset():
    ifd = Ifd("<", blob=ifd_bytes)
    assert len(ifd.entries) == 2
    assert ifd.get_value(ifd.entries['data_offset']) == \
        ifd.entries['data_offset'].raw_value
    assert ifd.get_value(ifd.entries['data_length']) == \
        ifd.entries['data_length'].raw_value
示例#2
0
def test_ifd_get_byte_array_value():
    ifd = Ifd("<", blob=ifd_bytes_byte_array)
    val = ifd.get_value(ifd.entries['make'])
    assert isinstance(val, bytes)
    assert val == b'Canon\x00'
示例#3
0
def test_ifd_get_string_value():
    ifd = Ifd("<", blob=ifd_bytes_string_value)
    val = ifd.get_value(ifd.entries['make'])
    assert isinstance(val, (type(u""), str))
    assert val == 'Canon'
示例#4
0
def test_ifd_get_float():
    ifd = Ifd("<", blob=ifd_bytes_float)
    val = ifd.get_value(ifd.entries['make'])
    assert round(val - 1.62, 2) == 0
示例#5
0
def test_ifd_invalid_pointer():
    ifd = Ifd("<", blob=ifd_bytes_invalid_pointer)
    val = ifd.get_value(ifd.entries['make'])
    assert val == 303174162
示例#6
0
def test_ifd_get_byte_array_value():
    ifd = Ifd("<", blob=ifd_bytes_byte_array)
    val = ifd.get_value(ifd.entries["make"])
    assert isinstance(val, bytes)
    assert val == b"Canon\x00"
示例#7
0
def test_ifd_get_double():
    ifd = Ifd("<", blob=ifd_bytes_double)
    val = ifd.get_value(ifd.entries['make'])
    assert round(val - 3.14, 2) == 0
示例#8
0
def test_ifd_get_string_value():
    ifd = Ifd("<", blob=ifd_bytes_string_value)
    val = ifd.get_value(ifd.entries["make"])
    assert isinstance(val, (type(u""), str))
    assert val == "Canon"
示例#9
0
def test_get_value_invalid_offset():
    ifd = Ifd("<", blob=ifd_bytes)
    assert len(ifd.entries) == 2
    assert ifd.get_value(ifd.entries["data_offset"]) == ifd.entries["data_offset"].raw_value
    assert ifd.get_value(ifd.entries["data_length"]) == ifd.entries["data_length"].raw_value
示例#10
0
def test_ifd_invalid_pointer():
    ifd = Ifd("<", blob=ifd_bytes_invalid_pointer)
    val = ifd.get_value(ifd.entries["make"])
    assert val == 303174162
示例#11
0
def test_ifd_get_float():
    ifd = Ifd("<", blob=ifd_bytes_float)
    val = ifd.get_value(ifd.entries["make"])
    assert round(val - 1.62, 2) == 0
示例#12
0
def test_ifd_get_double():
    ifd = Ifd("<", blob=ifd_bytes_double)
    val = ifd.get_value(ifd.entries["make"])
    assert round(val - 3.14, 2) == 0