def test_create_err(self): self.log_user() username = '******' password = '' name = 'name' lastname = 'lastname' email = 'errmail.com' response = self.app.post( url('users'), { 'username': username, 'password': password, 'name': name, 'active': False, 'lastname': lastname, 'email': email }) msg = validators.ValidUsername(False, {})._messages['system_invalid_username'] msg = h.html_escape(msg % {'username': '******'}) response.mustcontain("""<span class="error-message">%s</span>""" % msg) response.mustcontain( """<span class="error-message">Please enter a value</span>""") response.mustcontain( """<span class="error-message">An email address must contain a single @</span>""" ) def get_user(): self.Session.query(User).filter(User.username == username).one() self.assertRaises(NoResultFound, get_user), 'found user in database'
def test_forgot_password_wrong_mail(self): bad_email = "*****@*****.**" response = self.app.post(url(controller="login", action="password_reset"), {"email": bad_email}) msg = validators.ValidSystemEmail()._messages["non_existing_email"] msg = h.html_escape(msg % {"email": bad_email}) response.mustcontain()
def test_create_err(self): self.log_user() username = '******' password = '' name = 'name' lastname = 'lastname' email = 'errmail.com' response = self.app.post(url('users'), {'username': username, 'password': password, 'name': name, 'active': False, 'lastname': lastname, 'email': email}) msg = validators.ValidUsername(False, {})._messages['system_invalid_username'] msg = h.html_escape(msg % {'username': '******'}) response.mustcontain("""<span class="error-message">%s</span>""" % msg) response.mustcontain("""<span class="error-message">Please enter a value</span>""") response.mustcontain("""<span class="error-message">An email address must contain a single @</span>""") def get_user(): Session().query(User).filter(User.username == username).one() self.assertRaises(NoResultFound, get_user), 'found user in database'
def test_create_err(self): self.log_user() username = "******" password = "" name = "name" lastname = "lastname" email = "errmail.com" response = self.app.post( url("users"), { "username": username, "password": password, "name": name, "active": False, "lastname": lastname, "email": email, }, ) msg = validators.ValidUsername(False, {})._messages["system_invalid_username"] msg = h.html_escape(msg % {"username": "******"}) response.mustcontain("""<span class="error-message">%s</span>""" % msg) response.mustcontain("""<span class="error-message">Please enter a value</span>""") response.mustcontain("""<span class="error-message">An email address must contain a single @</span>""") def get_user(): self.Session.query(User).filter(User.username == username).one() self.assertRaises(NoResultFound, get_user), "found user in database"
def test_forgot_password_wrong_mail(self): bad_email = '*****@*****.**' response = self.app.post(pwd_reset_url, { 'email': bad_email, }) msg = validators.ValidSystemEmail()._messages['non_existing_email'] msg = h.html_escape(msg % {'email': bad_email}) response.mustcontain()
def test_forgot_password_wrong_mail(self): bad_email = '*****@*****.**' response = self.app.post( url(controller='login', action='password_reset'), {'email': bad_email, } ) msg = validators.ValidSystemEmail()._messages['non_existing_email'] msg = h.html_escape(msg % {'email': bad_email}) response.mustcontain()
def test_register_err_same_username(self): uname = 'test_admin' response = self.app.post(url(controller='login', action='register'), {'username': uname, 'password': '******', 'password_confirmation': 'test12', 'email': '*****@*****.**', 'firstname': 'test', 'lastname': 'test'}) msg = validators.ValidUsername()._messages['username_exists'] msg = h.html_escape(msg % {'username': uname}) response.mustcontain(msg)
def test_register_err_case_sensitive(self): usr = '******' response = self.app.post(url(controller='login', action='register'), {'username': usr, 'password': '******', 'password_confirmation': 'test12', 'email': 'goodmailm', 'firstname': 'test', 'lastname': 'test'}) response.mustcontain('An email address must contain a single @') msg = validators.ValidUsername()._messages['username_exists'] msg = h.html_escape(msg % {'username': usr}) response.mustcontain(msg)
def test_register_err_same_username(self): uname = 'test_admin' response = self.app.post( url(controller='login', action='register'), { 'username': uname, 'password': '******', 'password_confirmation': 'test12', 'email': '*****@*****.**', 'firstname': 'test', 'lastname': 'test' }) msg = validators.ValidUsername()._messages['username_exists'] msg = h.html_escape(msg % {'username': uname}) response.mustcontain(msg)
def test_register_err_case_sensitive(self): usr = '******' response = self.app.post( url(controller='login', action='register'), { 'username': usr, 'password': '******', 'password_confirmation': 'test12', 'email': 'goodmailm', 'firstname': 'test', 'lastname': 'test' }) response.mustcontain('An email address must contain a single @') msg = validators.ValidUsername()._messages['username_exists'] msg = h.html_escape(msg % {'username': usr}) response.mustcontain(msg)
def test_register_err_same_username(self): uname = "test_admin" response = self.app.post( url(controller="login", action="register"), { "username": uname, "password": "******", "password_confirmation": "test12", "email": "*****@*****.**", "firstname": "test", "lastname": "test", }, ) msg = validators.ValidUsername()._messages["username_exists"] msg = h.html_escape(msg % {"username": uname}) response.mustcontain(msg)
def test_register_err_case_sensitive(self): usr = "******" response = self.app.post( url(controller="login", action="register"), { "username": usr, "password": "******", "password_confirmation": "test12", "email": "goodmailm", "firstname": "test", "lastname": "test", }, ) response.mustcontain("An email address must contain a single @") msg = validators.ValidUsername()._messages["username_exists"] msg = h.html_escape(msg % {"username": usr}) response.mustcontain(msg)
def test_my_account_update_err(self): self.log_user('test_regular2', 'test12') new_email = 'newmail.pl' response = self.app.post(url('admin_settings_my_account_update'), params=dict( _method='put', username='******', new_password='******', password_confirmation='test122', firstname='NewName', lastname='NewLastname', email=new_email,) ) response.mustcontain('An email address must contain a single @') from rhodecode.model import validators msg = validators.ValidUsername(edit=False, old_data={})._messages['username_exists'] msg = h.html_escape(msg % {'username': '******'}) response.mustcontain(u"%s" % msg)
def test_my_account_update_err(self): self.log_user('test_regular2', 'test12') new_email = 'newmail.pl' response = self.app.post(url('admin_settings_my_account_update'), params=dict( _method='put', username='******', new_password='******', password_confirmation='test122', firstname='NewName', lastname='NewLastname', email=new_email, )) response.mustcontain('An email address must contain a single @') from rhodecode.model import validators msg = validators.ValidUsername( edit=False, old_data={})._messages['username_exists'] msg = h.html_escape(msg % {'username': '******'}) response.mustcontain(u"%s" % msg)
def test_my_account_update_err(self): self.log_user('test_regular2', 'test12') new_email = 'newmail.pl' response = self.app.post(url('my_account'), params={ 'username': '******', 'new_password': '******', 'password_confirmation': 'test122', 'firstname': 'NewName', 'lastname': 'NewLastname', 'email': new_email, 'csrf_token': self.csrf_token, }) response.mustcontain('An email address must contain a single @') from rhodecode.model import validators msg = validators.ValidUsername( edit=False, old_data={})._messages['username_exists'] msg = h.html_escape(msg % {'username': '******'}) response.mustcontain(u"%s" % msg)
def diff_2way(self, repo_name, f_path): diff1 = request.GET.get('diff1', '') diff2 = request.GET.get('diff2', '') try: if diff1 not in ['', None, 'None', '0' * 12, '0' * 40]: c.changeset_1 = c.rhodecode_repo.get_changeset(diff1) try: node1 = c.changeset_1.get_node(f_path) if node1.is_dir(): raise NodeError('%s path is a %s not a file' % (node1, type(node1))) except NodeDoesNotExistError: c.changeset_1 = EmptyChangeset(cs=diff1, revision=c.changeset_1.revision, repo=c.rhodecode_repo) node1 = FileNode(f_path, '', changeset=c.changeset_1) else: c.changeset_1 = EmptyChangeset(repo=c.rhodecode_repo) node1 = FileNode(f_path, '', changeset=c.changeset_1) if diff2 not in ['', None, 'None', '0' * 12, '0' * 40]: c.changeset_2 = c.rhodecode_repo.get_changeset(diff2) try: node2 = c.changeset_2.get_node(f_path) if node2.is_dir(): raise NodeError('%s path is a %s not a file' % (node2, type(node2))) except NodeDoesNotExistError: c.changeset_2 = EmptyChangeset(cs=diff2, revision=c.changeset_2.revision, repo=c.rhodecode_repo) node2 = FileNode(f_path, '', changeset=c.changeset_2) else: c.changeset_2 = EmptyChangeset(repo=c.rhodecode_repo) node2 = FileNode(f_path, '', changeset=c.changeset_2) except (RepositoryError, NodeError): log.error(traceback.format_exc()) return redirect(url('files_home', repo_name=c.repo_name, f_path=f_path)) if node2.is_binary: node2_content = 'binary file' else: node2_content = node2.content if node1.is_binary: node1_content = 'binary file' else: node1_content = node1.content html_escape_table = { "&": "\u0026", '"': "\u0022", "'": "\u0027", ">": "\u003e", "<": "\u003c", '\\': "\u005c", '\n': '\\n' } c.orig1 = h.html_escape((node1_content), html_escape_table) c.orig2 = h.html_escape((node2_content), html_escape_table) c.node1 = node1 c.node2 = node2 c.cs1 = c.changeset_1 c.cs2 = c.changeset_2 return render('files/diff_2way.html')
def desc(desc): if c.visual.stylify_metatags: return h.urlify_text(h.escaped_stylize(h.truncate(desc, 60))) else: return h.urlify_text(h.html_escape(h.truncate(desc, 60)))
def diff_2way(self, repo_name, f_path): diff1 = request.GET.get('diff1', '') diff2 = request.GET.get('diff2', '') try: if diff1 not in ['', None, 'None', '0' * 12, '0' * 40]: c.changeset_1 = c.rhodecode_repo.get_changeset(diff1) try: node1 = c.changeset_1.get_node(f_path) if node1.is_dir(): raise NodeError('%s path is a %s not a file' % (node1, type(node1))) except NodeDoesNotExistError: c.changeset_1 = EmptyChangeset( cs=diff1, revision=c.changeset_1.revision, repo=c.rhodecode_repo) node1 = FileNode(f_path, '', changeset=c.changeset_1) else: c.changeset_1 = EmptyChangeset(repo=c.rhodecode_repo) node1 = FileNode(f_path, '', changeset=c.changeset_1) if diff2 not in ['', None, 'None', '0' * 12, '0' * 40]: c.changeset_2 = c.rhodecode_repo.get_changeset(diff2) try: node2 = c.changeset_2.get_node(f_path) if node2.is_dir(): raise NodeError('%s path is a %s not a file' % (node2, type(node2))) except NodeDoesNotExistError: c.changeset_2 = EmptyChangeset( cs=diff2, revision=c.changeset_2.revision, repo=c.rhodecode_repo) node2 = FileNode(f_path, '', changeset=c.changeset_2) else: c.changeset_2 = EmptyChangeset(repo=c.rhodecode_repo) node2 = FileNode(f_path, '', changeset=c.changeset_2) except (RepositoryError, NodeError): log.error(traceback.format_exc()) return redirect( url('files_home', repo_name=c.repo_name, f_path=f_path)) if node2.is_binary: node2_content = 'binary file' else: node2_content = node2.content if node1.is_binary: node1_content = 'binary file' else: node1_content = node1.content html_escape_table = { "&": "\u0026", '"': "\u0022", "'": "\u0027", ">": "\u003e", "<": "\u003c", '\\': "\u005c", '\n': '\\n' } c.orig1 = h.html_escape((node1_content), html_escape_table) c.orig2 = h.html_escape((node2_content), html_escape_table) c.node1 = node1 c.node2 = node2 c.cs1 = c.changeset_1 c.cs2 = c.changeset_2 return render('files/diff_2way.html')