Example #1
0
def _real_test(qs, answer_index):
    his = []
    for q in qs:
        question = nCoV_diagnosis_engine_pb2.DetailedQuestions()
        ParseDict(q, question, ignore_unknown_fields=True)
        his.append(question)
    with Session(temp_req, None) as context:
        ret_code, _, result = engine.predict(context,
                                             his_questions=his,
                                             strategy='beijing')
        assert ret_code == 0
        assert result['reply_type'] == nCoV_diagnosis_engine_pb2.NO_NEED
        assert result['answer_index'] == answer_index

        context.mark_succ('Quiz', 1 if ret_code == 0 else 0, ret_code)


# def test_case1():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['以上都没有'], 'no': 3}]
#
#     _real_test(qs, 1)
#
# def test_case2():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['>=38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['以上都没有'], 'no': 3}]
#
#     _real_test(qs, 2)
#
# def test_case3():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['是'], 'no': 4}]
#
#     _real_test(qs, 3)
#
# def test_case4():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['是'], 'no': 5}]
#
#     _real_test(qs, 4)
#
# def test_case5():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 5},
#             {'questionQuery': '年龄?', 'candidateSymp': ['小于5岁', '5~60岁', '60岁以上'],
#                 'sympList': ['60岁以上'], 'no': 6}]
#
#     _real_test(qs, 5)
#
# def test_case6():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 5},
#             {'questionQuery': '年龄?', 'candidateSymp': ['小于5岁', '5~60岁', '60岁以上'],
#                 'sympList': ['5~60岁'], 'no': 6},
#             {'questionQuery': '是否为孕妇?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['是'], 'no': 7}]
#
#     _real_test(qs, 6)
#
# def test_case7():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 5},
#             {'questionQuery': '年龄?', 'candidateSymp': ['小于5岁', '5~60岁', '60岁以上'],
#                 'sympList': ['5~60岁'], 'no': 6},
#             {'questionQuery': '是否为孕妇?', 'candidateSymp': ['是', '否'],
#                  'sympList': ['否'], 'no': 7},
#             {'questionQuery': '是否患有心脏病、慢性肺病、慢性肝肾病、肥胖等慢性病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 8}]
#
#     _real_test(qs, 7)
#
# def test_case8():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 5},
#             {'questionQuery': '年龄?', 'candidateSymp': ['小于5岁', '5~60岁', '60岁以上'],
#                 'sympList': ['5~60岁'], 'no': 6},
#             {'questionQuery': '是否为孕妇?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 7},
#             {'questionQuery': '是否患有心脏病、慢性肺病、慢性肝肾病、肥胖等慢性病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 8},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 9},
#             {'questionQuery': '最近两周是否接触过来自武汉的发热伴有呼吸道症状的患者,或有与他人聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 10}]
#
#     _real_test(qs, 8)
#
# def test_case9():
#     qs = [{'questionQuery': '是否发烧?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 1},
#             {'questionQuery': '发烧体温是多少度?', 'candidateSymp': ['<38', '>=38'],
#                 'sympList': ['<38'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '是否有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '咽痛', '干咳', '腹泻', '以上都没有'],
#                     'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '是否有明显的气喘或憋喘等症状?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '是否休息1~2天病情无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 5},
#             {'questionQuery': '年龄?', 'candidateSymp': ['小于5岁', '5~60岁', '60岁以上'],
#                 'sympList': ['5~60岁'], 'no': 6},
#             {'questionQuery': '是否为孕妇?', 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 7},
#             {'questionQuery': '是否患有心脏病、慢性肺病、慢性肝肾病、肥胖等慢性病?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 8},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 9},
#             {'questionQuery': '最近两周是否接触过来自武汉的发热伴有呼吸道症状的患者,或有与他人聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 10}]
#
#     _real_test(qs, 9)
Example #2
0
    with Session(temp_req, None) as context:

        his_question = []
        ret_code, ret_msg, result = engine.predict(context, his_question,
                                                   temp_req.strategy)
        while result[
                'reply_type'] == nCoV_diagnosis_engine_pb2.NEED_DETAILED_QUESTION:
            question_info = result['question']
            print('\nq_no:{}'.format(question_info['no']))
            print('q_type:{}'.format(question_info['question_type']))
            print('q:{}'.format(question_info['question_query']))
            print('s_a:{}'.format(question_info['candidate_symp']))

            answer = input()
            question_info['symp_list'] = [answer]

            question = nCoV_diagnosis_engine_pb2.DetailedQuestions()
            ParseDict(question_info, question, ignore_unknown_fields=True)

            his_question.append(question)

            ret_code, ret_msg, result = engine.predict(context, his_question,
                                                       temp_req.strategy)

        context.mark_succ('Quiz', 1 if ret_code == 0 else 0, ret_code)

        print('\n\nanswer:{}'.format(result))

        for q in his_question:
            print(MessageToDict(q))
Example #3
0
def _real_test(qs, answer_index):
    his = []
    for q in qs:
        question = nCoV_diagnosis_engine_pb2.DetailedQuestions()
        ParseDict(q, question, ignore_unknown_fields=True)
        his.append(question)
    with Session(temp_req, None) as context:
        ret_code, _, result = engine.predict(context,
                                             his_questions=his,
                                             strategy='v3')
        assert ret_code == 0
        assert result['reply_type'] == nCoV_diagnosis_engine_pb2.NO_NEED
        assert result['answer_index'] == answer_index

        context.mark_succ('Quiz', 1 if ret_code == 0 else 0, ret_code)

        print(result['conclusions'])


# def test_case1():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#             {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#                 'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 3},
#             {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#                 'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                 '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例', '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#             {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 5},
#             {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#                 'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                                   '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 7},
#             ]
#
#     _real_test(qs, 1)
#
#
# def test_case2():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                                     '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 5},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                              '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['以上都没有'], 'no': 7},
#           ]
#
#     _real_test(qs, 1)
#
# def test_case3():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['其它慢性病'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 5},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 7},
#           ]
#
#     _real_test(qs, 1)
#
# def test_case4():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 5},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 7},
#           ]
#
#     _real_test(qs, 1)
#
# def test_case5():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['有武汉及周边地区的旅行或居住史'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 5},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 7},
#           ]
#
#     _real_test(qs, 2)
#
# def test_case6():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['有武汉及周边地区的旅行或居住史'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
# 				'sympList': ['> 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 7},
#           ]
#
#     _real_test(qs, 11)
#
# def test_case7():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['有武汉及周边地区的旅行或居住史'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
# 				'sympList': ['≤ 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['鼻塞'], 'no': 7},
#           {'questionQuery': '请问上述症状是否有加重或休息后仍不见好转?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 8}
#           ]
#
#     _real_test(qs, 12)
#
# def test_case8():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['有武汉及周边地区的旅行或居住史'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
# 				'sympList': ['> 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['鼻塞'], 'no': 7},
#           {'questionQuery': '请问上述症状是否有加重或休息后仍不见好转?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 8}
#           ]
#
#     _real_test(qs, 13)
#
# def test_case9():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
# 				'sympList': ['> 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['以上都没有'], 'no': 7},
#           {'questionQuery': '请问上述症状是否休息后无好转,或逐渐加重?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 8}
#           ]
#
#     _real_test(qs, 8)
#
# def test_case10():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
# 				'sympList': ['≤ 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['乏力'], 'no': 7},
#           {'questionQuery': '请问上述症状是否有加重或休息后仍不见好转?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 8}
#           ]
#
#     _real_test(qs, 9)
#
#
# def test_case11():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '> 37.3'],
# 				'sympList': ['> 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['乏力'], 'no': 7},
#           {'questionQuery': '请问上述症状是否有加重或休息后仍不见好转?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 8}
#           ]
#
#     _real_test(qs, 5)
#
# def test_case12():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '> 37.3'],
# 				'sympList': ['> 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['胸闷、憋喘或呼吸困难'], 'no': 7}
#           ]
#
#     _real_test(qs, 15)
#
# def test_case13():
#     qs = [{'questionQuery': '请问您的年龄阶段是?', 'candidateSymp': ['小于5岁', '5~14岁', '15~60岁', '60岁以上'],
# 				'sympList': ['15~60岁'], 'no': 1},
#           {'questionQuery': '好的,请问您是否为孕妇?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['否'], 'no': 2},
#           {'questionType': 'MULTI', 'questionQuery': '了解,请问您是否患有以下慢性疾病?',
#            'candidateSymp': ['慢性心脑血管疾病', '慢性呼吸道疾病', '慢性肝、肾病', '免疫力低下', '其它慢性病', '以上都没有'],
# 				'sympList': ['以上都没有'],
#            'no': 3},
#           {'questionType': 'MULTI', 'questionQuery': '好的,最近两周内,是否有以下相关情况或接触史?',
#            'candidateSymp': ['有武汉及周边地区的旅行或居住史', '接触过武汉及周边(或其他病例聚集区)发热伴呼吸道症状的患者',
#                             '接触过的家人、同事或朋友同时出现发热或呼吸道症状', '接触、探视过疑似病例或确诊病例',
#                              '与疑似病例或确诊病例同乘一趟交通工具', '以上都没有'],
# 				'sympList': ['以上都没有'], 'no': 4},
#           {'questionQuery': '了解,请问您是否发热?', 'candidateSymp': ['是', '否'],
# 				'sympList': ['是'], 'no': 5},
#           {'questionQuery': '请问您体温最高达到多少度?', 'candidateSymp': ['> 37.3℃', '> 37.3'],
# 				'sympList': ['≤ 37.3℃'], 'no': 6},
#           {'questionType': 'MULTI', 'questionQuery': '收到,请问最近两周内是否还有其它症状?',
#            'candidateSymp': ['乏力', '咳嗽', '胸闷、憋喘或呼吸困难', '鼻塞', '流鼻涕',
#                             '咽痛', '头痛', '肌肉酸痛', '腹泻', '结膜炎', '以上都没有'],
#
# 				'sympList': ['胸闷、憋喘或呼吸困难'], 'no': 7}
#           ]
#
#     _real_test(qs, 14)
def _real_test(qs, answer_index):
    his = []
    for q in qs:
        question = nCoV_diagnosis_engine_pb2.DetailedQuestions()
        ParseDict(q, question, ignore_unknown_fields=True)
        his.append(question)
    with Session(temp_req, None) as context:
        ret_code, _, result = engine.predict(context,
                                             his_questions=his,
                                             strategy='wuhan')
        assert ret_code == 0
        assert result['reply_type'] == nCoV_diagnosis_engine_pb2.NO_NEED
        assert result['answer_index'] == answer_index

        context.mark_succ('Quiz', 1 if ret_code == 0 else 0, ret_code)


# def test_case1():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['≤ 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                  'sympList': ['以上都没有'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 5}
#     ]
#     _real_test(qs, 1)
#
# def test_case2():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['> 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['以上都没有'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 5}
#     ]
#     _real_test(qs, 2)
#
# def test_case3():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['≤ 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['流鼻涕'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'], 'sympList': ['否'],
#                 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 5}
#     ]
#     _real_test(qs, 3)
#
# def test_case4():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['≤ 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['以上都没有'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 5}
#     ]
#     _real_test(qs, 4)
#
# def test_case5():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['> 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['否'], 'no': 5}
#     ]
#     _real_test(qs, 5)
#
# def test_case6():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['> 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['以上都没有'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 5}
#     ]
#     _real_test(qs, 6)
#
# def test_case7():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['≤ 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                 'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 5}
#     ]
#     _real_test(qs, 7)
#
# def test_case8():
#     qs = [{'questionQuery': '请问您是否发热?', 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 1},
#             {'questionQuery': '请问发热到多少度?', 'candidateSymp': ['> 37.3℃', '≤ 37.3℃'],
#                 'sympList': ['> 37.3℃'], 'no': 2},
#             {'questionType': 'MULTI', 'questionQuery': '请问是否还有其它症状?',
#                 'candidateSymp': ['乏力', '干咳', '鼻塞', '流鼻涕', '咽痛', '头痛', '浑身酸痛', '腹泻', '以上都没有'],
#                     'sympList': ['腹泻'], 'no': 3},
#             {'questionQuery': '最近两周是否居住在武汉或去过武汉?', 'candidateSymp': ['是', '否'],
#                 'sympList': ['否'], 'no': 4},
#             {'questionQuery': '最近两周是否接触过来自武汉(或其他病例持续传播地区)的发热或有呼吸道症状的患者,或有聚集性发病?',
#                 'candidateSymp': ['是', '否'], 'sympList': ['是'], 'no': 5}
#     ]
#     _real_test(qs, 8)