diff --git a/swh/web/tests/browse/views/data/__init__.py b/swh/web/tests/browse/views/data/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/swh/web/tests/browse/views/data/origin_test_data.py b/swh/web/tests/browse/views/data/origin_test_data.py deleted file mode 100644 index 2a87043c..00000000 --- a/swh/web/tests/browse/views/data/origin_test_data.py +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (C) 2017-2018 The Software Heritage developers -# See the AUTHORS file at the top-level directory of this distribution -# License: GNU Affero General Public License version 3, or any later version -# See top-level LICENSE file for more information - -# flake8: noqa - -stub_origin_visits = [ - {'date': '2015-08-05T18:55:20.899865+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '23fac03bbf6f4d1037bc1477a85bc1c71e586f98', - 'visit': 1}, - {'date': '2016-03-06T12:16:26.240919+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': 'c71048f1d29a4889ef79f4a64e3c144efe83ea66', - 'visit': 2}, - {'date': '2016-03-21T11:40:10.329221+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '0d83f0dae76581e55b31ca96d3574261754f1f8f', - 'visit': 3}, - {'date': '2016-03-29T08:05:17.602649+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': 'eeb186a965a6df47327f34997ee164be66340046', - 'visit': 4}, - {'date': '2016-07-26T20:11:03.827577+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '1bf4bddbcf9be09ffeeaa68a85b53f039b2d32c2', - 'visit': 5}, - {'date': '2016-08-13T04:10:22.142897+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '57cfa801c5cba9b034f994c119e122fb153da3ec', - 'visit': 6}, - {'date': '2016-08-16T22:57:46.201737+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': 'd0c85af82c4c3abb2024c5c628f3e4b584c8b0ef', - 'visit': 7}, - {'date': '2016-08-17T17:58:43.346437+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '6ba2ff728eed2777156fd5c89424a2a46609f334', - 'visit': 8}, - {'date': '2016-08-29T23:29:09.445945+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': 'adb6d6adf04454f2b8acd6bf3c89d82dd84c3eed', - 'visit': 9}, - {'date': '2016-09-07T13:49:15.096109+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '8e29ad8af5f8a9bac86d26f48f956cc0ec69bcd9', - 'visit': 10}, - {'date': '2016-09-14T15:01:09.017257+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '78fbd0992f12cf1694257b2495e12bd2a3971643', - 'visit': 11}, - {'date': '2016-09-23T12:29:15.921727+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': '4fa28005f67b46f285bebe7228fe0a96a287ad94', - 'visit': 12}, - {'date': '2017-02-16T07:44:23.302439+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'partial', - 'snapshot': None, - 'visit': 13}, - {'date': '2017-05-04T14:47:43.228455+00:00', - 'metadata': {}, - 'origin': 7416001, - 'status': 'full', - 'snapshot': 'ea21a9304f34a5b646f81994bd53d580de917427', - 'visit': 14} -] - -stub_origin_snapshot = ( -[ - {'directory': 'ae59ceecf46367e8e4ad800e231fc76adc3afffb', - 'name': 'HEAD', - 'revision': '7bc08e1aa0b08cb23e18715a32aa38517ad34672', - 'date': '04 May 2017, 13:27 UTC', - 'message': 'Merge pull request #4816 from webpack/bugfix/hoist-immutable-export'}, - {'directory': 'c47a824f95109ca7cafdd1c3206332a0d10df55d', - 'name': 'refs/heads/0.10', - 'revision': 'f944553c77254732c4ce22c0add32aa1f641959d', - 'date': '19 June 2013, 12:46 UTC', - 'message': 'webpack 0.10'}, - {'directory': '45e31184ebb7699cd74175145c7eb11cce3f085e', - 'name': 'refs/heads/0.11', - 'revision': '0a29109a6e4579926ebc9b03a6301c61861cce62', - 'date': '31 December 2013, 12:43 UTC', - 'message': '0.11.18'}, - {'directory': '42346b33e2d16019490c273ff586ee88817327b3', - 'name': 'refs/heads/0.8', - 'revision': 'e42701dc6f9b035bfbb5d0fffded905d8b456db4', - 'date': 'e42701dc6f9b035bfbb5d0fffded905d8b456db4', - 'message': 'fixes #54'}, - {'directory': '828c7e9385523f852f8d4dac3cb241e319a9ce61', - 'name': 'refs/heads/0.9', - 'revision': '6c3f51e6d9491a2463ad099a2ca49255ec83ff00', - 'date': '19 March 2013, 07:56 UTC', - 'message': 'updated some small things on the cli'}, - {'directory': '2c50e78d63bdc4441c8d2691f5729b04f0ab3ecd', - 'name': 'refs/heads/1.0', - 'revision': 'fb7958d172e1ef6fb77f23bf56818ad24e896e5c', - 'date': '03 March 2014, 14:37 UTC', - 'message': 'Merge pull request #188 from polotek/patch-1'}, - {'directory': '31a3355c4d0a464aa311c5fa11c7f8b20aede6b4', - 'name': 'refs/heads/IgnorePluginHotfix', - 'revision': 'fdc922a2fa007e71b7ec07252012ffab9a178d4a', - 'date': '08 April 2017, 15:50 UTC', - 'message': 'add tests for ignored context modules'}, - {'directory': 'e566db1fc65cb61b3799c6e0f0ad06b2406f095f', - 'name': 'refs/heads/beta', - 'revision': '40428853da5d9ce6a8751e13b5e54145337b6a7e', - 'date': '04 May 2017, 13:35 UTC', - 'message': 'Merge remote-tracking branch \'origin/perf/chunks-set\' into beta'} -], -[{'name': 'v2.1.0-beta.6', - 'branch_name': 'refs/tags/v2.1.0-beta.6', - 'message': '2.1.0-beta.6', - 'date': '22 April 2016, 01:03 UTC', - 'id': 'ae2e1a30e4f2ac701e8a6e2fe85a5f200d7e597a', - 'target_type': 'revision', - 'target': 'ca8b693c2c17bd06778476381fae23b3b21c0475', - 'directory': '4e1f9b3c2f5c4bd205051a14af4ade62349ee57a'}, - {'name': 'v2.1.0-beta.7', - 'branch_name': 'refs/tags/v2.1.0-beta.7', - 'message': '2.1.0-beta.7', - 'date': '07 May 2016, 00:00 UTC', - 'id': '46e94bbdc9e54cf6273a985732446b4c963bf1aa', - 'target_type': 'revision', - 'target': '9162f9e6eea62137139f95b8aaedee335c870edd', - 'directory': '713763f90f17371fec714c1660f229ba41b9f5e2'}, - {'name': 'v2.1.0-beta.8', - 'branch_name': 'refs/tags/v2.1.0-beta.8', - 'message': '2.1.0-beta.8', - 'date': '29 May 2016, 20:53 UTC', - 'id': '910ada6bf809f8f1c318e098f67f2c0b3c80c888', - 'target_type': 'revision', - 'target': 'abf0cefd592700a19856c3ef9b6d65f905ec73c1', - 'directory': 'd6a069fda992759670851dc38500b2e8dccdc595'}, - {'name': 'v2.1.0-beta.9', - 'branch_name': 'refs/tags/v2.1.0-beta.9', - 'message': '2.1.0-beta.9', - 'date': '04 June 2016, 20:19 UTC', - 'id': '63063663c86b0c7e5886adbd3c22aacba9b957b0', - 'target_type': 'revision', - 'target': 'dc3bd055027d8d1ebbb0ebdd07fb73387a0ab6d1', - 'directory': '467251807aea6ba83719194e9a1d65e8053f14e0'} -]) \ No newline at end of file diff --git a/swh/web/tests/browse/views/data/revision_test_data.py b/swh/web/tests/browse/views/data/revision_test_data.py deleted file mode 100644 index 243d425e..00000000 --- a/swh/web/tests/browse/views/data/revision_test_data.py +++ /dev/null @@ -1,905 +0,0 @@ -# Copyright (C) 2017-2018 The Software Heritage developers -# See the AUTHORS file at the top-level directory of this distribution -# License: GNU Affero General Public License version 3, or any later version -# See top-level LICENSE file for more information - -# flake8: noqa - -revision_id_test = '7bc08e1aa0b08cb23e18715a32aa38517ad34672' - -revision_metadata_test = \ -{'id': '7bc08e1aa0b08cb23e18715a32aa38517ad34672', - 'type': 'git', - 'parents': ['bf3652b16b65c27db5243aa0d674e2de4a8ccde9', - 'a952bb99a6830804d06c5b8e04b75c66100fbae9'], - 'metadata': {}, - 'committer': {'name': 'GitHub', - 'fullname': 'GitHub ', - 'id': 10932771, - 'email': 'noreply@github.com'}, - 'directory': 'ae59ceecf46367e8e4ad800e231fc76adc3afffb', - 'date': '2017-05-04T13:27:13+02:00', - 'merge': True, - 'committer_date': '2017-05-04T13:27:13+02:00', - 'author': {'name': 'Tobias Koppers', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'email': 'tobias.koppers@googlemail.com'}, - 'message': 'Merge pull request #4816 from webpack/bugfix/hoist-immutable-export\n\nhoist exports', - 'synthetic': False -} - -revision_history_log_test = \ -[{'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-05-04T13:27:13+02:00', - 'date': '2017-05-04T13:27:13+02:00', - 'directory': 'ae59ceecf46367e8e4ad800e231fc76adc3afffb', - 'id': '7bc08e1aa0b08cb23e18715a32aa38517ad34672', - 'merge': True, - 'message': 'Merge pull request #4816 from ' - 'webpack/bugfix/hoist-immutable-export\n' - '\n' - 'hoist exports', - 'metadata': {}, - 'parents': ['bf3652b16b65c27db5243aa0d674e2de4a8ccde9', - 'a952bb99a6830804d06c5b8e04b75c66100fbae9'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer_date': '2017-05-04T12:17:13+02:00', - 'date': '2017-05-04T12:17:13+02:00', - 'directory': '344f6b38f021fa0bbd60ca06fe1cbc61164e7abe', - 'id': 'bf3652b16b65c27db5243aa0d674e2de4a8ccde9', - 'merge': False, - 'message': '2.5.0\n', - 'metadata': {}, - 'parents': ['cd1cd29fba46bd0133db0ca89acbe6c6c0240323'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer_date': '2017-05-04T13:00:52+02:00', - 'date': '2017-05-04T12:56:31+02:00', - 'directory': 'ae59ceecf46367e8e4ad800e231fc76adc3afffb', - 'id': 'a952bb99a6830804d06c5b8e04b75c66100fbae9', - 'merge': False, - 'message': 'change some magic numbers to hoist exports\n\nfixes #4753\n', - 'metadata': {}, - 'parents': ['bf3652b16b65c27db5243aa0d674e2de4a8ccde9'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-05-04T11:41:43+02:00', - 'date': '2017-05-04T11:41:43+02:00', - 'directory': 'fbc01dab452f80bf49d554cc920979a66839707f', - 'id': 'cd1cd29fba46bd0133db0ca89acbe6c6c0240323', - 'merge': True, - 'message': 'Merge pull request #4815 from ' - 'webpack/bugfix/extract-async-initial\n' - '\n' - "CommonsChunkPlugin in async mode doesn't select initial chunks", - 'metadata': {}, - 'parents': ['8bab88c50fcb87c749c244b9ab28a1fb7e173bea', - 'b45588bc1197abbc309eb3705a4bf89960b001ae'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-05-04T10:50:03+02:00', - 'date': '2017-05-04T10:50:03+02:00', - 'directory': '74ed598c6b831fe7f68697f6ed761660a842b973', - 'id': '8bab88c50fcb87c749c244b9ab28a1fb7e173bea', - 'merge': True, - 'message': 'Merge pull request #4814 from webpack/test/move-entry\n' - '\n' - 'add testcase for moving entry modules into the commons chunk', - 'metadata': {}, - 'parents': ['85dc98f17aa39d5d3337e3791bf25634a1f7e445', - 'a244879a07e04e6b5951520ca3cd80c3ef160f8e'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer_date': '2017-05-04T10:50:46+02:00', - 'date': '2017-05-04T10:50:46+02:00', - 'directory': '735b9f6d54d62470944c4743d52931b308a9072c', - 'id': 'b45588bc1197abbc309eb3705a4bf89960b001ae', - 'merge': False, - 'message': "CommonsChunkPlugin in async mode doesn't select initial chunks\n" - '\n' - 'fixes #4795\n', - 'metadata': {}, - 'parents': ['c91ba4949503de5ca9d98c98188c2654b095f2cb'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-05-04T08:04:41+02:00', - 'date': '2017-05-04T08:04:41+02:00', - 'directory': 'c3c24aeafabe1d441c37a2769e9b65ae10075925', - 'id': '85dc98f17aa39d5d3337e3791bf25634a1f7e445', - 'merge': True, - 'message': 'Merge pull request #4813 from JLHwung/perf/date-now\n' - '\n' - 'Perf/use Date.now() instead of +new Date()/new Date().getTime()', - 'metadata': {}, - 'parents': ['c91ba4949503de5ca9d98c98188c2654b095f2cb', - '6afc397b99aef338a9d66add4488ce03ea3f7a43'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer_date': '2017-05-04T10:01:04+02:00', - 'date': '2017-05-04T10:01:04+02:00', - 'directory': '4de09be1628ed81def03f78d8d832c93efdf0af4', - 'id': 'a244879a07e04e6b5951520ca3cd80c3ef160f8e', - 'merge': False, - 'message': 'add testcase for moving entry modules into the commons chunk\n' - '#4795\n', - 'metadata': {}, - 'parents': ['c91ba4949503de5ca9d98c98188c2654b095f2cb'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-30T09:31:17+02:00', - 'date': '2017-04-30T09:31:17+02:00', - 'directory': '16c9d449871efccef7a0f53b29bd6218cc769e30', - 'id': 'c91ba4949503de5ca9d98c98188c2654b095f2cb', - 'merge': True, - 'message': 'Merge pull request #4791 from deificx/master\n' - '\n' - 'add option to lib/Stats.js to disable stack trace on errors and ' - 'warnings', - 'metadata': {}, - 'parents': ['94ba75f7940836390c041846f2c334929ee14332', - '84ea1ffd3d0892f3356ac0494947bbc2a0e39d51'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'i@jhuang.me', - 'fullname': 'J Huang ', - 'id': 12072398, - 'name': 'J Huang'}, - 'committer': {'email': 'i@jhuang.me', - 'fullname': 'J Huang ', - 'id': 12072398, - 'name': 'J Huang'}, - 'committer_date': '2017-05-04T10:19:54+08:00', - 'date': '2017-05-04T10:19:54+08:00', - 'directory': 'c3c24aeafabe1d441c37a2769e9b65ae10075925', - 'id': '6afc397b99aef338a9d66add4488ce03ea3f7a43', - 'merge': False, - 'message': 'perf: use Date.now() instead of new Date().getTime()\n' - '\n' - 'new Date().getTime() is 2x slower than Date.now(), see ' - 'https://jsperf.com/new-date-vs-date-now-vs-performance-now/6\n', - 'metadata': {}, - 'parents': ['94d0641ba40d65d5fcbd64414b6ea9f8a2589538'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-30T09:30:03+02:00', - 'date': '2017-04-30T09:30:03+02:00', - 'directory': 'f78fe6939706d761f0bc60f9d566bd414ef5c113', - 'id': '94ba75f7940836390c041846f2c334929ee14332', - 'merge': True, - 'message': 'Merge pull request #4794 from ' - 'ndresx/disable-manifest-json-pretty-print\n' - '\n' - 'Disable manifest.json pretty print', - 'metadata': {}, - 'parents': ['24ef6ea1b56b358caeb4b07476a909f4f86c2d8a', - 'de87f93c1b050db59ffbeff3aed4ac3b3eb57da3'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer_date': '2017-04-29T20:53:42+02:00', - 'date': '2017-04-29T20:52:43+02:00', - 'directory': '68fcb2d3c60aa32b708ce9ca9fa5c4b1f7a2532d', - 'id': '84ea1ffd3d0892f3356ac0494947bbc2a0e39d51', - 'merge': False, - 'message': 'added error to stats.moduleTrace test name to trigger test cases ' - 'corretly\n', - 'metadata': {}, - 'parents': ['8ad4386bdf9cd607310a4255dff8cb9ccd12afad'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'i@jhuang.me', - 'fullname': 'J Huang ', - 'id': 12072398, - 'name': 'J Huang'}, - 'committer': {'email': 'i@jhuang.me', - 'fullname': 'J Huang ', - 'id': 12072398, - 'name': 'J Huang'}, - 'committer_date': '2017-05-04T10:19:10+08:00', - 'date': '2017-05-04T10:17:23+08:00', - 'directory': '41965bffa3f73c8928beb2a6580c253adb9bd5cf', - 'id': '94d0641ba40d65d5fcbd64414b6ea9f8a2589538', - 'merge': False, - 'message': 'perf: use Date.now() instead of +new Date()\n' - '\n' - '+new Date() is 2x slower than Date.now(), see ' - 'https://jsperf.com/new-date-vs-date-now-vs-performance-now/6\n', - 'metadata': {}, - 'parents': ['c91ba4949503de5ca9d98c98188c2654b095f2cb'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-26T09:05:56+02:00', - 'date': '2017-04-26T09:05:56+02:00', - 'directory': 'aa78629e4aefc836b5a967db57cac29f79fea074', - 'id': '24ef6ea1b56b358caeb4b07476a909f4f86c2d8a', - 'merge': True, - 'message': 'Merge pull request #4779 from ndresx/ignoreplugin-typo-fix\n' - '\n' - 'Fix typo in IgnorePlugin', - 'metadata': {}, - 'parents': ['34315db3ffe20b3d7e9a50885ea623fc90ac0861', - 'aa172f0a359ab3c0b0987101c64c8b41b07d581f'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'ndresx@gmail.com', - 'fullname': 'Martin Veith ', - 'id': 14855385, - 'name': 'Martin Veith'}, - 'committer': {'email': 'ndresx@gmail.com', - 'fullname': 'Martin Veith ', - 'id': 14855385, - 'name': 'Martin Veith'}, - 'committer_date': '2017-04-28T21:34:38+02:00', - 'date': '2017-04-28T21:34:38+02:00', - 'directory': 'f78fe6939706d761f0bc60f9d566bd414ef5c113', - 'id': 'de87f93c1b050db59ffbeff3aed4ac3b3eb57da3', - 'merge': False, - 'message': 'Disable manifest.json pretty print\n', - 'metadata': {}, - 'parents': ['24ef6ea1b56b358caeb4b07476a909f4f86c2d8a'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer_date': '2017-04-29T19:43:45+02:00', - 'date': '2017-04-29T19:43:45+02:00', - 'directory': '893a65a9ad785d719c44a3e764d150bb47cba6c1', - 'id': '8ad4386bdf9cd607310a4255dff8cb9ccd12afad', - 'merge': False, - 'message': 'test cases for stats.moduleTrace option\n', - 'metadata': {}, - 'parents': ['958156ae4201e75f8cb04e306d2a38b94d2a8a1d'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T14:25:42+02:00', - 'date': '2017-04-23T14:25:42+02:00', - 'directory': 'f511a1febf3d6b9b788080f3eb69ff3cb963758f', - 'id': '34315db3ffe20b3d7e9a50885ea623fc90ac0861', - 'merge': True, - 'message': 'Merge pull request #3875 from webpack/test/circleci\n' - '\n' - 'Update circle.yml', - 'metadata': {}, - 'parents': ['6a26e9ba7f7f1be7e76054f219bf1e094f2c3264', - '0f91f949e2d41ef5cb92493bcc6c1fa7578ac27d'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'ndresx@gmail.com', - 'fullname': 'Martin Veith ', - 'id': 14855385, - 'name': 'Martin Veith'}, - 'committer': {'email': 'ndresx@gmail.com', - 'fullname': 'Martin Veith ', - 'id': 14855385, - 'name': 'Martin Veith'}, - 'committer_date': '2017-04-25T22:07:43+02:00', - 'date': '2017-04-25T22:07:43+02:00', - 'directory': 'aa78629e4aefc836b5a967db57cac29f79fea074', - 'id': 'aa172f0a359ab3c0b0987101c64c8b41b07d581f', - 'merge': False, - 'message': 'Fix typo in IgnorePlugin\n', - 'metadata': {}, - 'parents': ['34315db3ffe20b3d7e9a50885ea623fc90ac0861'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer_date': '2017-04-29T19:43:15+02:00', - 'date': '2017-04-29T19:43:15+02:00', - 'directory': '9d7347c42e29afda2849996ca6b61cdc7ea1b5a1', - 'id': '958156ae4201e75f8cb04e306d2a38b94d2a8a1d', - 'merge': False, - 'message': 'moduleTrace added to webpackOptionsSchema.json\n', - 'metadata': {}, - 'parents': ['41310135bb4e30a0a6f71eddd3d74419ec8512a7'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T12:57:02+02:00', - 'date': '2017-04-23T12:57:02+02:00', - 'directory': '71848e66952829c98ec4e57e2338be986390b850', - 'id': '6a26e9ba7f7f1be7e76054f219bf1e094f2c3264', - 'merge': True, - 'message': 'Merge pull request #4693 from ' - 'Travmatth/fix-4252-BannerPlugin-placeholder\n' - '\n' - 'Fix 4252 banner plugin placeholder', - 'metadata': {}, - 'parents': ['53bb15b1ed64f8636036f773100d502909bd1e6b', - '08eca2fb4517bb2a14e21fa46e3291878c79be0e'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer_date': '2017-04-23T14:02:06+02:00', - 'date': '2017-04-23T12:50:01+02:00', - 'directory': '29cf488a00126c0e45c78b92f97cdbc733f4d07e', - 'id': '0f91f949e2d41ef5cb92493bcc6c1fa7578ac27d', - 'merge': False, - 'message': 'improve circleci build\n', - 'metadata': {}, - 'parents': ['53bb15b1ed64f8636036f773100d502909bd1e6b'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer_date': '2017-04-28T09:20:14+02:00', - 'date': '2017-04-28T09:20:14+02:00', - 'directory': 'f8b679bd62a33880d7f39f70233c3c14aead7c22', - 'id': '41310135bb4e30a0a6f71eddd3d74419ec8512a7', - 'merge': False, - 'message': 'rename stats.stackTrace to stats.moduleTrace\n', - 'metadata': {}, - 'parents': ['7e4310a1759bd35834290e4c4af207ce9b05ffd9'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T12:10:20+02:00', - 'date': '2017-04-23T12:10:20+02:00', - 'directory': '1887ba14662a7e45567fa6daa39ab72975b429aa', - 'id': '53bb15b1ed64f8636036f773100d502909bd1e6b', - 'merge': True, - 'message': 'Merge pull request #3934 from ' - 'timse/refactor-watching-in-compiler\n' - '\n' - 'Refactor _done of Watching in compiler', - 'metadata': {}, - 'parents': ['b67d61abd6dd878f7a9aec4d10689c8b1678e28a', - 'ab30c6b1c0100634ad46bcaf47ff12963e22aac9'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T12:00:53+02:00', - 'date': '2017-04-23T12:00:53+02:00', - 'directory': '4da5fda41a4b5cdbcf1fbb2604e9696c67106271', - 'id': '08eca2fb4517bb2a14e21fa46e3291878c79be0e', - 'merge': False, - 'message': 'spacing', - 'metadata': {}, - 'parents': ['7061c2c76b984e9c7ab893bf4b14b4b102b5fa0d'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer': {'email': 'even.alander@videxio.com', - 'fullname': 'Even Alander ', - 'id': 3407016, - 'name': 'Even Alander'}, - 'committer_date': '2017-04-27T10:22:20+02:00', - 'date': '2017-04-27T10:22:20+02:00', - 'directory': '21f3f99258fad8513cbdd40f549cb067362add27', - 'id': '7e4310a1759bd35834290e4c4af207ce9b05ffd9', - 'merge': False, - 'message': 'add option to lib/Stats.js to disable stack trace on errors and ' - 'warnings\n', - 'metadata': {}, - 'parents': ['24ef6ea1b56b358caeb4b07476a909f4f86c2d8a'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T12:04:28+02:00', - 'date': '2017-04-23T12:04:28+02:00', - 'directory': 'effe11da8d44198a760cab867351f66d4b0da7d1', - 'id': 'b67d61abd6dd878f7a9aec4d10689c8b1678e28a', - 'merge': True, - 'message': 'Merge pull request #4755 from aretecode/lint-update\n' - '\n' - 'update node linting', - 'metadata': {}, - 'parents': ['a2ec4c8cea281715d3043a6dcb4198be039cfb54', - '5c423d6feb6521c9b5274ba342b7621c453f35eb'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer_date': '2017-04-08T09:13:38+10:00', - 'date': '2017-04-08T09:13:38+10:00', - 'directory': '20805e5ff5776062b9108138c4dfce8124185f5a', - 'id': 'ab30c6b1c0100634ad46bcaf47ff12963e22aac9', - 'merge': False, - 'message': 'pass stats to error handler again, to prevent breaking change\n', - 'metadata': {}, - 'parents': ['b863851ce969317688799b754131e3546206c7ad'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer_date': '2017-04-19T09:46:34-04:00', - 'date': '2017-04-19T09:46:34-04:00', - 'directory': '3c9ea2ac7fec857634b7b46dc08b52a5670106c5', - 'id': '7061c2c76b984e9c7ab893bf4b14b4b102b5fa0d', - 'merge': False, - 'message': 'added file test, remove unused [basename]\n', - 'metadata': {}, - 'parents': ['527f9434f74e63ae76ecbf18a4710589667dc731'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T12:02:55+02:00', - 'date': '2017-04-23T12:02:55+02:00', - 'directory': '5185e53216f3a836598f946f7302155f5bb50d02', - 'id': 'a2ec4c8cea281715d3043a6dcb4198be039cfb54', - 'merge': True, - 'message': 'Merge pull request #4722 from ' - 'willmendesneto/refactor-format-location\n' - '\n' - 'refactor(formatLocation): upgrade to ES6', - 'metadata': {}, - 'parents': ['1c5f3bf59f8a1e06bbe83b7459362f69bb5b7460', - 'c826edde1be8af20a02166f792f79bbf2a231c4e'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-22T19:02:01+02:00', - 'date': '2017-04-22T19:02:01+02:00', - 'directory': '461c61e52405649d272d7e79b8a1abe27e5b33b2', - 'id': '5c423d6feb6521c9b5274ba342b7621c453f35eb', - 'merge': False, - 'message': 'change supported node.js version to 4', - 'metadata': {}, - 'parents': ['219a95dddca951737d4b947fc2d59e3a2b5cbb23'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer_date': '2017-04-06T21:52:06+10:00', - 'date': '2017-04-06T21:52:06+10:00', - 'directory': '803b83492f4be6b472720dfd5dd0f45675213ac2', - 'id': 'b863851ce969317688799b754131e3546206c7ad', - 'merge': False, - 'message': 'add getStats again - remove breaking change\n', - 'metadata': {}, - 'parents': ['2a1bcff9e6999d471747ab3575d82c33a0e5e082'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer_date': '2017-04-19T09:28:25-04:00', - 'date': '2017-04-19T09:28:25-04:00', - 'directory': 'aafcbc664c51bf17dcfde6b7112efe95331c6fcd', - 'id': '527f9434f74e63ae76ecbf18a4710589667dc731', - 'merge': False, - 'message': 'removed single quotes\n', - 'metadata': {}, - 'parents': ['c68bd16b265b6d5f8478e5728ea077ead90e8a37'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-23T11:49:28+02:00', - 'date': '2017-04-23T11:49:28+02:00', - 'directory': 'cf61c993ed0335a88d7975aba07ef743eaa7b845', - 'id': '1c5f3bf59f8a1e06bbe83b7459362f69bb5b7460', - 'merge': True, - 'message': 'Merge pull request #4748 from ' - 'aretecode/examples-dll-readme-update2\n' - '\n' - 'examples/dll readme updates', - 'metadata': {}, - 'parents': ['cbd493904f222abac1d33918b4686b0bc4de3a42', - 'f223aecd05b47b9cfff34609f730c81d03034514'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'willmendesneto@gmail.com', - 'fullname': 'Will Mendes ', - 'id': 93385, - 'name': 'Will Mendes'}, - 'committer': {'email': 'willmendesneto@gmail.com', - 'fullname': 'Will Mendes ', - 'id': 93385, - 'name': 'Will Mendes'}, - 'committer_date': '2017-04-17T22:00:47+10:00', - 'date': '2017-04-17T22:00:47+10:00', - 'directory': '817b5de0d36aae8f3243b472e19b2fae1adf9173', - 'id': 'c826edde1be8af20a02166f792f79bbf2a231c4e', - 'merge': False, - 'message': 'refactor(formatLocation): upgrade to ES6\n', - 'metadata': {}, - 'parents': ['82ddd16080663e3773bdac2a62082991acb8637e'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'aretecode@gmail.com', - 'fullname': 'James ', - 'id': 11020868, - 'name': 'James'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-19T23:53:44-07:00', - 'date': '2017-04-19T23:53:44-07:00', - 'directory': 'fa17b78edd5fd19a589663489e91b14e2c6337c0', - 'id': '219a95dddca951737d4b947fc2d59e3a2b5cbb23', - 'merge': False, - 'message': 'lint autofix the eslint file', - 'metadata': {}, - 'parents': ['cf666188298dfe75cc343018bf35b1c753fb6636'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer': {'email': 'tim.sebastian@gmail.com', - 'fullname': 'Tim Sebastian ', - 'id': 3654888, - 'name': 'Tim Sebastian'}, - 'committer_date': '2017-04-06T21:46:07+10:00', - 'date': '2017-01-12T22:33:03+11:00', - 'directory': '7c6b85c086b56f11cf29bc3d13836145dc225407', - 'id': '2a1bcff9e6999d471747ab3575d82c33a0e5e082', - 'merge': False, - 'message': 'refactor the _done method of Watching\n' - '\n' - '- we can safely ignore the "else" cases of not having an error ' - 'as _done() is only called without arguments if "this.invalid is ' - 'true"\n' - '- if we get passed the point of `this.invalid` either `err` or ' - '`compilation` are !!always!! set. therefore later checks can ' - 'again be ignored\n' - '- early return in error case\n' - '- ignore `this.error` if we make it passed the error as it will ' - 'be unset at this point.\n' - '- remove the setting of `this.error` or `this.stats` as the only ' - 'use is inside this method and only allow weird behaviour if ' - 'someone set them from outside\n', - 'metadata': {}, - 'parents': ['8165164d3e50fef3252d7c274cef1c0b595c6992'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer': {'email': 'trav.matth@gmail.com', - 'fullname': 'Travis Matthews ', - 'id': 439443, - 'name': 'Travis Matthews'}, - 'committer_date': '2017-04-19T08:41:00-04:00', - 'date': '2017-04-19T08:41:00-04:00', - 'directory': '34bfecaa341626e1c60d1d2a1f697fb1f74f8bcd', - 'id': 'c68bd16b265b6d5f8478e5728ea077ead90e8a37', - 'merge': False, - 'message': 'remove comment\n', - 'metadata': {}, - 'parents': ['f2e30693ac0e3a9a0fe6a01a89fe6072dee7f405'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-22T12:45:04+02:00', - 'date': '2017-04-22T12:45:04+02:00', - 'directory': '412c6f5c00ce7d02efcdd6f23160a36eb4e5a1f4', - 'id': 'cbd493904f222abac1d33918b4686b0bc4de3a42', - 'merge': True, - 'message': 'Merge pull request #4768 from xizhao/patch-1\n' - '\n' - 'Add license scan report and status', - 'metadata': {}, - 'parents': ['d7f30392ddda27613e0ea05cb60ec985b4f75e5c', - 'ff211108d888908d41470cea6187133ccdb56e87'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'aretecode@gmail.com', - 'fullname': 'Arete Code ', - 'id': 8227899, - 'name': 'Arete Code'}, - 'committer': {'email': 'aretecode@gmail.com', - 'fullname': 'Arete Code ', - 'id': 8227899, - 'name': 'Arete Code'}, - 'committer_date': '2017-04-21T15:48:06-07:00', - 'date': '2017-04-21T15:48:06-07:00', - 'directory': '9d69f66cf3d2fa5119910bfd6a16f16e996795cc', - 'id': 'f223aecd05b47b9cfff34609f730c81d03034514', - 'merge': False, - 'message': 'rebase for semicolon\n', - 'metadata': {}, - 'parents': ['914fe2c923533d43f5edff54b1704bbd3dd407bc'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers'}, - 'committer': {'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub'}, - 'committer_date': '2017-04-15T19:26:54+02:00', - 'date': '2017-04-15T19:26:54+02:00', - 'directory': 'c2da553b359190d3dc4266d77e311bd002d7ccd2', - 'id': '82ddd16080663e3773bdac2a62082991acb8637e', - 'merge': True, - 'message': 'Merge pull request #4717 from STRML/fix/hashSalt\n' - '\n' - 'fix missing `hashSalt` from options schema', - 'metadata': {}, - 'parents': ['bd753567da1248624beaaea14af31d6dbe303411', - '805c9fadf05c00f3df16d1faf4d3f608b78e3b59'], - 'synthetic': False, - 'type': 'git'}, - {'author': {'email': 'aretecode@gmail.com', - 'fullname': 'Arete Code ', - 'id': 8227899, - 'name': 'Arete Code'}, - 'committer': {'email': 'aretecode@gmail.com', - 'fullname': 'Arete Code ', - 'id': 8227899, - 'name': 'Arete Code'}, - 'committer_date': '2017-04-19T19:05:28-07:00', - 'date': '2017-04-19T19:05:28-07:00', - 'directory': 'dd7dc17a8a28b6bb415b1f6980de6fcd3715847c', - 'id': 'cf666188298dfe75cc343018bf35b1c753fb6636', - 'merge': False, - 'message': '👕 update node linting\n' - '\n' - 'update linting for destructuring and latest node\n' - '\n' - 'uses .js rather than .eslintrc file\n' - '\n' - 'pulls in rules from\n' - 'https://github.com/webpack/webpack-cli/pull/46/files#diff-df39304d828831c44a2b9f38cd45289cR40\n' - '\n' - 'adds spacing for this\n' - 'screen shot 2017-04-19 at 7 03 16 pm\n', - 'metadata': {}, - 'parents': ['8aa8a7b63fed3c7909a6d4f15159c036a0561d64'], - 'synthetic': False, - 'type': 'git'}, - {'author': { - 'email': 'tobias.koppers@googlemail.com', - 'fullname': 'Tobias Koppers ', - 'id': 141959, - 'name': 'Tobias Koppers' - }, - 'committer': { - 'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub' - }, - 'committer_date': '2017-04-21T19:00:50+02:00', - 'committer_url': '/api/1/person/10932771/', - 'date': '2017-04-21T19:00:50+02:00', - 'directory': '52cf6f28b1dbfe98f485ea78ae03942f55cd8fa0', - 'id': 'd7f30392ddda27613e0ea05cb60ec985b4f75e5c', - 'merge': True, - 'message': 'Merge pull request #4729 from simon04/provide-plugin-es2015\n\nProvidePlugin: add test case for ES2015 modules', - 'metadata': {}, - 'parents': ['88f37348e7de240d794713c0c38170f17a0a8c0e', - 'd0bbf967fb51c031e16c5dfe040afce9a4113b5b'], - 'synthetic': False, - 'type': 'git'}, - {'author': { - 'email': 'kevin@fossa.io', - 'fullname': 'Kevin Wang ', - 'id': 14855611, - 'name': 'Kevin Wang' - }, - 'committer': { - 'email': 'noreply@github.com', - 'fullname': 'GitHub ', - 'id': 10932771, - 'name': 'GitHub' - }, - 'committer_date': '2017-04-21T18:28:41-07:00', - 'date': '2017-04-21T18:28:41-07:00', - 'directory': '412c6f5c00ce7d02efcdd6f23160a36eb4e5a1f4', - 'id': 'ff211108d888908d41470cea6187133ccdb56e87', - 'merge': False, - 'message': 'Add license scan report and status', - 'metadata': {}, - 'parents': ['d7f30392ddda27613e0ea05cb60ec985b4f75e5c'], - 'synthetic': False, - 'type': 'git'}, -] \ No newline at end of file diff --git a/swh/web/tests/browse/views/test_revision.py b/swh/web/tests/browse/views/test_revision.py index 444d0122..5b3ab93a 100644 --- a/swh/web/tests/browse/views/test_revision.py +++ b/swh/web/tests/browse/views/test_revision.py @@ -1,257 +1,249 @@ -# Copyright (C) 2017-2018 The Software Heritage developers +# Copyright (C) 2017-2019 The Software Heritage developers # See the AUTHORS file at the top-level directory of this distribution # License: GNU Affero General Public License version 3, or any later version # See top-level LICENSE file for more information -# flake8: noqa - -from unittest.mock import patch, MagicMock from django.utils.html import escape +from hypothesis import given -from swh.web.common.exc import NotFoundExc from swh.web.common.utils import ( reverse, format_utc_iso_date, get_swh_persistent_id, parse_timestamp ) -from swh.web.tests.testcase import WebTestCase - -from .data.revision_test_data import ( - revision_id_test, revision_metadata_test, - revision_history_log_test +from swh.web.tests.strategies import ( + origin, revision, unknown_revision, new_origin ) - -from .data.origin_test_data import stub_origin_visits, stub_origin_snapshot +from swh.web.tests.testcase import WebTestCase class SwhBrowseRevisionTest(WebTestCase): - @patch('swh.web.browse.utils.get_origin_visit_snapshot') - @patch('swh.web.browse.views.revision.service') - @patch('swh.web.browse.utils.service') - @patch('swh.web.common.origin_visits.get_origin_visits') - def test_revision_browse(self, mock_get_origin_visits, mock_service_utils, - mock_service, mock_get_origin_visit_snapshot): - mock_service.lookup_revision.return_value = revision_metadata_test + @given(revision()) + def test_revision_browse(self, revision): url = reverse('browse-revision', - url_args={'sha1_git': revision_id_test}) + url_args={'sha1_git': revision}) + + revision_data = self.revision_get(revision) - author_id = revision_metadata_test['author']['id'] - author_name = revision_metadata_test['author']['name'] - committer_id = revision_metadata_test['committer']['id'] - committer_name = revision_metadata_test['committer']['name'] - dir_id = revision_metadata_test['directory'] + author_id = revision_data['author']['id'] + author_name = revision_data['author']['name'] + committer_id = revision_data['committer']['id'] + committer_name = revision_data['committer']['name'] + dir_id = revision_data['directory'] author_url = reverse('browse-person', url_args={'person_id': author_id}) committer_url = reverse('browse-person', url_args={'person_id': committer_id}) directory_url = reverse('browse-directory', url_args={'sha1_git': dir_id}) history_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}) + url_args={'sha1_git': revision}) resp = self.client.get(url) self.assertEqual(resp.status_code, 200) self.assertTemplateUsed('browse/revision.html') self.assertContains(resp, '%s' % (author_url, author_name)) self.assertContains(resp, '%s' % (committer_url, committer_name)) self.assertContains(resp, directory_url) self.assertContains(resp, history_url) - for parent in revision_metadata_test['parents']: + for parent in revision_data['parents']: parent_url = reverse('browse-revision', url_args={'sha1_git': parent}) self.assertContains(resp, '%s' % (parent_url, parent)) - author_date = revision_metadata_test['date'] - committer_date = revision_metadata_test['committer_date'] + author_date = revision_data['date'] + committer_date = revision_data['committer_date'] - message_lines = revision_metadata_test['message'].split('\n') + message_lines = revision_data['message'].split('\n') self.assertContains(resp, format_utc_iso_date(author_date)) self.assertContains(resp, format_utc_iso_date(committer_date)) - self.assertContains(resp, message_lines[0]) - self.assertContains(resp, '\n'.join(message_lines[1:])) - - origin_info = { - 'id': '7416001', - 'type': 'git', - 'url': 'https://github.com/webpack/webpack' - } - - mock_service_utils.lookup_origin.return_value = origin_info - mock_get_origin_visits.return_value = stub_origin_visits - mock_get_origin_visit_snapshot.return_value = stub_origin_snapshot - mock_service_utils.lookup_snapshot_size.return_value = { - 'revision': len(stub_origin_snapshot[0]), - 'release': len(stub_origin_snapshot[1]) - } + self.assertContains(resp, escape(message_lines[0])) + self.assertContains(resp, escape('\n'.join(message_lines[1:]))) + + @given(origin()) + def test_revision_origin_browse(self, origin): + + snapshot = self.snapshot_get_latest(origin['id']) + revision = snapshot['branches']['HEAD']['target'] + revision_data = self.revision_get(revision) + dir_id = revision_data['directory'] origin_directory_url = reverse('browse-origin-directory', - url_args={'origin_url': origin_info['url']}, - query_params={'revision': revision_id_test}) + url_args={'origin_url': origin['url']}, + query_params={'revision': revision}) origin_revision_log_url = reverse('browse-origin-log', - url_args={'origin_url': origin_info['url']}, - query_params={'revision': revision_id_test}) + url_args={'origin_url': origin['url']}, # noqa + query_params={'revision': revision}) url = reverse('browse-revision', - url_args={'sha1_git': revision_id_test}, - query_params={'origin': origin_info['url']}) + url_args={'sha1_git': revision}, + query_params={'origin': origin['url']}) resp = self.client.get(url) self.assertContains(resp, origin_directory_url) self.assertContains(resp, origin_revision_log_url) - for parent in revision_metadata_test['parents']: + for parent in revision_data['parents']: parent_url = reverse('browse-revision', url_args={'sha1_git': parent}, - query_params={'origin': origin_info['url']}) + query_params={'origin': origin['url']}) self.assertContains(resp, '%s' % (parent_url, parent)) self.assertContains(resp, 'vault-cook-directory') self.assertContains(resp, 'vault-cook-revision') - swh_rev_id = get_swh_persistent_id('revision', revision_id_test) + swh_rev_id = get_swh_persistent_id('revision', revision) swh_rev_id_url = reverse('browse-swh-id', url_args={'swh_id': swh_rev_id}) self.assertContains(resp, swh_rev_id) self.assertContains(resp, swh_rev_id_url) swh_dir_id = get_swh_persistent_id('directory', dir_id) swh_dir_id_url = reverse('browse-swh-id', url_args={'swh_id': swh_dir_id}) self.assertContains(resp, swh_dir_id) self.assertContains(resp, swh_dir_id_url) self.assertContains(resp, 'swh-take-new-snapshot') - @patch('swh.web.browse.views.revision.service') - def test_revision_log_browse(self, mock_service): + @given(revision()) + def test_revision_log_browse(self, revision): per_page = 10 - revision_history_log_test_sorted = \ - sorted(revision_history_log_test, - key=lambda rev: -parse_timestamp(rev['committer_date']).timestamp()) - - mock_revs_walker = MagicMock() - mock_revs_walker.__iter__.return_value = revision_history_log_test_sorted - mock_revs_walker.export_state.return_value = {} + revision_log = self.revision_log(revision) - mock_service.get_revisions_walker.return_value = mock_revs_walker + revision_log_sorted = \ + sorted(revision_log, + key=lambda rev: -parse_timestamp( + rev['committer_date']).timestamp()) url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'per_page': per_page}) resp = self.client.get(url) next_page_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'offset': per_page, 'per_page': per_page}) + nb_log_entries = per_page + if len(revision_log_sorted) < per_page: + nb_log_entries = len(revision_log_sorted) + self.assertEqual(resp.status_code, 200) self.assertTemplateUsed('browse/revision-log.html') self.assertContains(resp, 'Newer') - self.assertContains(resp, 'Older' % - escape(next_page_url)) - for log in revision_history_log_test_sorted[:per_page]: - author_url = reverse('browse-person', - url_args={'person_id': log['author']['id']}) + if len(revision_log_sorted) > per_page: + self.assertContains(resp, 'Older' % # noqa + escape(next_page_url)) + + for log in revision_log_sorted[:per_page]: revision_url = reverse('browse-revision', url_args={'sha1_git': log['id']}) self.assertContains(resp, log['id'][:7]) self.assertContains(resp, log['author']['name']) self.assertContains(resp, format_utc_iso_date(log['date'])) self.assertContains(resp, escape(log['message'])) - self.assertContains(resp, format_utc_iso_date(log['committer_date'])) + self.assertContains(resp, format_utc_iso_date(log['committer_date'])) # noqa self.assertContains(resp, revision_url) + if len(revision_log_sorted) <= per_page: + return + resp = self.client.get(next_page_url) prev_page_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'per_page': per_page}) next_page_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'offset': 2 * per_page, 'per_page': per_page}) + nb_log_entries = len(revision_log_sorted) - per_page + if nb_log_entries > per_page: + nb_log_entries = per_page + self.assertEqual(resp.status_code, 200) self.assertTemplateUsed('browse/revision-log.html') self.assertContains(resp, 'Newer' % escape(prev_page_url)) - self.assertContains(resp, 'Older' % - escape(next_page_url)) + + if len(revision_log_sorted) > 2 * per_page: + self.assertContains(resp, 'Older' % # noqa + escape(next_page_url)) + + if len(revision_log_sorted) <= 2 * per_page: + return resp = self.client.get(next_page_url) prev_page_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'offset': per_page, 'per_page': per_page}) next_page_url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}, + url_args={'sha1_git': revision}, query_params={'offset': 3 * per_page, 'per_page': per_page}) + nb_log_entries = len(revision_log_sorted) - 2 * per_page + if nb_log_entries > per_page: + nb_log_entries = per_page + self.assertEqual(resp.status_code, 200) self.assertTemplateUsed('browse/revision-log.html') self.assertContains(resp, 'Newer' % escape(prev_page_url)) - self.assertContains(resp, 'Older' % - escape(next_page_url)) - - @patch('swh.web.browse.utils.service') - @patch('swh.web.browse.views.revision.service') - def test_revision_request_errors(self, mock_service, mock_utils_service): - mock_service.lookup_revision.side_effect = \ - NotFoundExc('Revision not found') - url = reverse('browse-revision', - url_args={'sha1_git': revision_id_test}) - resp = self.client.get(url) - self.assertEqual(resp.status_code, 404) - self.assertTemplateUsed('error.html') - self.assertContains(resp, 'Revision not found', status_code=404) - mock_service.get_revisions_walker.side_effect = \ - NotFoundExc('Revision not found') - url = reverse('browse-revision-log', - url_args={'sha1_git': revision_id_test}) + if len(revision_log_sorted) > 3 * per_page: + self.assertContains(resp, 'Older' % # noqa + escape(next_page_url)) + + @given(revision(), unknown_revision(), new_origin()) + def test_revision_request_errors(self, revision, unknown_revision, + new_origin): + + url = reverse('browse-revision', + url_args={'sha1_git': unknown_revision}) resp = self.client.get(url) self.assertEqual(resp.status_code, 404) self.assertTemplateUsed('error.html') - self.assertContains(resp, 'Revision not found', status_code=404) + self.assertContains(resp, + 'Revision with sha1_git %s not found' % + unknown_revision, status_code=404) url = reverse('browse-revision', - url_args={'sha1_git': revision_id_test}, - query_params={'origin_type': 'git', - 'origin': 'https://github.com/foo/bar'}) - - mock_service.lookup_revision.side_effect = None - mock_utils_service.lookup_origin.side_effect = \ - NotFoundExc('Origin not found') + url_args={'sha1_git': revision}, + query_params={'origin_type': new_origin['type'], + 'origin': new_origin['url']}) resp = self.client.get(url) self.assertEqual(resp.status_code, 404) self.assertTemplateUsed('error.html') - self.assertContains(resp, 'the origin mentioned in your request appears broken', - status_code=404) + self.assertContains(resp, 'the origin mentioned in your request' + ' appears broken', status_code=404)