def test_group_edit_allowed(client, reset_ct_group, own_group, image): ''' user can edit groups he is head of ''' test_user = TEST_USER[0] # login login(client, test_user['email'], test_user['password']) # edit rv = edit_group(client, own_group, description='Dies ist ein Test', where='In der Ecclesia', when='Jeden Sonntag', audience='Jeder', image=image) # db entry avatar_id = models.GroupMetadata.query.first().avatar_id assert rv.status_code == 200 assert 'Dies ist ein Test' in rv.data assert 'Gruppe geaendert' in rv.data assert 'In der Ecclesia' in rv.data assert 'Jeden Sonntag' in rv.data assert 'Jeder' in rv.data assert '{}.jpg'.format(avatar_id) in rv.data # check group overview rv = client.get('/groups') assert '{}-thumb.jpg'.format(avatar_id) in rv.data assert 'In der Ecclesia' in rv.data assert 'Jeden Sonntag' in rv.data
def test_random_prayer(client): ''' random prayer view ''' test_user = TEST_USER[1] prayer = 'Dies ist ein Test!' name = 'Testname' login(client, test_user['email'], test_user['password']) add_prayer(client, prayer, name) # prayer with show_user rv = client.get('/prayer') soup = BeautifulSoup(rv.data) assert '{}'.format(name) == soup.find_all('div', class_='panel-heading')[0].text # prayer body assert prayer in soup.find_all('div', class_='panel-body')[0].text # prayer with unabled show_user edit_prayer(client, 1, prayer, active=True) rv = client.get('/prayer') soup = BeautifulSoup(rv.data) assert soup.find_all('div', class_='panel-heading')[0].text == ''
def test_profile_session_active_state(client, ct_same_username_and_password): ''' active state in session after login and visiting other profiles. activate different user in session if the visited profile is allowed to use. dont forget the active state on visiting a different users profile. ''' test_user = ct_same_username_and_password with client as c: login(c, test_user[0]['email'], test_user[0]['password']) # first state of active after logged in assert flask.session['user'][0]['active'] is True assert flask.session['user'][1]['active'] is False # go to second user profile c.get('/profile/{}'.format(flask.session['user'][1]['id'])) assert flask.session['user'][0]['active'] is False assert flask.session['user'][1]['active'] is True # go to a profile that doesnt belong to test user. # active state shouldnt have changed c.get('/profile/{}'.format(TEST_USER[0]['id'])) assert flask.session['user'][0]['active'] is False assert flask.session['user'][1]['active'] is True
def testLoggedIn(self): self.browser.get(Logins.login_url) helper.login(self) elem = self.browser.find_element_by_css_selector( '#topNavBar > ul.nav.navbar-nav.navbar-right > li > a') print("%%%%%%" + elem.text) self.assertTrue(elem.text == ' Logout')
def test_whatsup_feed_links(test_user, client): # prepare everything login(client, test_user['email'], test_user['password']) token = auth.generate_feed_auth(test_user) # overview rv = client.get('/whatsup') soup = BeautifulSoup(rv.data) feed_links = [i['href'] for i in soup.find_all('link') if 'feed' in i['href']] assert len(feed_links) == 2 assert feed_links[0] == '/feeds/whatsup.atom?token={}'.format(token) assert feed_links[1] == '/feeds/whatsup-comments.atom?token={}'.format( token) # new rv = client.get('/whatsup/new') soup = BeautifulSoup(rv.data) feed_links = [i['href'] for i in soup.find_all('link') if 'feed' in i['href']] assert len(feed_links) == 2 assert feed_links[0] == '/feeds/whatsup.atom?token={}'.format(token) assert feed_links[1] == '/feeds/whatsup-comments.atom?token={}'.format( token)
def teacher_reg(): form = TeacherRegisterForm() if form.validate_on_submit(): # right here. check if school id is valid. id = form.school_id.data try: teacher = Teacher.register(first_name=form.first_name.data, last_name=form.last_name.data, title=form.title.data, school_id=form.school_id.data, username=form.username.data, password=form.password.data) db.session.commit() except IntegrityError: flash("Username already taken", 'bad') return render_template('register/teacher-reg.html', form=form) login(teacher) return redirect(f'/teacher/{teacher.id}') return render_template('register/teacher-reg.html', form=form)
def setUp(self): runserver.app.config['TESTING'] = True runserver.app.config['DB_NAME_USERS'] = 'test_users' self.app = runserver.app.test_client() #helper.create_neo4j_demo_user() helper.login(self.app) helper.my_patients_neo4j_data()
def test_group_edit_button(client, test_user, allowed): ''' edit button on group page ''' login(client, test_user['email'], test_user['password']) rv = client.get('/group/1') edit_button = 'edit' in rv.data assert edit_button == allowed
def test_edit_profile_button(client, test_user): login(client, test_user['email'], test_user['password']) rv = client.get('/profile/{}'.format(get_wrong_user_id(test_user['id']))) assert 'edit' not in rv.data rv = client.get('/profile/{}'.format(test_user['id'])) assert 'edit' in rv.data
def test_search_whatsup(client, clean_whoosh_index): test_user = TEST_USER[0] login(client, test_user['email'], test_user['password']) # add whatsup posts add_whatsup_post(client, 'erstes subject', 'erster body') sleep(1) add_whatsup_post(client, 'zweites subject', 'zweiter body') sleep(1) add_whatsup_post(client, 'drittes subject', 'dritter body') sleep(1) # add comment add_whatsup_comment(client, 1, 'erster kommentar') add_whatsup_comment(client, 1, 'zweiter kommentar') # search for erstes subject rv = models.search_whatsup_posts('erstes') assert len(rv) == 1 assert rv[0].subject == 'erstes subject' assert rv[0].body == 'erster body' rv = models.search_whatsup_posts('erstes subject') assert len(rv) == 1 assert rv[0].subject == 'erstes subject' assert rv[0].body == 'erster body' # search for erster body rv = models.search_whatsup_posts('erster body') assert len(rv) == 1 assert rv[0].subject == 'erstes subject' assert rv[0].body == 'erster body' # search for the word subject rv = [i.subject for i in models.search_whatsup_posts('subject')] assert len(rv) == 3 assert 'erstes subject' in rv assert 'zweites subject' in rv assert 'drittes subject' in rv # search for the word body rv = [i.subject for i in models.search_whatsup_posts('body')] assert len(rv) == 3 assert 'erstes subject' in rv assert 'zweites subject' in rv assert 'drittes subject' in rv # search for comment rv = models.search_whatsup_comments('erster') assert len(rv) == 1 assert rv[0].body == 'erster kommentar'
def test_drivers_area_order(driver, driver2, admin_token): driver1_email = driver.get('email') driver1_password = 123456 driver2_email = driver2.get('email') driver2_password = 123456 driver1_login_json = login("Driver", driver1_email, driver1_password) assert driver1_login_json['status'] == "SUCCESS" if driver1_login_json['data']['status'] == 'Away-Off': print('Driver ==> {} <== status confirmed Away-Off after first login'. format(driver1_email)) driver1_token = driver1_login_json['data']['api_token'] print('driver1_token: ', driver1_token) '''take care that here we are calling change status api twice in order to be able to change status''' change_status_json = update_status(driver1_token, "Available") change_status_json = update_status(driver1_token, "Available") assert change_status_json['status'] == "SUCCESS" if change_status_json['status'] == "SUCCESS": print( 'Driver ==> {} <== status has been successfully changed into Available' .format(driver1_email)) driver2_login_json = login("Driver", driver2_email, driver2_password) assert driver2_login_json['status'] == "SUCCESS" if driver2_login_json['data']['status'] == 'Away-Off': print('Driver ==> {} <== status confirmed Away-Off after first login'. format(driver2_email)) driver2_token = driver2_login_json['data']['api_token'] print('driver2_token: ', driver2_token) '''take care that here we are calling change status api twice in order to be able to change status''' change_status_json = update_status(driver2_token, "Available") change_status_json = update_status(driver2_token, "Available") assert change_status_json['status'] == "SUCCESS" if change_status_json['status'] == "SUCCESS": print( 'Driver ==> {} <== status has been successfully changed into Available' .format(driver2_email)) point = {"lat": 30.06657871622343, "lng": 31.30840301513672} driver1_tracking_json = update_location(driver1_token, point['lat'], point['lng']) assert driver1_tracking_json['status'] == 'SUCCESS' if driver1_tracking_json['status'] == 'SUCCESS': print('Driver ==> {} <== location has been set successfully'.format( driver1_email)) driver2_tracking_json = update_location(driver2_token, point['lat'], point['lng']) assert driver2_tracking_json['status'] == 'SUCCESS' if driver2_tracking_json['status'] == 'SUCCESS': print('Driver ==> {} <== location has been set successfully'.format( driver2_email))
def setUp(self): load_data.load_data() runserver.app.config['TESTING'] = True runserver.app.config['DB_NAME'] = 'test_uclex' runserver.app.config['DB_NAME_HPO'] = 'test_hpo' runserver.app.config['DB_NAME_PATIENTS'] = 'test_patients' runserver.app.config['DB_NAME_USERS'] = 'test_users' self.app = runserver.app.test_client() helper.create_neo4j_demo_user() helper.login(self.app)
def test_mail_access(client, test_user): # access if not logged in rv = client.get('/mail/group/1') assert rv.status_code == 302 assert 'You should be redirected automatically' in rv.data # a bogus mail url login(client, test_user['email'], test_user['password']) rv = client.get('/mail/foo/1') assert rv.status_code == 404
def test_logout(): """ logging as a user take an action ( go to profile page ==> u must get that user logout and go to profile page ==> you should not get user profile """ login("*****@*****.**", "Agenda@2020") logout() # this is just a comment # this is another commen
def test_access_index(client, test_user): # logged out rv = client.get('/') assert rv.status_code == 302 # logged in login(client, test_user['email'], test_user['password']) rv = client.get('/') assert rv.status_code == 200
def test_navbar_profile_links_same_auth(client, ct_same_username_and_password): ''' profile links in navbar for same email password combination ''' test_user = ct_same_username_and_password[0] login(client, test_user['email'], test_user['password']) rv = client.get('/') for user in ct_same_username_and_password: assert '{} {}'.format(user['vorname'], user['name']) in rv.data
def test_edit_index(client, image): # logged out rv = client.get('/edit') assert rv.status_code == 302 # wrong user test_user = TEST_USER[1] login(client, test_user['email'], test_user['password']) rv = client.get('/edit') assert rv.status_code == 401 logout(client) # right user test_user = TEST_USER[0] login(client, test_user['email'], test_user['password']) rv = client.get('/edit') assert rv.status_code == 200 rv = edit_index(client, image, 'http://eins.com', 'http://zwei.com', 'http://drei.com', 'http://vier.com') # check db rv = models.FrontPage.query.all()[-1] assert rv.first_row_image is not None assert rv.first_row_link == 'http://eins.com' assert rv.second_row_image is not None assert rv.second_row_link == 'http://zwei.com' assert rv.third_row_left_image is not None assert rv.third_row_left_link == 'http://drei.com' assert rv.third_row_right_image is not None assert rv.third_row_right_link == 'http://vier.com' # check rendered page first_row_image = rv.first_row_image second_row_image = rv.second_row_image third_row_left_image = rv.third_row_left_image third_row_right_image = rv.third_row_right_image rv = client.get('/') assert 'http://eins.com' in rv.data assert '{}.jpg'.format(first_row_image) in rv.data assert 'http://zwei.com' in rv.data assert '{}.jpg'.format(second_row_image) in rv.data assert 'http://drei.com' in rv.data assert '{}.jpg'.format(third_row_left_image) in rv.data assert 'http://vier.com' in rv.data assert '{}.jpg'.format(third_row_right_image) in rv.data
def test_navbar_profile_links(client, test_user): ''' profile link in navbar ''' rv = client.get('/') assert '{} {}'.format(test_user['vorname'], test_user['name']) not in rv.data # now login login(client, test_user['email'], test_user['password']) rv = client.get('/') assert '{} {}'.format(test_user['vorname'], test_user['name']) in rv.data
def test_login(client, test_user): ''' login user''' with client as c: rv = login(c, test_user['email'], test_user['password']) assert rv.status_code == 200 assert 'Erfolgreich eingeloggt!' in rv.data assert flask.session['user'][0]['active'] is True # wrong username and password rv = login(client, '*****@*****.**', 'bar')
def test_valid_users_and_groups(client, test_user, status_code): url = '/test/valid-users-and-groups' # not logged in rv = client.get(url) assert rv.status_code == 302 login(client, test_user['email'], test_user['password']) rv = client.get(url) assert rv.status_code == status_code
def test_access_prayer(client, test_user): ''' access to random prayer ''' # not logged in rv = client.get('/prayer') assert rv.status_code == 302 # logged in login(client, test_user['email'], test_user['password']) rv = client.get('/prayer') assert rv.status_code == 200
def test_access_group_list(client, test_user): ''' access group list ''' # not logged in rv = client.get('/groups') assert rv.status_code == 302 # logged in login(client, test_user['email'], test_user['password']) rv = client.get('/groups') assert rv.status_code == 200
def test_access_group(client, test_user): ''' logged out cant access group page''' # not logged in rv = client.get('/group/1') assert rv.status_code == 302 # logged in login(client, test_user['email'], test_user['password']) rv = client.get('/group/1') assert rv.status_code == 200
def test_search_view(client, clean_whoosh_index, test_user): login(client, test_user['email'], test_user['password']) # add whatsup posts add_whatsup_post(client, 'erstes subject', 'erster body') sleep(1) add_whatsup_post(client, 'zweites subject', 'zweiter body') sleep(1) add_whatsup_post(client, 'drittes subject', 'dritter body') sleep(1) # add comment add_whatsup_comment(client, 1, 'erster kommentar') add_whatsup_comment(client, 1, 'zweiter kommentar') # search for person person = TEST_USER[0] rv = search(client, 'marvin') soup = BeautifulSoup(rv.data) assert 'marvin' in soup.find_all('h1')[0].text assert 'Personen' in soup.find_all('h2')[0] assert '{} {}'.format(person['vorname'], person['name']).decode( 'utf-8') in soup.find_all('h4')[0].text # search for post rv = search(client, 'erster body') soup = BeautifulSoup(rv.data) assert 'erster body' in soup.find_all('h1')[0].text assert 'Posts' in soup.find_all('h2')[0] posts = [i.text for i in soup.find_all('div', class_='media-body')] for post in posts: assert 'erstes subject' in post assert 'erster body' in post # search for comment rv = search(client, 'kommentar') soup = BeautifulSoup(rv.data) assert 'kommentar' in soup.find_all('h1')[0].text assert 'Kommentare' in soup.find_all('h2')[0] comments = [i.text for i in soup.find_all('div', class_='media-body')] assert 'erster kommentar' in comments[0] assert 'zweiter kommentar' in comments[1]
def teacher_login(): form = LoginForm() if form.validate_on_submit(): teacher = Teacher.authenticate(form.username.data, form.password.data) if teacher: login(teacher) flash(f"Welcome {teacher.first_name}!", "good") return redirect(f"/teacher/{teacher.id}") flash("Invalid username or password", "bad") return render_template("login/teacher-login.html", form=form)
def guardian_login(): form = LoginForm() if form.validate_on_submit(): guardian = Guardian.authenticate(form.username.data, form.password.data) if guardian: login(guardian) flash(f"Welcome {guardian.first_name}!", "good") return redirect(f"/guardian/{guardian.id}") flash("Invalid username or password", "bad") return render_template("login/guardian-login.html", form=form)
def test_group_edit_forbidden(client, not_own_group, image): ''' user cant edit groups he isnt head of ''' test_user = TEST_USER[0] # login login(client, test_user['email'], test_user['password']) # edit rv = edit_group(client, not_own_group, description='Dies ist ein Test', where='In der Ecclesia', when='Jeden Sonntag', audience='Jeder', image=image) assert rv.status_code == 403
def download_assets(url, username, password, out_folder='out'): print('Logging in') browser = helper.login(url, username, password) page = browser.get(url) title = sanitize_title(page.soup.find('title').text) print('Retrieving links') asset_links = page.soup.select('body .activityinstance a') asset_links_filtered = [] for link in asset_links: if filter_element(link): asset_links_filtered.append(link) else: print('\tWill not get downloaded: "{}"'.format(link.text)) print( '\n(The following assets with icon-names will not be downloaded: "{}")\n' .format(', '.join(set(UNUSED_ICONS)))) folder_name = out_folder + '/' + title if not os.path.exists(folder_name): os.mkdir(folder_name) print('Starting download') for asset in asset_links_filtered: link = asset.attrs['href'] print('\tDownloading: "{}"'.format(asset.text)) download_file(browser, link, folder_name, default_filename=sanitize_title( asset.text.replace('Datei', '')))
def login(request): try: if request.method == 'POST': user = request.POST['username'] pwd = request.POST['pwd'] ''' 用户登录验证 ''' result = db.login(user,pwd) if result == 1: request.session['user_id']="321443" request.session['user'] = user weblog.online(request.session['user_id'], "login") return HttpResponseRedirect("/webapp/") else: template = loader.get_template('login.html') context ={"msg":"用户名或密码错误!"} return HttpResponse(template.render(context, request)) else: template = loader.get_template('login.html') return HttpResponse(template.render({}, request)) except Exception as e: pass
def test_login(self): account = generate_dummy_account() serial_number = register(account) logged_in_account = login(account.username, account.password) self.assertEqual(account.firstname, logged_in_account.firstname) self.assertEqual(account.lastname, logged_in_account.lastname)
def test_add_prayer(client, test_user): ''' adding prayer ''' login(client, test_user['email'], test_user['password']) prayer = 'Test-Anliegen' rv = add_prayer(client, prayer, 'Testname') assert rv.status_code == 200 assert 'Gebetsanliegen abgeschickt!' in rv.data assert prayer in rv.data # check db entry db_entry = models.get_prayer(1) assert db_entry.body == prayer assert db_entry.active is True assert db_entry.name == 'Testname'
def login(): """logs in user""" form_data = request.form # todo set up flash in base template results = helper.login(form_data) flash(results[0]) session['user_name'] = results[1] session['user_id'] = results[2] return redirect('/')
def main(): profile = "https://www.linkedin.com/in/richardyang98/" file_name = 'RY' logging.basicConfig(filename='scrape.log', filemode='w', format='%(name)s - %(levelname)s - %(message)s') options = Options() options.add_argument('--headless') options.add_argument('--no-sandbox') options.add_argument('--disable-dev-shm-usage') driver = webdriver.Chrome(ChromeDriverManager().install(), options=options) logging.info("driver setup done") login(driver=driver, email=config.email, password=config.password) scraper = Profile(driver=driver, profile=profile) scraper.scrape() write_to_json(file_name=file_name, data=scraper.LinkedIn_Dict)
def test_group_data(client, test_user): ''' group ct data and metadata on group page ''' with ct_connect.session_scope() as ct_session: groups = ct_connect.get_active_groups(ct_session) random_group = choice(groups) group_ct_data = ct_connect.get_group(ct_session, random_group.id) login(client, test_user['email'], test_user['password']) rv = client.get('/group/{}'.format(random_group.id)) assert group_ct_data.bezeichnung.split( '-')[-1].encode('utf-8') in rv.data if group_ct_data.treffzeit: assert group_ct_data.treffzeit.encode('utf-8') in rv.data if group_ct_data.treffpunkt: assert group_ct_data.treffpunkt.encode('utf-8') in rv.data
def test_access_profile(client, test_user): ''' access profiles ''' rv = client.get('/profile/{}'.format(test_user['id'])) assert rv.status_code == 302 # now login login(client, test_user['email'], test_user['password']) rv = client.get('/profile/{}'.format(test_user['id'])) assert rv.status_code == 200 assert '<h1>{} {}'.format(test_user['vorname'], test_user['name']) in rv.data assert 'avatar.png' in rv.data # not exisiting profile rv = client.get('/profile/7777') assert rv.status_code == 404
def test_mail(client, test_user): ''' sending mail through webform ''' recipients = [test_user['email']] subject = 'Testsubject' body = 'Testbody' with MAIL.record_messages() as outbox: login(client, test_user['email'], test_user['password']) rv = send_mail(client, '/mail/profile/{}'.format(test_user['id']), 'Testsubject', 'Testbody') assert rv.status_code == 200 assert 'Email gesendet!' in rv.data assert outbox[0].sender == '{} {} <{}>'.format( unidecode(test_user['vorname'].decode('utf-8')), unidecode(test_user['name'].decode('utf-8')), test_user['email']) assert outbox[0].recipients == recipients assert outbox[0].subject == subject assert body in outbox[0].body
def test_whatsup_feed_comments(client, test_user): # prepare everything login(client, test_user['email'], test_user['password']) add_whatsup_post(client, 'subject1', 'body1') sleep(1) add_whatsup_comment(client, 1, 'comment1') sleep(1) add_whatsup_comment(client, 1, 'comment2') logout(client) # logged out rv = client.get('/feeds/whatsup-comments.atom') # not allowed assert rv.status_code == 401 # logged in token = auth.generate_feed_auth(test_user) rv = get_whatsup_feed_comments(client, token) assert rv.status_code == 200 # parse feed rv = feedparser.parse(rv.data) assert rv['feed']['title'] == 'Recent WhatsUp Comments' assert rv.entries[0].title == 'Kommentar fuer "subject1" von {} {}'.format( unidecode(test_user['vorname'].decode('utf-8')), unidecode(test_user['name'].decode('utf-8'))) assert rv.entries[0].content[0]['value'] == 'comment2' assert rv.entries[1].content[0]['value'] == 'comment1' assert rv.entries[0].author == '{} {}'.format( unidecode(test_user['vorname'].decode('utf-8')), unidecode(test_user['name'].decode('utf-8'))) assert rv.entries[1].author == '{} {}'.format( unidecode(test_user['vorname'].decode('utf-8')), unidecode(test_user['name'].decode('utf-8'))) # wrong token token = 'foobar' rv = get_whatsup_feed_comments(client, token) assert rv.status_code == 401
def test_group_list(client, test_user): ''' group list data ''' with ct_connect.session_scope() as ct_session: group_data = [] # ct group data for group in ct_connect.get_active_groups(ct_session): group_data.append(group.bezeichnung.split('-')[-1].encode('utf-8')) if group.treffzeit: group_data.append(group.treffzeit.encode('utf-8')) if group.treffpunkt: group_data.append(group.treffpunkt.encode('utf-8')) login(client, test_user['email'], test_user['password']) rv = client.get('/groups') for data in group_data: assert data in rv.data assert 'avatar-thumb.png' in rv.data
def show_guardian_reg(): form = GuardianRegisterForm() if form.validate_on_submit(): try: guardian = Guardian.register(first_name=form.first_name.data, last_name=form.last_name.data, relation=form.relation.data, username=form.username.data, password=form.password.data) except IntegrityError: flash("Username already taken", 'bad') return render_template('register/teacher-reg.html', form=form) login(guardian) return redirect(f'/guardian/{guardian.id}') return render_template('register/guardian-reg.html', form=form)
def test_whatsup_mine(client, test_user): # logged out rv = client.get('/whatsup/mine') assert rv.status_code == 302 # log in login(client, test_user['email'], test_user['password']) rv = client.get('/whatsup/mine') assert rv.status_code == 200 # add posts add_whatsup_post(client, 'subject1', 'body1') sleep(1) add_whatsup_post(client, 'subject2', 'body2') rv = client.get('/whatsup/mine') soup = BeautifulSoup(rv.data) rv = soup.find_all('div', class_='panel-body') # order of own posts assert 'body2' in rv[0].text assert 'body1' in rv[1].text rv = edit_whatsup_post(client, 2, 'newsubject2', 'newbody2') # check flash message assert 'Post veraendert!' in rv.data soup = BeautifulSoup(rv.data) rv = soup.find_all('div', class_='panel-body') # changed body assert 'newbody2' in rv[0].text # changed subject rv = soup.find_all('h4') assert 'newsubject2' in rv[0].text
def test_del_prayer(client): '''delete prayer''' test_user = TEST_USER[0] login(client, test_user['email'], test_user['password']) # add prayer and logout add_prayer(client, 'Ein Test zum entfernen') logout(client) # login as other user and try to delete it wrong_test_user = TEST_USER[1] login(client, wrong_test_user['email'], wrong_test_user['password']) rv = del_prayer(client, 1) assert rv.status_code == 401 logout(client) # login as right user again login(client, test_user['email'], test_user['password']) rv = del_prayer(client, 1) assert rv.status_code == 200 assert 'Gebetsanliegen entfernt!' in rv.data # try to delete a prayer which is not existing rv = del_prayer(client, 20) assert rv.status_code == 404
def test_edit_prayer(client, test_user): ''' editing prayer ''' login(client, test_user['email'], test_user['password']) # add prayer prayer = 'Test-Anliegen' name = 'Testname' rv = add_prayer(client, prayer) prayer = 'Neues Anliegen' rv = edit_prayer(client, 1, prayer, name=name) assert rv.status_code == 200 assert 'Gebetsanliegen veraendert!' in rv.data assert prayer in rv.data # check db entry db_entry = models.get_prayer(1) assert db_entry.body == prayer assert db_entry.active is False assert db_entry.name == name
def login(): req_data = request.get_json() # Get items from the helper res_data = helper.login(req_data) # Return 404 if item not found if 'error' in res_data: response = Response(json.dumps(res_data), status=400, mimetype='application/json') response.headers["Access-Control-Allow-Origin"] = "*" return response # Return response response = Response(json.dumps(res_data), status=200, mimetype='application/json') response.headers["Access-Control-Allow-Origin"] = "*" return response
def log_in(): username = input("Enter your username: "******"Enter your password: "******"") print("Invalid Username or Password") print("") log_in() return print("") print("Hi, " + account.firstname + "!") print("") show_account_options(account)
def test_driver_status_change(driver): driver_email = driver.get('email') driver_password = constants.PASSWORD json_response = login("Driver", driver_email, driver_password) assert json_response.get('status') == "SUCCESS" assert json_response.get('data').get('status') == 'Away-Off' if json_response.get('data').get('status') == 'Away-Off': print('Driver ==> {} <== status confirmed Away-Off after first login'. format(driver_email)) driver_token = json_response.get('data').get('api_token') ''' take care here you are calling change status twice because single hit causes error ''' json_response = update_status(driver_token, 'Available') json_response = update_status(driver_token, 'Available') assert json_response.get('status') == "SUCCESS" if json_response.get('status') == "SUCCESS": print( 'Driver ==> {} <== status has been successfully changed into Available' .format(driver_email))
def login_user(): #Get item from the POST body # print(request.data) req_data = request.form item = req_data['username'] password = req_data['password'] #Add item to the list res_data = helper.login(item, password) #Return error if item not added if res_data is None: response = Response("{'error': 'Item not added - '}" + item, status=400, mimetype='application/json') return response #Return response response = Response(json.dumps(res_data), mimetype='application/json') return response
def download_assets(url, username, password, out_folder='out'): print('Logging in') browser = helper.login(url, username, password) page = browser.get(url) title = sanitize_title(page.soup.find('title').text) print('Retrieving links') asset_links = page.soup.select('body .activityinstance a') asset_links_filtered = [] for link in asset_links: if filter_element(link): asset_links_filtered.append(link) else: print('\tWill not get downloaded: "{}"'.format(link.text)) print('\n(The following assets with icon-names will not be downloaded: "{}")\n'.format(', '.join(set(UNUSED_ICONS)))) folder_name = out_folder + '/' + title if not os.path.exists(folder_name): os.mkdir(folder_name) print('Starting download') for asset in asset_links_filtered: link = asset.attrs['href'] print('\tDownloading: "{}"'.format(asset.text)) download_file(browser, link, folder_name, default_filename = sanitize_title(asset.text.replace('Datei', '')))
def setup_connection(url, user, password): print('Logging in') browser = helper.login(url, user, password) return browser
def test_login_Well(): email = "*****@*****.**" password = "******" assert json.loads(json.dumps(helper.login(email, password)))["error"] == 0
def setUp(self): self.browser = webdriver.Chrome() self.browser.get(data.Details.detailsURL) helper.login(self)
try: direct_inbox = driver.get(constants.direct_inbox_url) print("start direct for " + following_data[num_array] + " No." + str(num_array)) driver.implicitly_wait(20) write_id = driver.find_element_by_xpath(constants.query_box) write_id.send_keys(following_data[num_array]) num_array += 1 sleep(2) driver.find_element_by_xpath(constants.first_id_in_qb).click() driver.find_element_by_xpath(constants.next_to_direct).click() driver.implicitly_wait(20) sleep(1) write_massage = driver.find_element_by_tag_name("textarea") sleep(1) write_massage.send_keys(constants.massage) sleep(1) write_massage.send_keys(Keys.ENTER) sleep(1) except: print("Message not sent") if num_array > len(following_data): break helper.login() helper.notNowButton() getFileText(file_path=file_path) sendDirect(driver=helper.driver, array=following_data) helper.closeDriver()
def login(self): self.session = helper.login(self.config["user"], self.config["password"], self.config["cookie_file"])
def test_login_Bad2(): email = "*****@*****.**" password = "******" assert json.loads(json.dumps(helper.login(email, password)))["error"] == 1
def test_new_category_non_admin(): login(USER_EMAIL, USER_PASSWORD, CATEGORY_SUCCESS_MSG) category_actions() new_category(TITLE, DESC, CATEGORY_FAIL_MSG)
def test_login_with_different_credentials(email, password, expected_banner_txt): login(email, password, expected_banner_txt)
def test_login_Bad(): email = "*****@*****.**" password = "******" assert json.loads(json.dumps(helper.login(email, password)))["error"] == 1
soupa=bs(htmla) lst=[h for h in soupa.findAll('a')] link=[each.get('href') for each in lst] for x in link : try: u = urllib2.urlopen(baseurl+"/"+x) #Testing if link is valid and downloadable except: link.remove(x) path_folder=createfold(list_subject[1][int(select)]+'-'+list_subject[2][int(select)],fac) for x in range(0,len(link)): try: url = link[x] file_nam = lst[x].text ##print file_nam down(url,file_nam,path_folder) except Exception,e: print e pass print '*'*79 if __name__=="__main__": global br br=login() ask() home() timetable() group() Employ() while True: crs()
def post(self, request): # request.POST -: # <QueryDict: {u'username': [u'*****@*****.**'], # u'csrfmiddlewaretoken': [u'SM696oXH1A9cep0zp21RZgaomQa2eP6cJyf8fQZAnMc81JIpVVZW4Wjq7YyI9VT7'], # u'password': [u'shivam'], u'next': [u'']}> return login(request)
def testLoadPageWhileLoggedIn(self): self.browser.get(data.Register.loginURL) helper.login(self) self.browser.get(data.Register.registerURL) response = self.browser.current_url self.assertFalse(response == data.Register.registerURL)