def test_registration_email_in_use():
    params = {"username":"******",
              "password":"******",
              "first_name":NEW_USER_FNAME,
              "last_name":NEW_USER_LNAME,
              "email":"*****@*****.**", # student_coll2_2
              "team":"team-ABC",
              "college":"college-1"}

    r,data = test_helpers.server_post("/registrations", params)

    assert r.status == 403
    assert 'DETAILS_ALREADY_USED' in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user('1_rt1')
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser('1_rt1')
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_bad_frist_name():
    params = {"username":"******",
              "password":"******",
              "first_name":NEW_USER_FNAME,
              "last_name":'2'+NEW_USER_LNAME,
              "email":"*****@*****.**",
              "team":"team-ABC",
              "college":"college-1"}

    r,data = test_helpers.server_post("/registrations", params)

    assert r.status == 403
    assert 'BAD_LAST_NAME' in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user('1_rt1')
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser('1_rt1')
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_email_in_use():
    params = {
        "username": "******",
        "password": "******",
        "first_name": NEW_USER_FNAME,
        "last_name": NEW_USER_LNAME,
        "email": "*****@*****.**",  # student_coll2_2
        "team": "team-ABC",
        "college": "college-1",
    }

    r, data = test_helpers.server_post("/registrations", params)

    assert r.status == 403
    assert "DETAILS_ALREADY_USED" in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user("1_rt1")
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser("1_rt1")
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_rq_from_student():
    test_helpers.delete_db()

    params = {"username":"******",
              "password":"******",
              "first_name":"register",
              "last_name":"this.user",
              "email":"*****@*****.**",
              "team":"team-ABC",
              "college":"college-1"}

    r,data = test_helpers.server_post("/registrations", params)
    status = r.status
    assert status == 403
    assert 'YOU_CANT_REGISTER_USERS' in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user('2_rt1')
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser('2_rt1')
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_bad_frist_name():
    params = {"username":"******",
              "password":"******",
              "first_name":NEW_USER_FNAME,
              "last_name":'2'+NEW_USER_LNAME,
              "email":"*****@*****.**",
              "team":"team-ABC",
              "college":"college-1"}

    r,data = test_helpers.server_post("/registrations", params)

    assert r.status == 403
    assert 'BAD_LAST_NAME' in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user('1_rt1')
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser('1_rt1')
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_rq_from_student():
    test_helpers.delete_db()

    params = {
        "username": "******",
        "password": "******",
        "first_name": "register",
        "last_name": "this.user",
        "email": "*****@*****.**",
        "team": "team-ABC",
        "college": "college-1",
    }

    r, data = test_helpers.server_post("/registrations", params)
    status = r.status
    assert status == 403
    assert "YOU_CANT_REGISTER_USERS" in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user("2_rt1")
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser("2_rt1")
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_registration_name_in_use():
    params = {"username":"******",
              "password":"******",
              "first_name":'student2', # student_coll1_2
              "last_name":'student',
              "email":"*****@*****.**",
              "team":"team-ABC",
              "college":"college-1"}

    r,data = test_helpers.server_post("/registrations", params)

    status = r.status
    assert status == 403, data
    assert 'DETAILS_ALREADY_USED' in data
    assert len(test_helpers.get_registrations()) == 0

    try:
        created = User.create_user('1_ss1')
        assert False, "Should not have created user"
    except:
        pass

    pending = PendingUser('1_ss1')
    assert not pending.in_db

    test_helpers.assert_no_emails()
def test_post_blueshirt_record_student_media_consent_again_no_email():
    params = {"username":"******",
              "password":"******",
              "media_consent":'true',
              }

    r, data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, (r.status, data)

    u = User("student_coll1_1")
    assert u.has_media_consent

    test_helpers.assert_no_emails()
Exemple #9
0
def test_post_blueshirt_record_student_media_consent_again_no_email():
    params = {
        "username": "******",
        "password": "******",
        "media_consent": 'true',
    }

    r, data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, (r.status, data)

    u = User("student_coll1_1")
    assert u.has_media_consent

    test_helpers.assert_no_emails()
def test_email_change_request_reset_without_change():
    """ Test that a change requests to the original value,
        where there is no actual outstanding request doens't explode"""
    username = "******"
    old_email = User(username).email

    params = {"username":"******",
              "password":"******",
              "new_email":old_email,
              }

    r,data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, data
    user = User(username)
    assert user.email == old_email

    test_helpers.assert_no_emails()
Exemple #11
0
def test_email_change_request_reset_without_change():
    """ Test that a change requests to the original value,
        where there is no actual outstanding request doens't explode"""
    username = "******"
    old_email = User(username).email

    params = {
        "username": "******",
        "password": "******",
        "new_email": old_email,
    }

    r, data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, data
    user = User(username)
    assert user.email == old_email

    test_helpers.assert_no_emails()
def test_email_change_request_reset():
    """ Test that change requests via POST at /user/ are handled correclty. """
    username = "******"
    old_email = User(username).email
    new_email = "*****@*****.**"
    setup_new_email(username, new_email, 'bees')

    params = {"username":"******",
              "password":"******",
              "new_email":old_email,
              }

    r,data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, data
    user = User(username)
    assert user.email == old_email

    pe = PendingEmail(username)
    assert not pe.in_db, 'POST using original email should have cleared request'

    test_helpers.assert_no_emails()
Exemple #13
0
def test_email_change_request_reset():
    """ Test that change requests via POST at /user/ are handled correclty. """
    username = "******"
    old_email = User(username).email
    new_email = "*****@*****.**"
    setup_new_email(username, new_email, 'bees')

    params = {
        "username": "******",
        "password": "******",
        "new_email": old_email,
    }

    r, data = test_helpers.server_post("/user/student_coll1_1", params)
    assert r.status == 200, data
    user = User(username)
    assert user.email == old_email

    pe = PendingEmail(username)
    assert not pe.in_db, 'POST using original email should have cleared request'

    test_helpers.assert_no_emails()