def test_nulltable(self): st = UnpreparedElfStringTable() self.assertEqual(st.get_string_idx(0), "") self.assertEqual(st.index_of(""), 0) self.assertEqual(st.index_of("anything"), None) self.assertEqual(st.offset_of(""), 0) self.assertEqual(st.offset_of("anything"), None) self.assertEqual(st.get_file_data(), array.array("B", "\x00"))
def test_nulltable(self): st = UnpreparedElfStringTable() self.assertEqual(st.get_string_idx(0), "") self.assertEqual(st.index_of(""), 0) self.assertEqual(st.index_of("anything"), None) self.assertEqual(st.offset_of(""), 0) self.assertEqual(st.offset_of("anything"), None) self.assertEqual(st.get_file_data(), array.array('B', '\x00'))
def test_fromdata(self): data = ByteArray("\0name.\0Variable\0able\0xx\0") st = UnpreparedElfStringTable(data=data) st = st.prepare(0, 0, 0, 32, "<") self.assertEqual(len(st.get_strings()), 5) self.assertEqual(st.get_string_idx(1), "name.") self.assertEqual(st.get_string_idx(2), "Variable") self.assertEqual(st.get_string_idx(3), "able") self.assertEqual(st.get_string_idx(4), "xx") self.assertEqual(st.get_string_ofs(0), "") self.assertEqual(st.get_string_ofs(1), "name.") self.assertEqual(st.get_string_ofs(7), "Variable") self.assertEqual(st.get_string_ofs(11), "able") self.assertEqual(st.get_string_ofs(16), "able") self.assertEqual(st.get_file_data(), data)
def test_fromdata(self): data = ByteArray('\0name.\0Variable\0able\0xx\0') st = UnpreparedElfStringTable(data=data) st = st.prepare(0, 0, 0, 32, '<') self.assertEqual(len(st.get_strings()), 5) self.assertEqual(st.get_string_idx(1), "name.") self.assertEqual(st.get_string_idx(2), "Variable") self.assertEqual(st.get_string_idx(3), "able") self.assertEqual(st.get_string_idx(4), "xx") self.assertEqual(st.get_string_ofs(0), "") self.assertEqual(st.get_string_ofs(1), "name.") self.assertEqual(st.get_string_ofs(7), "Variable") self.assertEqual(st.get_string_ofs(11), "able") self.assertEqual(st.get_string_ofs(16), "able") self.assertEqual(st.get_file_data(), data)
def test_simpletable(self): st = UnpreparedElfStringTable() self.assertEqual(st.add_string("name."), 1) self.assertEqual(st.add_string("Variable"), 7) self.assertEqual(st.add_string("able"), 16) self.assertEqual(st.add_string("xx"), 21) self.assertEqual(len(st.get_strings()), 5) self.assertEqual(st.get_string_idx(1), "name.") self.assertEqual(st.get_string_idx(2), "Variable") self.assertEqual(st.get_string_idx(3), "able") self.assertEqual(st.get_string_idx(4), "xx") self.assertEqual(st.get_string_ofs(0), "") self.assertEqual(st.get_string_ofs(1), "name.") self.assertEqual(st.get_string_ofs(7), "Variable") self.assertEqual(st.get_string_ofs(11), "able") self.assertEqual(st.get_string_ofs(16), "able") self.assertEqual(st.get_file_data(), array.array("B", "\0name.\0Variable\0able\0xx\0"))
def test_simpletable(self): st = UnpreparedElfStringTable() self.assertEqual(st.add_string("name."), 1) self.assertEqual(st.add_string("Variable"), 7) self.assertEqual(st.add_string("able"), 16) self.assertEqual(st.add_string("xx"), 21) self.assertEqual(len(st.get_strings()), 5) self.assertEqual(st.get_string_idx(1), "name.") self.assertEqual(st.get_string_idx(2), "Variable") self.assertEqual(st.get_string_idx(3), "able") self.assertEqual(st.get_string_idx(4), "xx") self.assertEqual(st.get_string_ofs(0), "") self.assertEqual(st.get_string_ofs(1), "name.") self.assertEqual(st.get_string_ofs(7), "Variable") self.assertEqual(st.get_string_ofs(11), "able") self.assertEqual(st.get_string_ofs(16), "able") self.assertEqual(st.get_file_data(), array.array('B', '\0name.\0Variable\0able\0xx\0'))