def test_generate_json_data(self): try: old_fetch_json = generate_builders_json.fetch_json fetched_urls = [] def dummy_fetch_json(url): fetched_urls.append(url) if url == 'http://build.chromium.org/p/chromium.webkit/json/builders': return {'WebKit Win': None, 'WebKit Linux': None, 'WebKit Mac': None} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux/builds/2': return {'steps': [{'name': 'webkit_tests'}, {'name': 'browser_tests'}, {'name': 'mini_installer_test'}, {'name': 'archive_test_results'}, {'name': 'compile'}]} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win/builds/2': return {'steps': [{'name': 'webkit_tests'}, {'name': 'mini_installer_test'}, {'name': 'archive_test_results'}, {'name': 'compile'}]} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac/builds/2': return {'steps': [{'name': 'browser_tests'}, {'name': 'mini_installer_test'}, {'name': 'archive_test_results'}, {'name': 'compile'}]} logging.error('Cannot fetch fake url: %s' % url) generate_builders_json.fetch_json = dummy_fetch_json masters = [ {'name': 'ChromiumWebkit', 'url': 'http://build.chromium.org/p/chromium.webkit'}, ] generate_builders_json.insert_builder_and_test_data(masters) expected_fetched_urls = [ 'http://build.chromium.org/p/chromium.webkit/json/builders', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux/builds/2', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac/builds/2', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win/builds/2', ] self.assertEqual(fetched_urls, expected_fetched_urls) expected_masters = [ { 'url': 'http://build.chromium.org/p/chromium.webkit', 'tests': { 'browser_tests': {'builders': ['WebKit Linux', 'WebKit Mac']}, 'mini_installer_test': {'builders': ['WebKit Linux', 'WebKit Mac', 'WebKit Win']}, 'layout-tests': {'builders': ['WebKit Linux', 'WebKit Win']}}, 'name': 'ChromiumWebkit'} ] self.assertEqual(masters, expected_masters) finally: generate_builders_json.fetch_json = old_fetch_json
def test_generate_json_data(self): try: old_fetch_json = generate_builders_json.fetch_json fetched_urls = [] def dummy_fetch_json(url): fetched_urls.append(url) if url == 'https://build.webkit.org/json/builders': return {'Apple Mac SnowLeopard Tests': None, 'EFL Linux Builder': None, 'GTK Linux Tests': None} if url == 'https://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'https://build.webkit.org/json/builders/EFL%20Linux%20Builder': return {'cachedBuilds': [1, 2, 3], 'currentBuilds': [3]} if url == 'https://build.webkit.org/json/builders/GTK%20Linux%20Tests': return {'cachedBuilds': [2], 'currentBuilds': []} if url == 'https://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2': return {'steps': [{'name': 'layout-test'}, {'name': 'archive_test_results'}, {'name': 'compile'}]} if url == 'https://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2': return {'steps': [{'name': 'compile'}]} if url == 'https://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2': return {'steps': [{'name': 'layout-test'}, {'name': 'archive_test_results'}, {'name': 'compile'}]} logging.error('Cannot fetch fake url: %s' % url) generate_builders_json.fetch_json = dummy_fetch_json masters = [ {'name': 'webkit.org', 'url': 'https://build.webkit.org'}, ] generate_builders_json.insert_builder_and_test_data(masters) expected_fetched_urls = [ 'https://build.webkit.org/json/builders', 'https://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests', 'https://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2', 'https://build.webkit.org/json/builders/GTK%20Linux%20Tests', 'https://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2', 'https://build.webkit.org/json/builders/EFL%20Linux%20Builder', 'https://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2'] self.assertEqual(fetched_urls, expected_fetched_urls) expected_masters = [ { 'url': 'https://build.webkit.org', 'tests': { 'layout-tests': {'builders': ['Apple Mac SnowLeopard Tests', 'GTK Linux Tests']}, }, 'name': 'webkit.org' }, ] self.assertEqual(masters, expected_masters) finally: generate_builders_json.fetch_json = old_fetch_json
def test_generate_json_data(self): try: old_fetch_json = generate_builders_json.fetch_json fetched_urls = [] def dummy_fetch_json(url): fetched_urls.append(url) if url == "http://build.webkit.org/json/builders": return {"Apple Mac SnowLeopard Tests": None, "EFL Linux Builder": None, "GTK Linux Tests": None} if url == "http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests": return {"cachedBuilds": [1, 2], "currentBuilds": []} if url == "http://build.webkit.org/json/builders/EFL%20Linux%20Builder": return {"cachedBuilds": [1, 2, 3], "currentBuilds": [3]} if url == "http://build.webkit.org/json/builders/GTK%20Linux%20Tests": return {"cachedBuilds": [2], "currentBuilds": []} if url == "http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2": return {"steps": [{"name": "layout-test"}, {"name": "archive_test_results"}, {"name": "compile"}]} if url == "http://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2": return {"steps": [{"name": "compile"}]} if url == "http://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2": return {"steps": [{"name": "layout-test"}, {"name": "archive_test_results"}, {"name": "compile"}]} logging.error("Cannot fetch fake url: %s" % url) generate_builders_json.fetch_json = dummy_fetch_json masters = [{"name": "webkit.org", "url": "http://build.webkit.org"}] generate_builders_json.insert_builder_and_test_data(masters) expected_fetched_urls = [ "http://build.webkit.org/json/builders", "http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests", "http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2", "http://build.webkit.org/json/builders/GTK%20Linux%20Tests", "http://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2", "http://build.webkit.org/json/builders/EFL%20Linux%20Builder", "http://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2", ] self.assertEqual(fetched_urls, expected_fetched_urls) expected_masters = [ { "url": "http://build.webkit.org", "tests": {"layout-tests": {"builders": ["Apple Mac SnowLeopard Tests", "GTK Linux Tests"]}}, "name": "webkit.org", } ] self.assertEqual(masters, expected_masters) finally: generate_builders_json.fetch_json = old_fetch_json
def test_generate_json_data(self): try: old_fetch_json = generate_builders_json.fetch_json fetched_urls = [] def dummy_fetch_json(url): fetched_urls.append(url) if url == 'http://build.webkit.org/json/builders': return { 'Apple Mac SnowLeopard Tests': None, 'EFL Linux Builder': None, 'GTK Linux Tests': None } if url == 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.webkit.org/json/builders/EFL%20Linux%20Builder': return {'cachedBuilds': [1, 2, 3], 'currentBuilds': [3]} if url == 'http://build.webkit.org/json/builders/GTK%20Linux%20Tests': return {'cachedBuilds': [2], 'currentBuilds': []} if url == 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2': return { 'steps': [{ 'name': 'layout-test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } if url == 'http://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2': return {'steps': [{'name': 'compile'}]} if url == 'http://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2': return { 'steps': [{ 'name': 'layout-test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } logging.error('Cannot fetch fake url: %s' % url) generate_builders_json.fetch_json = dummy_fetch_json masters = [ { 'name': 'webkit.org', 'url': 'http://build.webkit.org' }, ] generate_builders_json.insert_builder_and_test_data(masters) expected_fetched_urls = [ 'http://build.webkit.org/json/builders', 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests', 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2', 'http://build.webkit.org/json/builders/GTK%20Linux%20Tests', 'http://build.webkit.org/json/builders/GTK%20Linux%20Tests/builds/2', 'http://build.webkit.org/json/builders/EFL%20Linux%20Builder', 'http://build.webkit.org/json/builders/EFL%20Linux%20Builder/builds/2' ] self.assertEqual(fetched_urls, expected_fetched_urls) expected_masters = [ { 'url': 'http://build.webkit.org', 'tests': { 'layout-tests': { 'builders': ['Apple Mac SnowLeopard Tests', 'GTK Linux Tests'] }, }, 'name': 'webkit.org' }, ] self.assertEqual(masters, expected_masters) finally: generate_builders_json.fetch_json = old_fetch_json
def test_generate_json_data(self): try: old_fetch_json = generate_builders_json.fetch_json fetched_urls = [] def dummy_fetch_json(url): fetched_urls.append(url) if url == 'http://build.chromium.org/p/chromium.webkit/json/builders': return { 'WebKit Win': None, 'WebKit Linux': None, 'WebKit Mac': None } if url == 'http://build.webkit.org/json/builders': return { 'Apple Mac SnowLeopard Tests': None, 'Chromium Mac Builder': None, 'GTK': None } if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests': return {'cachedBuilds': [1, 2], 'currentBuilds': []} if url == 'http://build.webkit.org/json/builders/Chromium%20Mac%20Builder': return {'cachedBuilds': [1, 2, 3], 'currentBuilds': [3]} if url == 'http://build.webkit.org/json/builders/GTK': return {'cachedBuilds': [2], 'currentBuilds': []} if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux/builds/2': return { 'steps': [{ 'name': 'webkit_tests' }, { 'name': 'browser_tests' }, { 'name': 'mini_installer_test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win/builds/2': return { 'steps': [{ 'name': 'webkit_tests' }, { 'name': 'mini_installer_test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } if url == 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac/builds/2': return { 'steps': [{ 'name': 'browser_tests' }, { 'name': 'mini_installer_test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } if url == 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2': return { 'steps': [{ 'name': 'layout-test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } if url == 'http://build.webkit.org/json/builders/Chromium%20Mac%20Builder/builds/2': return {'steps': [{'name': 'compile'}]} if url == 'http://build.webkit.org/json/builders/GTK/builds/2': return { 'steps': [{ 'name': 'layout-test' }, { 'name': 'archive_test_results' }, { 'name': 'compile' }] } logging.error('Cannot fetch fake url: %s' % url) generate_builders_json.fetch_json = dummy_fetch_json masters = [ { 'name': 'ChromiumWebkit', 'url': 'http://build.chromium.org/p/chromium.webkit' }, { 'name': 'webkit.org', 'url': 'http://build.webkit.org' }, ] generate_builders_json.insert_builder_and_test_data(masters) expected_fetched_urls = [ 'http://build.chromium.org/p/chromium.webkit/json/builders', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Linux/builds/2', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Mac/builds/2', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win', 'http://build.chromium.org/p/chromium.webkit/json/builders/WebKit%20Win/builds/2', 'http://build.webkit.org/json/builders', 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests', 'http://build.webkit.org/json/builders/Apple%20Mac%20SnowLeopard%20Tests/builds/2', 'http://build.webkit.org/json/builders/GTK', 'http://build.webkit.org/json/builders/GTK/builds/2', 'http://build.webkit.org/json/builders/Chromium%20Mac%20Builder', 'http://build.webkit.org/json/builders/Chromium%20Mac%20Builder/builds/2' ] self.assertEqual(fetched_urls, expected_fetched_urls) expected_masters = [{ 'url': 'http://build.chromium.org/p/chromium.webkit', 'tests': { 'browser_tests': { 'builders': ['WebKit Linux', 'WebKit Mac'] }, 'mini_installer_test': { 'builders': ['WebKit Linux', 'WebKit Mac', 'WebKit Win'] }, 'layout-tests': { 'builders': ['WebKit Linux', 'WebKit Win'] } }, 'name': 'ChromiumWebkit' }, { 'url': 'http://build.webkit.org', 'tests': { 'layout-tests': { 'builders': ['Apple Mac SnowLeopard Tests', 'GTK'] } }, 'name': 'webkit.org' }] self.assertEqual(masters, expected_masters) finally: generate_builders_json.fetch_json = old_fetch_json