def test_endianness(self): n = Node() n.set(100) if Endianness.machine_is_little_endian(): print("machine is little endian") self.assertTrue( Endianness.little_id() == Endianness.machine_default()) # big and back n.endian_swap_to_big() v = n.value() self.assertTrue(v != 100) n.endian_swap_to_little() v = n.value() self.assertTrue(v == 100) # big and back w/ default swap n.endian_swap_to_big() v = n.value() self.assertTrue(v != 100) n.endian_swap_to_machine_default() v = n.value() self.assertTrue(v == 100) elif Endianness.machine_is_big_endian(): print("machine is big endian") self.assertTrue( Endianness.big_id() == Endianness.machine_default()) # little and back n.endian_swap_to_little() v = n.value() self.assertTrue(v != 100) n.endian_swap_to_big() v = n.value() self.assertTrue(v == 100) # little and back w/ default swap n.endian_swap_to_little() v = n.value() self.assertTrue(v != 100) n.endian_swap_to_machine_default() v = n.value() self.assertTrue(v == 100) n.set(20) n.endian_swap(Endianness.big_id()) n.endian_swap(Endianness.little_id()) v = n.value() self.assertTrue(v == 20)