def test_reviewer_features_gives_average_review_length():
    reviewer_review_map = {
        324: [get_review(content="22"),
              get_review(content="55555")],
        101: [get_review(content="99999999")]
    }
    assert reviewer_features(324, reviewer_review_map)[1] == 3.5
def test_reviewer_features_gives_rating_stdevation():
    reviewer_review_map = {
        101:
        [get_review(rating=0),
         get_review(rating=2),
         get_review(rating=4)]
    }
    assert reviewer_features(101, reviewer_review_map)[2] == 2
def test_reviewer_features_gives_max_date_occurrences():
    reviewer_review_map = {
        324: [
            get_review(date="2010-01-01"),
            get_review(date="2010-01-01"),
            get_review(date="2012-02-03")
        ],
        101: [get_review(date="2001-01-01")]
    }
    assert reviewer_features(324, reviewer_review_map)[0] == 2
def test_reviewer_features_gives_percentage_pos_ratings():
    reviewer_review_map = {
        324: [
            get_review(rating=5.0),
            get_review(rating=3.0),
            get_review(rating=4.0),
            get_review(rating=1.0)
        ],
        101: [get_review(date="2001-01-01")]
    }
    assert reviewer_features(324, reviewer_review_map)[3] == 0.5
def test_reviewer_features_gives_rating_stdevation_0_if_one_review():
    reviewer_review_map = {101: [get_review(rating=1)]}
    assert reviewer_features(101, reviewer_review_map)[2] == 0