def test_option_hexification(self): outcomes = ['thing1', 'thing2', 'thing3'] qtext = RealityCheckQuestion.encodeText('multiple-select', 'oink', outcomes, 'my-category') q = RealityCheckQuestion.populatedJSONForTemplate(RealityCheckTemplate.defaultTemplateForType('multiple-select'), qtext) self.assertEqual(q['type'], 'multiple-select') self.assertEqual(RealityCheckQuestion.answerToBytes32([False], q), '0x0000000000000000000000000000000000000000000000000000000000000000') self.assertEqual(RealityCheckQuestion.answerToBytes32([False, False], q), '0x0000000000000000000000000000000000000000000000000000000000000000') self.assertEqual(RealityCheckQuestion.answerToBytes32([True], q), '0x0000000000000000000000000000000000000000000000000000000000000001') self.assertEqual(RealityCheckQuestion.answerToBytes32([True, False], q), '0x0000000000000000000000000000000000000000000000000000000000000001') self.assertEqual(RealityCheckQuestion.answerToBytes32([False, True], q), '0x0000000000000000000000000000000000000000000000000000000000000002') self.assertEqual(RealityCheckQuestion.answerToBytes32([True, True], q), '0x0000000000000000000000000000000000000000000000000000000000000003') self.assertEqual(RealityCheckQuestion.answerToBytes32([True, False, True], q), '0x0000000000000000000000000000000000000000000000000000000000000005')
def test_answer_formatting(self): q = RealityCheckQuestion.populatedJSONForTemplate(RealityCheckTemplate.defaultTemplateForType('bool'), '') self.assertEqual(RealityCheckQuestion.answerToBytes32(1, q), '0x0000000000000000000000000000000000000000000000000000000000000001') self.assertEqual(RealityCheckQuestion.answerToBytes32(0, q), '0x0000000000000000000000000000000000000000000000000000000000000000')