{"action":"closed","issue":{"url":"https://api.github.com/repos/Kozea/WeasyPrint/issues/354","repository_url":"https://api.github.com/repos/Kozea/WeasyPrint","labels_url":"https://api.github.com/repos/Kozea/WeasyPrint/issues/354/labels{/name}","comments_url":"https://api.github.com/repos/Kozea/WeasyPrint/issues/354/comments","events_url":"https://api.github.com/repos/Kozea/WeasyPrint/issues/354/events","html_url":"https://github.com/Kozea/WeasyPrint/issues/354","id":174931565,"number":354,"title":"py.test failing on clean clone","user":{"login":"johnlb","id":5116479,"avatar_url":"https://avatars.githubusercontent.com/u/5116479?v=3","gravatar_id":"","url":"https://api.github.com/users/johnlb","html_url":"https://github.com/johnlb","followers_url":"https://api.github.com/users/johnlb/followers","following_url":"https://api.github.com/users/johnlb/following{/other_user}","gists_url":"https://api.github.com/users/johnlb/gists{/gist_id}","starred_url":"https://api.github.com/users/johnlb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnlb/subscriptions","organizations_url":"https://api.github.com/users/johnlb/orgs","repos_url":"https://api.github.com/users/johnlb/repos","events_url":"https://api.github.com/users/johnlb/events{/privacy}","received_events_url":"https://api.github.com/users/johnlb/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2016-09-04T05:00:05Z","updated_at":"2016-09-04T14:08:45Z","closed_at":"2016-09-04T14:08:45Z","body":"So, just tried running unit tests on WeasyPrint using a fresh clone and came up with a bunch of failures. I assume it is something on my end, but I thought I'd check to see if this is a known thing?\r\n\r\nRunning Ubuntu 16, can reproduce on both python 2.7 and 3.5.\r\n\r\nHere is the output of py.test (I Interrupted it because it seems to hang up on this last test...):\r\n\r\n\r\n\r\n(python3) johnlb@this-lappy:~/opensource/WeasyPrint$ py.test -v\r\n=============================== test session starts ================================\r\nplatform linux -- Python 3.5.2, pytest-3.0.2, py-1.4.31, pluggy-0.3.1 -- /home/johnlb/Envs/python3/bin/python3\r\ncachedir: .cache\r\nrootdir: /home/johnlb/opensource/WeasyPrint, inifile: pytest.ini\r\ncollected 168 items \r\n\r\nweasyprint/tests/test_api.py::test_html_parsing PASSED\r\nweasyprint/tests/test_api.py::test_css_parsing PASSED\r\nweasyprint/tests/test_api.py::test_python_render PASSED\r\nweasyprint/tests/test_api.py::test_command_line_render PASSED\r\nweasyprint/tests/test_api.py::test_unicode_filenames PASSED\r\nweasyprint/tests/test_api.py::test_low_level_api PASSED\r\nweasyprint/tests/test_api.py::test_bookmarks PASSED\r\nweasyprint/tests/test_api.py::test_links PASSED\r\nweasyprint/tests/test_api.py::test_navigator PASSED\r\nweasyprint/tests/test_api.py::test_url_fetcher PASSED\r\nweasyprint/tests/test_api.py::test_html_meta PASSED\r\nweasyprint/tests/test_api.py::test_http PASSED\r\nweasyprint/tests/test_boxes.py::test_box_tree PASSED\r\nweasyprint/tests/test_boxes.py::test_html_entities PASSED\r\nweasyprint/tests/test_boxes.py::test_inline_in_block PASSED\r\nweasyprint/tests/test_boxes.py::test_block_in_inline PASSED\r\nweasyprint/tests/test_boxes.py::test_styles PASSED\r\nweasyprint/tests/test_boxes.py::test_whitespace PASSED\r\nweasyprint/tests/test_boxes.py::test_page_style PASSED\r\nweasyprint/tests/test_boxes.py::test_images PASSED\r\nweasyprint/tests/test_boxes.py::test_tables PASSED\r\nweasyprint/tests/test_boxes.py::test_table_style PASSED\r\nweasyprint/tests/test_boxes.py::test_column_style PASSED\r\nweasyprint/tests/test_boxes.py::test_nested_grid_x PASSED\r\nweasyprint/tests/test_boxes.py::test_colspan_rowspan PASSED\r\nweasyprint/tests/test_boxes.py::test_before_after PASSED\r\nweasyprint/tests/test_boxes.py::test_counters PASSED\r\nweasyprint/tests/test_boxes.py::test_counter_styles PASSED\r\nweasyprint/tests/test_boxes.py::test_margin_boxes PASSED\r\nweasyprint/tests/test_boxes.py::test_margin_box_string_set PASSED\r\nweasyprint/tests/test_boxes.py::test_page_counters PASSED\r\nweasyprint/tests/test_boxes.py::test_border_collapse PASSED\r\nweasyprint/tests/test_css.py::test_data_url PASSED\r\nweasyprint/tests/test_css.py::test_style_dict PASSED\r\nweasyprint/tests/test_css.py::test_find_stylesheets PASSED\r\nweasyprint/tests/test_css.py::test_expand_shorthands PASSED\r\nweasyprint/tests/test_css.py::test_annotate_document FAILED\r\nweasyprint/tests/test_css.py::test_page PASSED\r\nweasyprint/tests/test_css.py::test_warnings PASSED\r\nweasyprint/tests/test_css.py::test_error_recovery PASSED\r\nweasyprint/tests/test_css.py::test_line_height_inheritance PASSED\r\nweasyprint/tests/test_css.py::test_important PASSED\r\nweasyprint/tests/test_css.py::test_units FAILED\r\nweasyprint/tests/test_css_validation.py::test_not_print PASSED\r\nweasyprint/tests/test_css_validation.py::test_function PASSED\r\nweasyprint/tests/test_css_validation.py::test_counters PASSED\r\nweasyprint/tests/test_css_validation.py::test_spacing PASSED\r\nweasyprint/tests/test_css_validation.py::test_decoration PASSED\r\nweasyprint/tests/test_css_validation.py::test_size PASSED\r\nweasyprint/tests/test_css_validation.py::test_transforms PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_four_sides PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_borders PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_list_style PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_background PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_background_position PASSED\r\nweasyprint/tests/test_css_validation.py::test_font PASSED\r\nweasyprint/tests/test_css_validation.py::test_line_height PASSED\r\nweasyprint/tests/test_css_validation.py::test_string_set PASSED\r\nweasyprint/tests/test_css_validation.py::test_linear_gradient PASSED\r\nweasyprint/tests/test_css_validation.py::test_overflow_wrap PASSED\r\nweasyprint/tests/test_css_validation.py::test_expand_word_wrap PASSED\r\nweasyprint/tests/test_css_validation.py::test_radial_gradient PASSED\r\nweasyprint/tests/test_draw.py::test_canvas_background PASSED\r\nweasyprint/tests/test_draw.py::test_background_image PASSED\r\nweasyprint/tests/test_draw.py::test_background_origin PASSED\r\nweasyprint/tests/test_draw.py::test_background_repeat_space PASSED\r\nweasyprint/tests/test_draw.py::test_background_repeat_round PASSED\r\nweasyprint/tests/test_draw.py::test_background_clip PASSED\r\nweasyprint/tests/test_draw.py::test_background_size PASSED\r\nweasyprint/tests/test_draw.py::test_list_style_image PASSED\r\nweasyprint/tests/test_draw.py::test_images PASSED\r\nweasyprint/tests/test_draw.py::test_image_resolution PASSED\r\nweasyprint/tests/test_draw.py::test_visibility PASSED\r\nweasyprint/tests/test_draw.py::test_tables PASSED\r\nweasyprint/tests/test_draw.py::test_before_after PASSED\r\nweasyprint/tests/test_draw.py::test_borders PASSED\r\nweasyprint/tests/test_draw.py::test_outlines PASSED\r\nweasyprint/tests/test_draw.py::test_small_borders PASSED\r\nweasyprint/tests/test_draw.py::test_margin_boxes PASSED\r\nweasyprint/tests/test_draw.py::test_unicode PASSED\r\nweasyprint/tests/test_draw.py::test_overflow PASSED\r\nweasyprint/tests/test_draw.py::test_clip PASSED\r\nweasyprint/tests/test_draw.py::test_opacity PASSED\r\nweasyprint/tests/test_draw.py::test_current_color PASSED\r\nweasyprint/tests/test_draw.py::test_2d_transform PASSED\r\nweasyprint/tests/test_draw.py::test_acid2 PASSED\r\nweasyprint/tests/test_draw.py::test_linear_gradients PASSED\r\nweasyprint/tests/test_draw.py::test_radial_gradients PASSED\r\nweasyprint/tests/test_layout.py::test_page_size PASSED\r\nweasyprint/tests/test_layout.py::test_block_widths PASSED\r\nweasyprint/tests/test_layout.py::test_block_heights PASSED\r\nweasyprint/tests/test_layout.py::test_block_percentage_heights PASSED\r\nweasyprint/tests/test_layout.py::test_inline_block_sizes PASSED\r\nweasyprint/tests/test_layout.py::test_lists PASSED\r\nweasyprint/tests/test_layout.py::test_empty_linebox xfail\r\nweasyprint/tests/test_layout.py::test_breaking_linebox PASSED\r\nweasyprint/tests/test_layout.py::test_linebox_text PASSED\r\nweasyprint/tests/test_layout.py::test_linebox_positions PASSED\r\nweasyprint/tests/test_layout.py::test_forced_line_breaks PASSED\r\nweasyprint/tests/test_layout.py::test_page_breaks PASSED\r\nweasyprint/tests/test_layout.py::test_orphans_widows_avoid PASSED\r\nweasyprint/tests/test_layout.py::test_inlinebox_spliting PASSED\r\nweasyprint/tests/test_layout.py::test_page_and_linebox_breaking PASSED\r\nweasyprint/tests/test_layout.py::test_whitespace_processing PASSED\r\nweasyprint/tests/test_layout.py::test_images PASSED\r\nweasyprint/tests/test_layout.py::test_vertical_align FAILED\r\nweasyprint/tests/test_layout.py::test_inline_replaced_auto_margins PASSED\r\nweasyprint/tests/test_layout.py::test_empty_inline_auto_margins PASSED\r\nweasyprint/tests/test_layout.py::test_box_sizing PASSED\r\nweasyprint/tests/test_layout.py::test_margin_boxes_fixed_dimension PASSED\r\nweasyprint/tests/test_layout.py::test_preferred_widths FAILED\r\nweasyprint/tests/test_layout.py::test_margin_boxes_variable_dimension PASSED\r\nweasyprint/tests/test_layout.py::test_margin_boxes_vertical_align PASSED\r\nweasyprint/tests/test_layout.py::test_margin_collapsing PASSED\r\nweasyprint/tests/test_layout.py::test_relative_positioning PASSED\r\nweasyprint/tests/test_layout.py::test_absolute_positioning PASSED\r\nweasyprint/tests/test_layout.py::test_absolute_images PASSED\r\nweasyprint/tests/test_layout.py::test_fixed_positioning PASSED\r\nweasyprint/tests/test_layout.py::test_floats PASSED\r\nweasyprint/tests/test_layout.py::test_floats_page_breaks PASSED\r\nweasyprint/tests/test_layout.py::test_font_stretch FAILED\r\nweasyprint/tests/test_layout.py::test_box_decoration_break PASSED\r\nweasyprint/tests/test_layout.py::test_hyphenation PASSED\r\nweasyprint/tests/test_layout.py::test_linear_gradient PASSED\r\nweasyprint/tests/test_layout.py::test_radial_gradient PASSED\r\nweasyprint/tests/test_layout.py::test_shrink_to_fit_floating_point_error ^C\r\n\r\n===================================== FAILURES =====================================\r\n______________________________ test_annotate_document ______________________________\r\nweasyprint/tests/test_css.py:166: in test_annotate_document\r\n    assert ul.margin_top == (40, 'px')\r\nE   assert Dimension(val...44, unit='px') == (40, 'px')\r\nE     At index 0 diff: 27.344 != 40\r\nE     Full diff:\r\nE     - Dimension(value=27.344, unit='px')\r\nE     + (40, 'px')\r\n____________________________________ test_units ____________________________________\r\nweasyprint/tests/test_css.py:413: in test_units\r\n    assert margins == [96, 96, 96, 96, 96, 96, 96, 17.6, 17.6, 15.4, 12]\r\nE   assert [96, 96.0, 96....0, 96.0, ...] == [96, 96, 96, 96, 96, 96, ...]\r\nE     At index 9 diff: 9.797949 != 15.4\r\nE     Full diff:\r\nE     - [96, 96.0, 96.0, 96.0, 96.0, 96.0, 96.0, 17.6, 17.6, 9.797949, 8.2032]\r\nE     ?        --    --    --    --    --    --              ^ ---- -  ^^^^^\r\nE     + [96, 96, 96, 96, 96, 96, 96, 17.6, 17.6, 15.4, 12]\r\nE     ?                                          ^^    ^\r\n_______________________________ test_vertical_align ________________________________\r\nweasyprint/tests/test_layout.py:1550: in test_vertical_align\r\n    assert img_1.position_y == 35.2  # 60 - 0.5 * 0.8 * font-size - 40/2\r\nE   assert 36.718720000000005 == 35.2\r\nE    +  where 36.718720000000005 = <InlineReplacedBox img None>.position_y\r\n______________________________ test_preferred_widths _______________________________\r\nweasyprint/tests/test_layout.py:2061: in test_preferred_widths\r\n    assert get_float_width(10) == len('consectetur elit') * 16\r\nE   assert 124.0 == (16 * 16)\r\nE    +  where 124.0 = <function test_preferred_widths.<locals>.get_float_width at 0x7f9661a048c8>(10)\r\nE    +  and   16 = len('consectetur\\xa0elit')\r\n________________________________ test_font_stretch _________________________________\r\nweasyprint/tests/test_layout.py:3219: in test_font_stretch\r\n    assert condensed < normal\r\nE   assert 106.0 < 106.0\r\n============================== pytest-warning summary ==============================\r\nWC1 /home/johnlb/opensource/WeasyPrint/weasyprint/tests/test_api.py cannot collect test class 'TestHTML' because it has a __init__ constructor\r\nWC1 /home/johnlb/opensource/WeasyPrint/weasyprint/tests/test_boxes.py cannot collect test class 'TestHTML' because it has a __init__ constructor\r\nWC1 /home/johnlb/opensource/WeasyPrint/weasyprint/tests/test_css.py cannot collect test class 'TestHTML' because it has a __init__ constructor\r\nWC1 /home/johnlb/opensource/WeasyPrint/weasyprint/tests/test_draw.py cannot collect test class 'TestHTML' because it has a __init__ constructor\r\nWC1 /home/johnlb/opensource/WeasyPrint/weasyprint/tests/test_pdf.py cannot collect test class 'TestHTML' because it has a __init__ constructor\r\n!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nto show a full traceback on KeyboardInterrupt use --fulltrace\r\n/home/johnlb/Envs/python3/lib/python3.5/site-packages/html5lib/treebuilders/etree_lxml.py:240: KeyboardInterrupt\r\n======= 5 failed, 119 passed, 1 xfailed, 5 pytest-warnings in 22.35 seconds ========"}}
{"actor":{"display_login":"liZe"}}