[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#829046: Difficulties in packaging pagure



Okay, now with src tree based on 2.15 and various patches proposed upstream,
I am able to pass all tests with *manual* installing (setup.py build; setup.py 
install) on my Debian Testing. That marks the elimination of compatibility 
problem of pagure to Debian 9 (and similarly Debian Unstable).

I made an (really) experimental packaging branch ("dev") based on previous 
v2.6 packaing on  Alioth [1], on which developers can run debuild -b *outside* 
chroot and see the test results. There are 10 errors when using dh_auto_test 
and I believe we should sort them out.

Logs attached.

[1] https://anonscm.debian.org/git/collab-maint/pagure.git/log/?h=dev

--
Boyuan Yang
======================================================================
ERROR: test_send_email (tests.test_pagure_lib_notify.PagureLibNotifytests)
Test the notify_new_comment method from pagure.lib.notify.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/mock/mock.py", line 1305, in patched
    return func(*args, **keywargs)
  File "tests/test_pagure_lib_notify.py", line 374, in test_send_email
    user_from='Zöé',
  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/tests/../pagure/lib/notify.py", line 275, in send_email
    print('To: %s' % to_mail)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 17-18: ordinal not in range(128)

======================================================================
ERROR: tests.test_stream_server (unittest.loader.ModuleImportFailure)
----------------------------------------------------------------------
ImportError: Failed to import test module: tests.test_stream_server
Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/loader.py", line 254, in _find_tests
    module = self._get_module_from_name(name)
  File "/usr/lib/python2.7/unittest/loader.py", line 232, in _get_module_from_name
    __import__(name)
  File "tests/test_stream_server.py", line 33, in <module>
    import pagure_stream_server as pss                  # pylint: disable=wrong-import-position, import-error
ImportError: No module named pagure_stream_server


======================================================================
FAIL: test_do_create_admin_token_no_user (tests.test_pagure_admin.PagureAdminAdminTokenEmptytests)
Test the do_create_admin_token function of pagure-admin without
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/test_pagure_admin.py", line 246, in test_do_create_admin_token_no_user
    self.assertEqual(_get_ouput(cmd)[0], 'No user "pingou" found\n')
AssertionError: 'Error: (sqlite3.OperationalError) no such table: users [SQL: u\'SELECT users.id AS users_id, users.user AS users_user, users.fullname AS users_fullname, users.public_ssh_key AS users_public_ssh_key, users.default_email AS users_default_email, users._settings AS users__settings, users.password AS users_password, users.token AS users_token, users.created AS users_created, users.updated_on AS users_updated_on \\nFROM users \\nWHERE users.user = ? ORDER BY users.user\\n LIMIT ? OFFSET ?\'] [parameters: (\'pingou\', 1, 0)]\n2017-05-17 18:29:29,088 [ERROR] root: Generic error catched:\nTraceback (most recent call last):\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/cli/admin.py", line 325, in main\n    args.func(args)\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/cli/admin.py", line 292, in do_create_admin_token\n    pagure.lib.get_user(SESSION, args.user)\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/lib/__init__.py", line 79, in get_user\n    user_obj = search_user(session, username=key)\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/lib/__init__.py", line 184, in search_user\n    output = query.first()\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2659, in first\n    ret = list(self[0:1])\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2457, in __getitem__\n    return list(res)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2761, in __iter__\n    return self._execute_and_instances(context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2776, in _execute_and_instances\n    result = conn.execute(querycontext.statement, self._params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 914, in execute\n    return meth(self, multiparams, params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 323, in _execute_on_connection\n    return connection._execute_clauseelement(self, multiparams, params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1010, in _execute_clauseelement\n    compiled_sql, distilled_params\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1146, in _execute_context\n    context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1341, in _handle_dbapi_exception\n    exc_info\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 202, in raise_from_cause\n    reraise(type(exception), exception, tb=exc_tb, cause=cause)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1139, in _execute_context\n    context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 450, in do_execute\n    cursor.execute(statement, parameters)\nOperationalError: (sqlite3.OperationalError) no such table: users [SQL: u\'SELECT users.id AS users_id, users.user AS users_user, users.fullname AS users_fullname, users.public_ssh_key AS users_public_ssh_key, users.default_email AS users_default_email, users._settings AS users__settings, users.password AS users_password, users.token AS users_token, users.created AS users_created, users.updated_on AS users_updated_on \\nFROM users \\nWHERE users.user = ? ORDER BY users.user\\n LIMIT ? OFFSET ?\'] [parameters: (\'pingou\', 1, 0)]\n' != 'No user "pingou" found\n'

======================================================================
FAIL: test_do_list_admin_token_empty (tests.test_pagure_admin.PagureAdminAdminTokenEmptytests)
Test the do_list_admin_token function of pagure-admin when there
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/test_pagure_admin.py", line 253, in test_do_list_admin_token_empty
    self.assertEqual(_get_ouput(cmd)[0], 'No admin tokens found\n')
AssertionError: 'Error: (sqlite3.OperationalError) no such table: tokens [SQL: u\'SELECT tokens.id AS tokens_id, tokens.user_id AS tokens_user_id, tokens.project_id AS tokens_project_id, tokens.description AS tokens_description, tokens.expiration AS tokens_expiration, tokens.created AS tokens_created \\nFROM tokens, tokens_acls, acls \\nWHERE tokens.id = tokens_acls.token_id AND tokens_acls.acl_id = acls.id AND acls.name IN (?, ?, ?, ?, ?, ?)\'] [parameters: (\'issue_comment\', \'issue_create\', \'issue_change_status\', \'pull_request_flag\', \'pull_request_comment\', \'pull_request_merge\')]\n2017-05-17 18:29:30,336 [ERROR] root: Generic error catched:\nTraceback (most recent call last):\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/cli/admin.py", line 325, in main\n    args.func(args)\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/cli/admin.py", line 228, in do_list_admin_token\n    expired=args.expired)\n  File "/home/hosiet/src/debian/collab-maint/pagure/.pybuild/pythonX.Y_2.7/build/pagure/lib/__init__.py", line 4295, in search_token\n    return query.all()\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2613, in all\n    return list(self)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2761, in __iter__\n    return self._execute_and_instances(context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2776, in _execute_and_instances\n    result = conn.execute(querycontext.statement, self._params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 914, in execute\n    return meth(self, multiparams, params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/sql/elements.py", line 323, in _execute_on_connection\n    return connection._execute_clauseelement(self, multiparams, params)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1010, in _execute_clauseelement\n    compiled_sql, distilled_params\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1146, in _execute_context\n    context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1341, in _handle_dbapi_exception\n    exc_info\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 202, in raise_from_cause\n    reraise(type(exception), exception, tb=exc_tb, cause=cause)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1139, in _execute_context\n    context)\n  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 450, in do_execute\n    cursor.execute(statement, parameters)\nOperationalError: (sqlite3.OperationalError) no such table: tokens [SQL: u\'SELECT tokens.id AS tokens_id, tokens.user_id AS tokens_user_id, tokens.project_id AS tokens_project_id, tokens.description AS tokens_description, tokens.expiration AS tokens_expiration, tokens.created AS tokens_created \\nFROM tokens, tokens_acls, acls \\nWHERE tokens.id = tokens_acls.token_id AND tokens_acls.acl_id = acls.id AND acls.name IN (?, ?, ?, ?, ?, ?)\'] [parameters: (\'issue_comment\', \'issue_create\', \'issue_change_status\', \'pull_request_flag\', \'pull_request_comment\', \'pull_request_merge\')]\n' != 'No admin tokens found\n'

======================================================================
FAIL: test_do_login (tests.test_pagure_flask_ui_login.PagureFlaskLogintests)
Test the do_login endpoint.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/test_pagure_flask_ui_login.py", line 236, in test_do_login
    'href="/login/?next=http://localhost/";>', output.data)
AssertionError: '<a class="nav-link btn btn-primary" href="/login/?next=http://localhost/";>' not found in '<!DOCTYPE html>\n<html lang=\'en\'>\n<head>\n    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\n    <title>Home - Pagure</title>\n    <link rel="shortcut icon" type="image/vnd.microsoft.icon"\n        href="/static/favicon.ico"/>\n    <link href="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/pagure.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/open-iconic/css/open-iconic.min.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/fonts/fonts.css"\n        rel="stylesheet" type="text/css" />\n    <link href="/static/hack_fonts/css/hack-extended.min.css"\n        type="text/css" rel="stylesheet" />\n<link href="/static/selectize.bootstrap3.css"\n  rel="stylesheet" />\n  </head>\n  <body id="home">\n  <!-- start masthead -->\n    <div class="masthead">\n      <div class="container">\n        <div class="row">\n          <div class="col-sm-3">\n            <a href="/">\n              <img height=40px src="/static/pagure-logo.png"\n                alt="pagure Logo" id="pagureLogo"/>\n            </a>\n          </div>\n          <div class="col-sm-9">\n            <div class="row">\n\n  <nav class="navbar navbar-light p-t-0 p-b-0">\n      <div class="container">\n        <ul class="nav navbar-nav nav-underline pull-xs-right">\n              <li class="nav-item p-l-1">\n                <a class="nav-link btn btn-primary" href="/login/?next=http://pagure.org/";>Log In</a>\n              </li>\n        </ul>\n      </div>\n    </nav>\n\n            </div>\n          </div>\n        </div>\n      </div>\n    </div><!-- close masthead-->\n\n    <div class="bodycontent p-b-3">\n\n                <div class="notification-spacer">\n                <div class="container p-t-2">\n                    <div class="alert alert-info alert-dismissible" role="alert">\n                      <button type="button" class="close" data-dismiss="alert" aria-label="Close">\n                        <span aria-hidden="true">&times;</span>\n                        <span class="sr-only">Close</span>\n                      </button>\n                      Welcome foouser\n                    </div>\n                </div>\n                </div>\n\n<div class="repo-header p-t-1">\n  <div class="container">\n    <div class="row">\n  <div class="col-md-8 col-md-offset-2">\n    <form action="/search" id="headerSearch" class="m-y-2">\n\n      <select name="type" class="c-select" style="display:none;">\n        <option value="projects" selected >Projects</option>\n        <option value="projects_forks">Projects &amp; Forks</option>\n        <option value="user">Users</option>\n      </select>\n\n      <input type="text" name="term" id="term" placeholder="Search projects" class="form-control" title="Search" />\n      <input type="submit" style="display:none;" value="Search" class="btn btn-primary" />\n    </form>\n  </div>\n</div>\n<ul class="nav nav-tabs nav-small">\n  <li class="nav-item">\n    <a class="nav-link active"  href="/browse/projects/">Projects</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/users">Users</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/groups">Groups</a>\n  </li>\n</ul>\n  </div>\n</div>\n  <div class="container">\n    \n    <section class="project_list container p-t-2" id="repos">\n        <h2 class="m-b-1">All Projects <span class="label label-default">0</span></h2>\n        <div class="row">\n          <div class="col-sm-6">\n          </div>\n          <div class="col-sm-6 text-xs-right">\n            <span class="btn-group">\n              <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">\n                Sort\n              </button>\n              <div class="dropdown-menu dropdown-menu-right">\n                <a class="dropdown-item" href="/browse/projects/">\n                  <span class="oi" data-glyph="check"></span>\n                  Name\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=latest">\n                  Recent First\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=oldest">\n                  Oldest First\n                </a>\n              </div>\n            </span>\n          </div>\n        </div>\n        <div class="row">\n            <p>No projects found</p>\n\n        </div>\n    </section>\n\n  </div>\n\n    </div>\n\n    <div class="footer p-t-1 p-b-1">\n        <div class="container">\n            <p class="text-muted credit">\n         Copyright &copy; 2014-2017 Red Hat\n          <a href="https://pagure.io/pagure";>pagure</a> &mdash;\n          2.15 &mdash; <a href="https://docs.pagure.org/pagure/usage.html";>Documentation</a>\n            </p>\n            <p><a href="/ssh_info">SSH Hostkey/Fingerprint</a></p>\n        </div>\n    </div>\n\n        <script type="text/javascript"\n        src="/static/jquery.min.js">\n    </script>\n    <script type="text/javascript"\n        src="/static/jquery-ui.min.js">\n    </script>\n    <script type="text/javascript"\n        src="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.js";>\n    </script>\n    <script type="text/javascript">\n$(\'[data-toggle="tooltip"]\').tooltip({placement : \'bottom\'});\n    </script>\n\n<script src="/static/jdenticon.min.js" type="text/javascript"></script>\n<script src="/static/selectize.min.js" type="text/javascript"> </script>\n<script src="/static/jquery.dotdotdot.min.js" type="text/javascript"></script>\n<script type="text/javascript">\n$(document).ready(function() {\n  $(\'#headerSearch\').on(\'keypress keydown keyup\', function(e) {\n    if (e.which == 13) {\n        e.preventDefault();\n        return false;\n    }\n});\n  $(\'#term\').selectize({\n    valueField: \'name\',\n    labelField: \'name\',\n    onType: function(value){\n      if (value == ""){\n      this.close();\n      }\n    },\n    onChange: function(value){\n      if (value != ""){\n        $(\'#headerSearch\').submit();\n      }\n    },\n    searchField: \'name\',\n    maxItems: 1,\n    create: false,\n    load: function(query, callback) {\n      if (!query.length) return callback();\n      $.getJSON(\n        "/api/0/projects", {\n          pattern: "*"+query+"*"\n        },\n        function( data ) {\n          callback( data.projects );\n        }\n      );\n    },\n    render: {\n      option: function(item, escape) {\n        return \'<div>\' +\n            \'<div class="projecticon-search pull-xs-left"><span class="oi" data-glyph="document"></span></div>\'+\n            \'<div class="title">\' +\n                \'<span class="name"><strong>\' + escape(item.name) + \'</strong></span>\' +\n            \'</div>\' +\n            \'<div class="description"><small>\' + escape(item.description) + \'</small></div>\' +\n        \'</div>\';\n      }\n    },\n  });\n});\n</script>\n\n<script type="text/javascript">\n  $(document).ready(function() {\n      $(".repo_desc").dotdotdot({\n          watch:"window"\n      });\n  });\n</script>\n\n\n\n</body>\n</html>'

======================================================================
FAIL: test_logout (tests.test_pagure_flask_ui_login.PagureFlaskLogintests)
Test the auth_logout endpoint for local login.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/test_pagure_flask_ui_login.py", line 707, in test_logout
    'href="/login/?next=http://localhost/";>', output.data)
AssertionError: '<a class="nav-link btn btn-primary" href="/login/?next=http://localhost/";>' not found in '<!DOCTYPE html>\n<html lang=\'en\'>\n<head>\n    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\n    <title>Home - Pagure</title>\n    <link rel="shortcut icon" type="image/vnd.microsoft.icon"\n        href="/static/favicon.ico"/>\n    <link href="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/pagure.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/open-iconic/css/open-iconic.min.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/fonts/fonts.css"\n        rel="stylesheet" type="text/css" />\n    <link href="/static/hack_fonts/css/hack-extended.min.css"\n        type="text/css" rel="stylesheet" />\n<link href="/static/selectize.bootstrap3.css"\n  rel="stylesheet" />\n  </head>\n  <body id="home">\n  <!-- start masthead -->\n    <div class="masthead">\n      <div class="container">\n        <div class="row">\n          <div class="col-sm-3">\n            <a href="/">\n              <img height=40px src="/static/pagure-logo.png"\n                alt="pagure Logo" id="pagureLogo"/>\n            </a>\n          </div>\n          <div class="col-sm-9">\n            <div class="row">\n\n  <nav class="navbar navbar-light p-t-0 p-b-0">\n      <div class="container">\n        <ul class="nav navbar-nav nav-underline pull-xs-right">\n              <li class="nav-item p-l-1">\n                <a class="nav-link btn btn-primary" href="/login/?next=http://pagure.org/";>Log In</a>\n              </li>\n        </ul>\n      </div>\n    </nav>\n\n            </div>\n          </div>\n        </div>\n      </div>\n    </div><!-- close masthead-->\n\n    <div class="bodycontent p-b-3">\n\n\n<div class="repo-header p-t-1">\n  <div class="container">\n    <div class="row">\n  <div class="col-md-8 col-md-offset-2">\n    <form action="/search" id="headerSearch" class="m-y-2">\n\n      <select name="type" class="c-select" style="display:none;">\n        <option value="projects" selected >Projects</option>\n        <option value="projects_forks">Projects &amp; Forks</option>\n        <option value="user">Users</option>\n      </select>\n\n      <input type="text" name="term" id="term" placeholder="Search projects" class="form-control" title="Search" />\n      <input type="submit" style="display:none;" value="Search" class="btn btn-primary" />\n    </form>\n  </div>\n</div>\n<ul class="nav nav-tabs nav-small">\n  <li class="nav-item">\n    <a class="nav-link active"  href="/browse/projects/">Projects</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/users">Users</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/groups">Groups</a>\n  </li>\n</ul>\n  </div>\n</div>\n  <div class="container">\n    \n    <section class="project_list container p-t-2" id="repos">\n        <h2 class="m-b-1">All Projects <span class="label label-default">0</span></h2>\n        <div class="row">\n          <div class="col-sm-6">\n          </div>\n          <div class="col-sm-6 text-xs-right">\n            <span class="btn-group">\n              <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">\n                Sort\n              </button>\n              <div class="dropdown-menu dropdown-menu-right">\n                <a class="dropdown-item" href="/browse/projects/">\n                  <span class="oi" data-glyph="check"></span>\n                  Name\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=latest">\n                  Recent First\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=oldest">\n                  Oldest First\n                </a>\n              </div>\n            </span>\n          </div>\n        </div>\n        <div class="row">\n            <p>No projects found</p>\n\n        </div>\n    </section>\n\n  </div>\n\n    </div>\n\n    <div class="footer p-t-1 p-b-1">\n        <div class="container">\n            <p class="text-muted credit">\n         Copyright &copy; 2014-2017 Red Hat\n          <a href="https://pagure.io/pagure";>pagure</a> &mdash;\n          2.15 &mdash; <a href="https://docs.pagure.org/pagure/usage.html";>Documentation</a>\n            </p>\n            <p><a href="/ssh_info">SSH Hostkey/Fingerprint</a></p>\n        </div>\n    </div>\n\n        <script type="text/javascript"\n        src="/static/jquery.min.js">\n    </script>\n    <script type="text/javascript"\n        src="/static/jquery-ui.min.js">\n    </script>\n    <script type="text/javascript"\n        src="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.js";>\n    </script>\n    <script type="text/javascript">\n$(\'[data-toggle="tooltip"]\').tooltip({placement : \'bottom\'});\n    </script>\n\n<script src="/static/jdenticon.min.js" type="text/javascript"></script>\n<script src="/static/selectize.min.js" type="text/javascript"> </script>\n<script src="/static/jquery.dotdotdot.min.js" type="text/javascript"></script>\n<script type="text/javascript">\n$(document).ready(function() {\n  $(\'#headerSearch\').on(\'keypress keydown keyup\', function(e) {\n    if (e.which == 13) {\n        e.preventDefault();\n        return false;\n    }\n});\n  $(\'#term\').selectize({\n    valueField: \'name\',\n    labelField: \'name\',\n    onType: function(value){\n      if (value == ""){\n      this.close();\n      }\n    },\n    onChange: function(value){\n      if (value != ""){\n        $(\'#headerSearch\').submit();\n      }\n    },\n    searchField: \'name\',\n    maxItems: 1,\n    create: false,\n    load: function(query, callback) {\n      if (!query.length) return callback();\n      $.getJSON(\n        "/api/0/projects", {\n          pattern: "*"+query+"*"\n        },\n        function( data ) {\n          callback( data.projects );\n        }\n      );\n    },\n    render: {\n      option: function(item, escape) {\n        return \'<div>\' +\n            \'<div class="projecticon-search pull-xs-left"><span class="oi" data-glyph="document"></span></div>\'+\n            \'<div class="title">\' +\n                \'<span class="name"><strong>\' + escape(item.name) + \'</strong></span>\' +\n            \'</div>\' +\n            \'<div class="description"><small>\' + escape(item.description) + \'</small></div>\' +\n        \'</div>\';\n      }\n    },\n  });\n});\n</script>\n\n<script type="text/javascript">\n  $(document).ready(function() {\n      $(".repo_desc").dotdotdot({\n          watch:"window"\n      });\n  });\n</script>\n\n\n\n</body>\n</html>'

======================================================================
FAIL: test_non_ascii_password (tests.test_pagure_flask_ui_login.PagureFlaskLogintests)
Test login and create user functionality when the password is
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/mock/mock.py", line 1305, in patched
    return func(*args, **keywargs)
  File "tests/test_pagure_flask_ui_login.py", line 453, in test_non_ascii_password
    'href="/login/?next=http://localhost/";>', output.data)
AssertionError: '<a class="nav-link btn btn-primary" href="/login/?next=http://localhost/";>' not found in '<!DOCTYPE html>\n<html lang=\'en\'>\n<head>\n    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\n    <title>Home - Pagure</title>\n    <link rel="shortcut icon" type="image/vnd.microsoft.icon"\n        href="/static/favicon.ico"/>\n    <link href="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/pagure.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/open-iconic/css/open-iconic.min.css"\n        type="text/css" rel="stylesheet" />\n    <link href="/static/fonts/fonts.css"\n        rel="stylesheet" type="text/css" />\n    <link href="/static/hack_fonts/css/hack-extended.min.css"\n        type="text/css" rel="stylesheet" />\n<link href="/static/selectize.bootstrap3.css"\n  rel="stylesheet" />\n  </head>\n  <body id="home">\n  <!-- start masthead -->\n    <div class="masthead">\n      <div class="container">\n        <div class="row">\n          <div class="col-sm-3">\n            <a href="/">\n              <img height=40px src="/static/pagure-logo.png"\n                alt="pagure Logo" id="pagureLogo"/>\n            </a>\n          </div>\n          <div class="col-sm-9">\n            <div class="row">\n\n  <nav class="navbar navbar-light p-t-0 p-b-0">\n      <div class="container">\n        <ul class="nav navbar-nav nav-underline pull-xs-right">\n              <li class="nav-item p-l-1">\n                <a class="nav-link btn btn-primary" href="/login/?next=http://pagure.org/";>Log In</a>\n              </li>\n        </ul>\n      </div>\n    </nav>\n\n            </div>\n          </div>\n        </div>\n      </div>\n    </div><!-- close masthead-->\n\n    <div class="bodycontent p-b-3">\n\n                <div class="notification-spacer">\n                <div class="container p-t-2">\n                    <div class="alert alert-info alert-dismissible" role="alert">\n                      <button type="button" class="close" data-dismiss="alert" aria-label="Close">\n                        <span aria-hidden="true">&times;</span>\n                        <span class="sr-only">Close</span>\n                      </button>\n                      Welcome foobar\n                    </div>\n                </div>\n                </div>\n\n<div class="repo-header p-t-1">\n  <div class="container">\n    <div class="row">\n  <div class="col-md-8 col-md-offset-2">\n    <form action="/search" id="headerSearch" class="m-y-2">\n\n      <select name="type" class="c-select" style="display:none;">\n        <option value="projects" selected >Projects</option>\n        <option value="projects_forks">Projects &amp; Forks</option>\n        <option value="user">Users</option>\n      </select>\n\n      <input type="text" name="term" id="term" placeholder="Search projects" class="form-control" title="Search" />\n      <input type="submit" style="display:none;" value="Search" class="btn btn-primary" />\n    </form>\n  </div>\n</div>\n<ul class="nav nav-tabs nav-small">\n  <li class="nav-item">\n    <a class="nav-link active"  href="/browse/projects/">Projects</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/users">Users</a>\n  </li>\n  <li class="nav-item">\n    <a class="nav-link" href="/groups">Groups</a>\n  </li>\n</ul>\n  </div>\n</div>\n  <div class="container">\n    \n    <section class="project_list container p-t-2" id="repos">\n        <h2 class="m-b-1">All Projects <span class="label label-default">0</span></h2>\n        <div class="row">\n          <div class="col-sm-6">\n          </div>\n          <div class="col-sm-6 text-xs-right">\n            <span class="btn-group">\n              <button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">\n                Sort\n              </button>\n              <div class="dropdown-menu dropdown-menu-right">\n                <a class="dropdown-item" href="/browse/projects/">\n                  <span class="oi" data-glyph="check"></span>\n                  Name\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=latest">\n                  Recent First\n                </a>\n                <a class="dropdown-item" href="/browse/projects/?sorting=oldest">\n                  Oldest First\n                </a>\n              </div>\n            </span>\n          </div>\n        </div>\n        <div class="row">\n            <p>No projects found</p>\n\n        </div>\n    </section>\n\n  </div>\n\n    </div>\n\n    <div class="footer p-t-1 p-b-1">\n        <div class="container">\n            <p class="text-muted credit">\n         Copyright &copy; 2014-2017 Red Hat\n          <a href="https://pagure.io/pagure";>pagure</a> &mdash;\n          2.15 &mdash; <a href="https://docs.pagure.org/pagure/usage.html";>Documentation</a>\n            </p>\n            <p><a href="/ssh_info">SSH Hostkey/Fingerprint</a></p>\n        </div>\n    </div>\n\n        <script type="text/javascript"\n        src="/static/jquery.min.js">\n    </script>\n    <script type="text/javascript"\n        src="/static/jquery-ui.min.js">\n    </script>\n    <script type="text/javascript"\n        src="https://apps.fedoraproject.org/global/fedora-bootstrap-1.0.1/fedora-bootstrap.js";>\n    </script>\n    <script type="text/javascript">\n$(\'[data-toggle="tooltip"]\').tooltip({placement : \'bottom\'});\n    </script>\n\n<script src="/static/jdenticon.min.js" type="text/javascript"></script>\n<script src="/static/selectize.min.js" type="text/javascript"> </script>\n<script src="/static/jquery.dotdotdot.min.js" type="text/javascript"></script>\n<script type="text/javascript">\n$(document).ready(function() {\n  $(\'#headerSearch\').on(\'keypress keydown keyup\', function(e) {\n    if (e.which == 13) {\n        e.preventDefault();\n        return false;\n    }\n});\n  $(\'#term\').selectize({\n    valueField: \'name\',\n    labelField: \'name\',\n    onType: function(value){\n      if (value == ""){\n      this.close();\n      }\n    },\n    onChange: function(value){\n      if (value != ""){\n        $(\'#headerSearch\').submit();\n      }\n    },\n    searchField: \'name\',\n    maxItems: 1,\n    create: false,\n    load: function(query, callback) {\n      if (!query.length) return callback();\n      $.getJSON(\n        "/api/0/projects", {\n          pattern: "*"+query+"*"\n        },\n        function( data ) {\n          callback( data.projects );\n        }\n      );\n    },\n    render: {\n      option: function(item, escape) {\n        return \'<div>\' +\n            \'<div class="projecticon-search pull-xs-left"><span class="oi" data-glyph="document"></span></div>\'+\n            \'<div class="title">\' +\n                \'<span class="name"><strong>\' + escape(item.name) + \'</strong></span>\' +\n            \'</div>\' +\n            \'<div class="description"><small>\' + escape(item.description) + \'</small></div>\' +\n        \'</div>\';\n      }\n    },\n  });\n});\n</script>\n\n<script type="text/javascript">\n  $(document).ready(function() {\n      $(".repo_desc").dotdotdot({\n          watch:"window"\n      });\n  });\n</script>\n\n\n\n</body>\n</html>'

======================================================================
FAIL: test_settings_admin_session_timedout (tests.test_pagure_flask_ui_login.PagureFlaskLogintests)
Test the admin_session_timedout with settings endpoint.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/test_pagure_flask_ui_login.py", line 736, in test_settings_admin_session_timedout
    self.assertIn('http://localhost/login/', output.location)
AssertionError: 'http://localhost/login/' not found in 'http://pagure.org/login/?next=http%3A%2F%2Fpagure.org%2Fsettings%2F'

======================================================================
FAIL: test_view_issue (tests.test_pagure_flask_ui_issues.PagureFlaskIssuestests)
Test the view_issue endpoint.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/mock/mock.py", line 1305, in patched
    return func(*args, **keywargs)
  File "tests/test_pagure_flask_ui_issues.py", line 522, in test_view_issue
    in output.data)
AssertionError: False is not true

======================================================================
FAIL: test_view_issue_user_ticket (tests.test_pagure_flask_ui_issues.PagureFlaskIssuestests)
Test the view_issue endpoint.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/mock/mock.py", line 1305, in patched
    return func(*args, **keywargs)
  File "tests/test_pagure_flask_ui_issues.py", line 652, in test_view_issue_user_ticket
    in output.data)
AssertionError: False is not true

----------------------------------------------------------------------
Ran 555 tests in 188.697s

FAILED (failures=8, errors=2)

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: