コード例 #1
0
    def test_handle_url_loaded_with_empty_content(self):
        page = PageFactory.create()

        reviewer = Reviewer(api_url='http://localhost:2368',
                            page_uuid=page.uuid,
                            page_url=page.url,
                            page_score=0.0,
                            config=Config(),
                            facters=[])

        content = ''
        result = {
            'url': page.url,
            'status': 200,
            'content': content,
            'html': content
        }
        reviewer.responses[page.url] = result
        reviewer._wait_for_async_requests = Mock()
        reviewer.save_review = Mock()
        response = Mock(status_code=200, text=content, headers={})
        reviewer.content_loaded(page.url, response)

        facter = JSFacter(reviewer)
        facter.async_get = Mock()
        facter.get_facts()

        facter.handle_url_loaded(page.url, response)

        expect(facter.review.data).to_include('total.size.js')
        expect(facter.review.data['total.size.js']).to_equal(0)

        expect(facter.review.data).to_include('total.size.js.gzipped')
        expect(facter.review.data['total.size.js.gzipped']).to_equal(0)
コード例 #2
0
    def test_handle_url_loaded(self):
        page = PageFactory.create()

        reviewer = Reviewer(api_url='http://localhost:2368',
                            page_uuid=page.uuid,
                            page_url=page.url,
                            page_score=0.0,
                            config=Config(),
                            facters=[])

        content = '<script type="text/javascript" src="teste.js"></script>'

        result = {
            'url': page.url,
            'status': 200,
            'content': content,
            'html': lxml.html.fromstring(content)
        }
        reviewer.responses[page.url] = result
        reviewer._wait_for_async_requests = Mock()
        reviewer.save_review = Mock()
        response = Mock(status_code=200, text=content, headers={})
        reviewer.content_loaded(page.url, response)

        facter = JSFacter(reviewer)
        facter.async_get = Mock()
        facter.get_facts()

        facter.handle_url_loaded(page.url, response)

        expect(facter.review.data).to_include('total.size.js')
        expect(facter.review.data['total.size.js']).to_equal(0.0537109375)

        expect(facter.review.data).to_include('total.size.js.gzipped')
        expect(
            facter.review.data['total.size.js.gzipped']).to_equal(0.05078125)

        expect(facter.review.data).to_include('page.js')
        data = set([(page.url, response)])
        expect(facter.review.data['page.js']).to_equal(data)