)]}'
{"keystone/test/__init__.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"0dd7afc750fcda0e09cbcd31fb1ecb86d8c84d0c","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"        # run the keystone server"},{"line_number":90,"context_line":"        print \"Starting the keystone server...\""},{"line_number":91,"context_line":"        "},{"line_number":92,"context_line":"        if \u0027--debug\u0027 in sys.argv:"},{"line_number":93,"context_line":"            self.server \u003d subprocess.Popen("},{"line_number":94,"context_line":"            [os.path.join(BASE_DIR, \u0027bin/keystone\u0027), \u0027-c\u0027, self.conf_fp.name,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BRI%3D","line":91,"updated":"2011-11-15 19:01:44.000000000","message":"PEP8","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"0dd7afc750fcda0e09cbcd31fb1ecb86d8c84d0c","unresolved":false,"context_lines":[{"line_number":138,"context_line":"                    execute(\u0027unit2 discover -f -t %s -s %s\u0027 %"},{"line_number":139,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":140,"context_line":"                else:"},{"line_number":141,"context_line":"                    "},{"line_number":142,"context_line":"                    execute(\u0027unit2 discover -v -f -t %s -s %s\u0027 %"},{"line_number":143,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":144,"context_line":"        finally:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BRA%3D","line":141,"updated":"2011-11-15 19:01:44.000000000","message":"PEP8","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"0dd7afc750fcda0e09cbcd31fb1ecb86d8c84d0c","unresolved":false,"context_lines":[{"line_number":139,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":140,"context_line":"                else:"},{"line_number":141,"context_line":"                    "},{"line_number":142,"context_line":"                    execute(\u0027unit2 discover -v -f -t %s -s %s\u0027 %"},{"line_number":143,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":144,"context_line":"        finally:"},{"line_number":145,"context_line":"            self.tearDown()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BRE%3D","line":142,"updated":"2011-11-15 19:01:44.000000000","message":"Instead of repeating the same code twice with 3 characters added, can we build the command to be executed dynamically? Maintenance cost is skyrocketing in this function.","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"},{"author":{"_account_id":5,"name":"Ziad Sawalha","email":"ziad.sawalha@rackspace.com","username":"ziad-sawalha"},"change_message_id":"ebdb0dcfb031205acf08b6d415c2f700d4fc9cb9","unresolved":false,"context_lines":[{"line_number":139,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":140,"context_line":"                else:"},{"line_number":141,"context_line":"                    "},{"line_number":142,"context_line":"                    execute(\u0027unit2 discover -v -f -t %s -s %s\u0027 %"},{"line_number":143,"context_line":"                            (BASE_DIR, TEST_DIR))"},{"line_number":144,"context_line":"        finally:"},{"line_number":145,"context_line":"            self.tearDown()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BNU%3D","line":142,"in_reply_to":"AAAACn%2F%2F%2BRE%3D","updated":"2011-11-15 20:57:44.000000000","message":"Yes. we can.","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"}],"run_tests.py":[{"author":{"_account_id":1228,"name":"Joe Savak","email":"jsavak@gmail.com","username":"jsavak"},"change_message_id":"79f478c08548b4e581d8bd591491a9edf228a336","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                    filter \u003d sys.argv[i + 1]"},{"line_number":45,"context_line":"                    break"},{"line_number":46,"context_line":"        if filter:"},{"line_number":47,"context_line":"            TESTS \u003d [t for t in TESTS if filter in str(t)]"},{"line_number":48,"context_line":"    for test_num, test_cls in enumerate(TESTS):"},{"line_number":49,"context_line":"        print \u0027Starting test %d of %d with config: %s\u0027 % \\"},{"line_number":50,"context_line":"            (test_num + 1, len(TESTS), test_cls.config_name)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAACn%2F%2F%2BXk%3D","line":47,"updated":"2011-11-15 16:50:50.000000000","message":"If test specified not in the above list, it should probably return an error","commit_id":"4d00b77a5fcaeaa0dc4e39a20d646d32da7b77ad"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"0dd7afc750fcda0e09cbcd31fb1ecb86d8c84d0c","unresolved":false,"context_lines":[{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"if __name__ \u003d\u003d \u0027__main__\u0027:"},{"line_number":39,"context_line":"    if \u0027-O\u0027 in sys.argv:"},{"line_number":40,"context_line":"        filter \u003d None"},{"line_number":41,"context_line":"        for i in range(len(sys.argv)):"},{"line_number":42,"context_line":"            if sys.argv[i] \u003d\u003d \u0027-O\u0027:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BRQ%3D","line":39,"updated":"2011-11-15 19:01:44.000000000","message":"This is a really cryptic chunk of code better handled externally by argparse or optparse","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"},{"author":{"_account_id":5,"name":"Ziad Sawalha","email":"ziad.sawalha@rackspace.com","username":"ziad-sawalha"},"change_message_id":"ebdb0dcfb031205acf08b6d415c2f700d4fc9cb9","unresolved":false,"context_lines":[{"line_number":36,"context_line":"]"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"if __name__ \u003d\u003d \u0027__main__\u0027:"},{"line_number":39,"context_line":"    if \u0027-O\u0027 in sys.argv:"},{"line_number":40,"context_line":"        filter \u003d None"},{"line_number":41,"context_line":"        for i in range(len(sys.argv)):"},{"line_number":42,"context_line":"            if sys.argv[i] \u003d\u003d \u0027-O\u0027:"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAACn%2F%2F%2BNY%3D","line":39,"in_reply_to":"AAAACn%2F%2F%2BRQ%3D","updated":"2011-11-15 20:57:44.000000000","message":"argparse requires 2.7 or above. opt parse can\u0027t parse only open option (it errors saying it didn\u0027t recognize the other options). You wrote run_tests didn\u0027t you?","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"}],"run_tests.sh":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"0dd7afc750fcda0e09cbcd31fb1ecb86d8c84d0c","unresolved":false,"context_lines":[{"line_number":4,"context_line":"  echo \"Usage: $0 [OPTION]...\""},{"line_number":5,"context_line":"  echo \"Run Keystone\u0027s test suite(s)\""},{"line_number":6,"context_line":"  echo \"\""},{"line_number":7,"context_line":"  echo \"  -O test                  Only run the specified test (ex. SQLTest won\u0027t run the LDAP and other tests)\""},{"line_number":8,"context_line":"  echo \"  -V, --virtual-env        Always use virtualenv.  Install automatically if not present\""},{"line_number":9,"context_line":"  echo \"  -N, --no-virtual-env     Don\u0027t use virtualenv.  Run tests in local environment\""},{"line_number":10,"context_line":"  echo \"  -f, --force              Force a clean re-build of the virtual environment. Useful when dependencies have been added.\""}],"source_content_type":"text/x-sh","patch_set":3,"id":"AAAACn%2F%2F%2BRU%3D","line":7,"updated":"2011-11-15 19:01:44.000000000","message":"How do you specify a test? What are the options?","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"},{"author":{"_account_id":5,"name":"Ziad Sawalha","email":"ziad.sawalha@rackspace.com","username":"ziad-sawalha"},"change_message_id":"ebdb0dcfb031205acf08b6d415c2f700d4fc9cb9","unresolved":false,"context_lines":[{"line_number":4,"context_line":"  echo \"Usage: $0 [OPTION]...\""},{"line_number":5,"context_line":"  echo \"Run Keystone\u0027s test suite(s)\""},{"line_number":6,"context_line":"  echo \"\""},{"line_number":7,"context_line":"  echo \"  -O test                  Only run the specified test (ex. SQLTest won\u0027t run the LDAP and other tests)\""},{"line_number":8,"context_line":"  echo \"  -V, --virtual-env        Always use virtualenv.  Install automatically if not present\""},{"line_number":9,"context_line":"  echo \"  -N, --no-virtual-env     Don\u0027t use virtualenv.  Run tests in local environment\""},{"line_number":10,"context_line":"  echo \"  -f, --force              Force a clean re-build of the virtual environment. Useful when dependencies have been added.\""}],"source_content_type":"text/x-sh","patch_set":3,"id":"AAAACn%2F%2F%2BNo%3D","line":7,"in_reply_to":"AAAACn%2F%2F%2BRU%3D","updated":"2011-11-15 20:57:44.000000000","message":"The name of the test to run, like in the example. You can only select one (the flag stands for ONLY).","commit_id":"7b3c28df366b09725d34122256c07e1821e50b7d"}]}
