Example #1
0
def test_comunity_processmedia_logs(app, settings):
    response = app.get('/comunity/processmedia_log', expect_errors=True)
    assert response.status_code == 403

    login(app)

    multi_mock_open = MultiMockOpen()
    multi_mock_open.add_handler(
        'processmedia.log',
        """
2000-01-01 00:00:00,000 - __main__ - INFO - Info test
2001-01-01 00:00:00,000 - __main__ - WARNING - Warning test
2002-01-01 00:00:00,000 - __main__ - ERROR - Error test
"""
    )
    with patch.dict(settings, {'static.processmedia2.log': 'processmedia.log'}):
        # rrrrrrr - kind of a hack using ComunityTrack._open .. but it works ..
        with patch.object(ComunityTrack, '_open', multi_mock_open.open):
            response = app.get('/comunity/processmedia_log?levels=WARNING,ERROR', expect_errors=True)

    assert 'Info test' not in response.text
    assert 'Warning test' in response.text
    assert 'Error test' in response.text

    logout(app)
Example #2
0
def test_comunity_processmedia_logs(app, settings):
    response = app.get('/comunity/processmedia_log', expect_errors=True)
    assert response.status_code == 403

    login(app)

    multi_mock_open = MultiMockOpen()
    multi_mock_open.add_handler(
        'processmedia.log', """
2000-01-01 00:00:00,000 - __main__ - INFO - Info test
2001-01-01 00:00:00,000 - __main__ - WARNING - Warning test
2002-01-01 00:00:00,000 - __main__ - ERROR - Error test
""")
    with patch.dict(settings,
                    {'static.processmedia2.log': 'processmedia.log'}):
        # rrrrrrr - kind of a hack using ComunityTrack._open .. but it works ..
        with patch.object(ComunityTrack, '_open', multi_mock_open.open):
            response = app.get(
                '/comunity/processmedia_log?levels=WARNING,ERROR',
                expect_errors=True)

    assert 'Info test' not in response.text
    assert 'Warning test' in response.text
    assert 'Error test' in response.text

    logout(app)
Example #3
0
def test_comunity_track_render(app, users, tracks):
    login(app)

    # Static file data
    multi_mock_open = MultiMockOpen()
    multi_mock_open.add_handler(
        'track1source.txt', """
            title: Test Track 1 - TITLE EXTENDED
            artist: test artist
            category test category
        """)
    multi_mock_open.add_handler(
        'track1source.json',
        json.dumps({
            'scan': {
                'track1source.txt': {
                    'relative': 'track1source.txt'
                },
                'track1source.avi': {
                    'relative': 'track1source.avi'
                },
                'track1source.srt': {
                    'relative': 'track1source.srt'
                },
            }
        }))
    multi_mock_open.add_handler('track1source.srt', """
            subtitle content
        """)
    #multi_mock_open.add_handler(
    #    'test.srt',
    #    FileNotFoundError
    #)

    for track_url in (
            '/comunity/track/t1',
            '/comunity/track/t1.html',
            '/comunity/track/t1.html_template',
    ):
        # Make web request
        with patch.object(ComunityTrack, '_open', multi_mock_open.open):
            response = app.get(track_url)

        # Assert output
        for text in (
                'Test Track 1 - TITLE EXTENDED',
                'track1source',
                'subtitle content',
                'processed.mpg'  # Link to processed video is present
        ):
            assert text in response.text

    logout(app)
Example #4
0
def test_track(app, users, tracks):
    login(app)

    # Static file data
    multi_mock_open = MultiMockOpen()
    multi_mock_open.add_handler(
        'tags.txt',
        """
            title: Test Track 1 - TITLE EXTENDED
            artist: test artist
            category test category
        """
    )
    multi_mock_open.add_handler(
        'sources.json',
        json.dumps({
            'test.avi': {},
            'test.ssa': {},
            'test.srt': {},
        })
    )
    multi_mock_open.add_handler(
        'test.ssa',
        """
            subtitle content
        """
    )
    multi_mock_open.add_handler(
        'test.srt',
        FileNotFoundError
    )


    # Make web request
    with patch.object(ComunityTrack, '_open', multi_mock_open.open):
        response = app.get('/comunity/track/t1')

    # Assert output
    for text in (
        'Test Track 1 - TITLE EXTENDED',
        'track1source',
        'subtitle content',
        'processed.mpg'  # Link to processed video is present
    ):
        assert text in response.text

    logout(app)