{"guid":"d97f3f86-852e-56b0-8603-896bd7724dbc","title":"pytest-pacman - generating test data for libalpm with Python","subtitle":null,"slug":"arch-conf-online-2020-6397-pytest-pacman-generating-test-data-for-libalpm-with-python","link":"https://pretalx.com/arch-conf-online-2020/talk/98NC78/","description":"To test pyalpm (The official Python libalpm bindings)  a local pacman database and sync database is required. Instead of relying on pacman and fetching data over the internet, some Python was written to generated the test data on demand. This talk introduces the local database and sync db structure of pacman, how to write a simple pytest plugin and how consumers of pyalpm could use this plugin.\n\nThe project is located here: https://gitlab.archlinux.org/jelle/pytest-pacman","original_language":"eng","persons":["Jelle van der waa"],"tags":["arch-conf-2020","6397","2020","archlinux","archconf2020","archconf","linux","conference"],"view_count":61,"promoted":false,"date":"2020-10-11T13:25:00.000+02:00","release_date":"2020-11-01T00:00:00.000+01:00","updated_at":"2025-01-24T19:15:06.984+01:00","length":1086,"duration":1086,"thumb_url":"https://static.media.ccc.de/media/conferences/archconf/2020/6397-hd.jpg","poster_url":"https://static.media.ccc.de/media/conferences/archconf/2020/6397-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/conferences/archconf/2020/6397-hd.timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/conferences/archconf/2020/6397-hd.thumbnails.vtt","frontend_link":"https://media.ccc.de/v/arch-conf-online-2020-6397-pytest-pacman-generating-test-data-for-libalpm-with-python","url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_title":"Arch Conf 2020","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020","related":[],"recordings":[{"size":11,"length":1086,"mime_type":"audio/opus","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2020-11-02T00:10:13.625+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/opus/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_opus.opus","url":"https://api.media.ccc.de/public/recordings/48534","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"},{"size":52,"length":1086,"mime_type":"video/webm","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2020-11-02T00:10:09.537+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/webm-hd/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/48533","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"},{"size":24,"length":1086,"mime_type":"video/webm","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2020-11-02T00:10:05.124+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/webm-sd/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/48532","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"},{"size":16,"length":1086,"mime_type":"audio/mpeg","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2020-11-02T00:09:53.139+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/mp3/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/48531","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"},{"size":20,"length":1086,"mime_type":"video/mp4","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2020-11-02T00:09:51.820+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/h264-sd/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_sd.mp4","url":"https://api.media.ccc.de/public/recordings/48530","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"},{"size":31,"length":1086,"mime_type":"video/mp4","language":"eng","filename":"arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2020-11-01T23:31:27.605+01:00","recording_url":"https://cdn.media.ccc.de/events/archconf/2020/h264-hd/arch-conf-2020-6397-eng-pytest-pacman_-_generating_test_data_for_libalpm_with_Python_hd.mp4","url":"https://api.media.ccc.de/public/recordings/48468","event_url":"https://api.media.ccc.de/public/events/d97f3f86-852e-56b0-8603-896bd7724dbc","conference_url":"https://api.media.ccc.de/public/conferences/arch-conf-2020"}]}