Changes between Initial Version and Version 1 of pywebsocket: a WebSocket server for layout tests


Ignore:
Timestamp:
Aug 17, 2012 12:46:05 AM (10 years ago)
Author:
toyoshim@chromium.org
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • pywebsocket: a WebSocket server for layout tests

    v1 v1  
     1= pywebsocket: a WebSocket server for layout tests =
     2
     3== For Developers who want to use WebSocket in their layout tests ==
     4pywebsocket is automatically launched via new-run-webkit-tests, or run-webkit-tests. These script check if layout tests which are going to be run require WebSocket server, then launch pywebsocket automatically.
     5This script just check the path of tests. If your test contains 'websocket' in its path, pywebsocket will be launched.
     6E.g.,
     7 - LayoutTests/http/tests/websocket
     8 - LayoutTests/http/tests/inspector/websocket.
     9
     10== Where and Why ==
     11Originally, pywebsocket is automatically installed by webkitpy's autoinstall, when you need it to run a layout test at runtime.
     12But after [http://trac.webkit.org/changeset/116668 r116668], it is checked in WebKit repository directly.
     13This is because an autoinstall bug which is already fixed (See, [http://code.google.com/p/chromium/issues/detail?id=80739 chromium issue 80739]), so we can use autoinstall again now.
     14But, we continue to check it in WebKit repository directly because it's more stable for buildbots.
     15
     16== How to manage(update) pywebsocket in WebKit ==
     17Here is a basic process to update.
     18
     191) Remove old files.
     20{{{
     21$ cd WebKit/Tools/Scripts/webkitpy/thirdparty
     22$ rm -rf mod_pywebsocket
     23}}}
     24
     252) Import newly released revision.
     26{{{
     27$ tar zxf mod_pywebsocket-''version''.tar.gz
     28$ mv pywebsocket-''version''/src/mod_pywebsocket .
     29$ mv pywebsocket-''version''/src/COPYING mod_pywebsocket
     30$ rm -rf pywebsocket-''version''
     31$ git status # Check if there is untracked new files, and handle it if needed.
     32}}}
     33
     343) Register to local repository.
     35{{{
     36$ git commit -a -m "import pywebsocket-''version''"
     37}}}
     38
     394) Run tests. (You should run after submitting to local repos. because running tests generators garbages like *.pyc)
     40{{{
     41$ cd ../../../..
     42$ ./Tools/Scripts/test-webkitpy # I expect they don't depend on pywebsocket for now, but it will finish in short time, so I recommend to run it.
     43$ ./Tools/Scripts/new-run-webkit-websocketserver --server=start
     44$ ./Tools/Scripts/new-run-webkit-websocketserver --server=stop
     45$ ./Tools/Scripts/run-webkit-websocketserver # This script use new-run-webkit-websocketserver internally, so this might be redundant.
     46}}}
     47
     485) Request review and submit the change in the WebKit way.
     49You may want to include following description in ChangeLog
     50- pywebsocket version (or revision) to import
     51- new features' description (or URL to GoogleCode's download page containing that)
     52
     53'''Don't forget to copy COPYING in 2).'''
     54
     55== Note ==
     56Chromium port has another pywebsocket checkout at src/third_party/pywebsocket via DEPS mechanism. This is for testing chromium specific features. Versions of both pywebsocket will be slightly different.