def test_smoking():
    """
    > pytest -s

    :return:
    """
    #DEBUG_ENABLED = True
    InputOutput.CACHE_MODE = True
    in_out = InputOutput(interface_type=InputOutput.INTERFACE_TYPE_SIMPLE)

    InputOutput.INPUT_CACHE_DATA_USER = "******"

    therapist = Therapist(in_out=in_out)

    assert therapist.interview.ask_for_name()

    print("name: {}".format(therapist.client.get_name()))

    assert therapist.client.get_name() == "Alex"

    InputOutput.INPUT_CACHE_DATA_USER = "******"
    #InputOutput.INPUT_CACHE_DATA_USER = "******"

    message_for_dream = MessageTypeAnalysis(
        InputOutput.INPUT_CACHE_DATA_USER).is_dream(Request.SUBJECT)
    a_dream = Dream(message_for_dream)
    AnalyseDream(a_dream)

    assert a_dream.get_subject() == Subject.SOMEONE
    assert a_dream.get_direct_object() == "Car"
    assert a_dream.get_ratings() == [Rating.NEGATIVE]
def test_dream_rating():

    #An Input which contains a Dream.
    message = VALID_DREAMS[3]

    # message_nlp as processed by MessageTypeAnalysis.
    message_nlp = MessageTypeAnalysis(message).is_dream()

    #Create a Dream.
    a_dream = Dream(message_nlp)

    #Assign features of Dream.
    analyse_dream = AnalyseDream(a_dream)

    assert a_dream.get_ratings() == [Rating.POSITIVE, Rating.POSITIVE]