Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: net/tools/testserver/testserver.py

Issue 9570055: [Sync] Add support for associating a new Synced Bookmarks node. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address python comments Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """This is a simple HTTP/FTP/SYNC/TCP/UDP/ server used for testing Chrome. 6 """This is a simple HTTP/FTP/SYNC/TCP/UDP/ server used for testing Chrome.
7 7
8 It supports several test URLs, as specified by the handlers in TestPageHandler. 8 It supports several test URLs, as specified by the handlers in TestPageHandler.
9 By default, it listens on an ephemeral port and sends the port number back to 9 By default, it listens on an ephemeral port and sends the port number back to
10 the originating process over a pipe. The originating process can specify an 10 the originating process over a pipe. The originating process can specify an
(...skipping 1631 matching lines...) Expand 10 before | Expand all | Expand 10 after
1642 # Each chunk consists of: chunk size (hex), CRLF, chunk body, CRLF 1642 # Each chunk consists of: chunk size (hex), CRLF, chunk body, CRLF
1643 self.wfile.write('%X\r\n' % len(chunk)) 1643 self.wfile.write('%X\r\n' % len(chunk))
1644 self.wfile.write(chunk) 1644 self.wfile.write(chunk)
1645 self.wfile.write('\r\n') 1645 self.wfile.write('\r\n')
1646 1646
1647 1647
1648 class SyncPageHandler(BasePageHandler): 1648 class SyncPageHandler(BasePageHandler):
1649 """Handler for the main HTTP sync server.""" 1649 """Handler for the main HTTP sync server."""
1650 1650
1651 def __init__(self, request, client_address, sync_http_server): 1651 def __init__(self, request, client_address, sync_http_server):
1652 get_handlers = [self.ChromiumSyncMigrationOpHandler, 1652 get_handlers = [self.ChromiumSyncTimeHandler,
1653 self.ChromiumSyncTimeHandler, 1653 self.ChromiumSyncMigrationOpHandler,
1654 self.ChromiumSyncCredHandler,
1654 self.ChromiumSyncDisableNotificationsOpHandler, 1655 self.ChromiumSyncDisableNotificationsOpHandler,
1655 self.ChromiumSyncEnableNotificationsOpHandler, 1656 self.ChromiumSyncEnableNotificationsOpHandler,
1656 self.ChromiumSyncSendNotificationOpHandler, 1657 self.ChromiumSyncSendNotificationOpHandler,
1657 self.ChromiumSyncBirthdayErrorOpHandler, 1658 self.ChromiumSyncBirthdayErrorOpHandler,
1658 self.ChromiumSyncTransientErrorOpHandler, 1659 self.ChromiumSyncTransientErrorOpHandler,
1660 self.ChromiumSyncErrorOpHandler,
1659 self.ChromiumSyncSyncTabsOpHandler, 1661 self.ChromiumSyncSyncTabsOpHandler,
1660 self.ChromiumSyncErrorOpHandler, 1662 self.ChromiumSyncCreateSyncedBookmarksOpHandler]
1661 self.ChromiumSyncCredHandler]
1662 1663
1663 post_handlers = [self.ChromiumSyncCommandHandler, 1664 post_handlers = [self.ChromiumSyncCommandHandler,
1664 self.ChromiumSyncTimeHandler] 1665 self.ChromiumSyncTimeHandler]
1665 BasePageHandler.__init__(self, request, client_address, 1666 BasePageHandler.__init__(self, request, client_address,
1666 sync_http_server, [], get_handlers, [], 1667 sync_http_server, [], get_handlers, [],
1667 post_handlers, []) 1668 post_handlers, [])
1668 1669
1669 1670
1670 def ChromiumSyncTimeHandler(self): 1671 def ChromiumSyncTimeHandler(self):
1671 """Handle Chromium sync .../time requests. 1672 """Handle Chromium sync .../time requests.
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
1851 if not self._ShouldHandleRequest(test_name): 1852 if not self._ShouldHandleRequest(test_name):
1852 return False 1853 return False
1853 result, raw_reply = self.server._sync_handler.HandleSetSyncTabs() 1854 result, raw_reply = self.server._sync_handler.HandleSetSyncTabs()
1854 self.send_response(result) 1855 self.send_response(result)
1855 self.send_header('Content-Type', 'text/html') 1856 self.send_header('Content-Type', 'text/html')
1856 self.send_header('Content-Length', len(raw_reply)) 1857 self.send_header('Content-Length', len(raw_reply))
1857 self.end_headers() 1858 self.end_headers()
1858 self.wfile.write(raw_reply) 1859 self.wfile.write(raw_reply)
1859 return True; 1860 return True;
1860 1861
1862 def ChromiumSyncCreateSyncedBookmarksOpHandler(self):
1863 test_name = "/chromiumsync/createsyncedbookmarks"
1864 if not self._ShouldHandleRequest(test_name):
1865 return False
1866 result, raw_reply = self.server._sync_handler.HandleCreateSyncedBookmarks()
1867 self.send_response(result)
1868 self.send_header('Content-Type', 'text/html')
1869 self.send_header('Content-Length', len(raw_reply))
1870 self.end_headers()
1871 self.wfile.write(raw_reply)
1872 return True;
1873
1861 1874
1862 def MakeDataDir(): 1875 def MakeDataDir():
1863 if options.data_dir: 1876 if options.data_dir:
1864 if not os.path.isdir(options.data_dir): 1877 if not os.path.isdir(options.data_dir):
1865 print 'specified data dir not found: ' + options.data_dir + ' exiting...' 1878 print 'specified data dir not found: ' + options.data_dir + ' exiting...'
1866 return None 1879 return None
1867 my_data_dir = options.data_dir 1880 my_data_dir = options.data_dir
1868 else: 1881 else:
1869 # Create the default path to our data dir, relative to the exe dir. 1882 # Create the default path to our data dir, relative to the exe dir.
1870 my_data_dir = os.path.dirname(sys.argv[0]) 1883 my_data_dir = os.path.dirname(sys.argv[0])
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
2131 dest='host', 2144 dest='host',
2132 help='Hostname or IP upon which the server will ' 2145 help='Hostname or IP upon which the server will '
2133 'listen. Client connections will also only be ' 2146 'listen. Client connections will also only be '
2134 'allowed from this address.') 2147 'allowed from this address.')
2135 option_parser.add_option('', '--auth-token', dest='auth_token', 2148 option_parser.add_option('', '--auth-token', dest='auth_token',
2136 help='Specify the auth token which should be used' 2149 help='Specify the auth token which should be used'
2137 'in the authorization header for GData.') 2150 'in the authorization header for GData.')
2138 options, args = option_parser.parse_args() 2151 options, args = option_parser.parse_args()
2139 2152
2140 sys.exit(main(options, args)) 2153 sys.exit(main(options, args))
OLDNEW
« net/tools/testserver/chromiumsync_test.py ('K') | « net/tools/testserver/chromiumsync_test.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698