community.general/tests/unit/plugins/modules/test_xdg_mime.yaml
Felix Fontein 8f8a0e1d7c
Some checks are pending
EOL CI / EOL Sanity (Ⓐ2.17) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.17+py3.10) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.17+py3.12) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.17+py3.7) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+alpine319+py:azp/posix/1/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+alpine319+py:azp/posix/2/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+alpine319+py:azp/posix/3/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+fedora39+py:azp/posix/1/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+fedora39+py:azp/posix/2/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+fedora39+py:azp/posix/3/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+ubuntu2004+py:azp/posix/1/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+ubuntu2004+py:azp/posix/2/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.17+ubuntu2004+py:azp/posix/3/) (push) Waiting to run
nox / Run extra sanity tests (push) Waiting to run
Fix __future__ imports, __metaclass__ = type, and remove explicit UTF-8 encoding statement for Python files (#10886)
* Adjust all __future__ imports:

for i in $(grep -REl "__future__.*absolute_import" plugins/ tests/); do
  sed -e 's/from __future__ import .*/from __future__ import annotations/g' -i $i;
done

* Remove all UTF-8 encoding specifications for Python source files:

for i in $(grep -REl '[-][*]- coding: utf-8 -[*]-' plugins/ tests/); do
  sed -e '/^# -\*- coding: utf-8 -\*-/d' -i $i;
done

* Remove __metaclass__ = type:

for i in $(grep -REl '__metaclass__ = type' plugins/ tests/); do
  sed -e '/^__metaclass__ = type/d' -i $i;
done
2025-10-10 19:52:04 +02:00

88 lines
2.3 KiB
YAML

# Copyright (c) 2025, Marcos Alano <marcoshalano@gmail.com>
# Based on gio_mime module. Copyright (c) 2022, Alexei Znamensky <russoz@gmail.com>
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
# TODO: add tests for setting multiple mime types at once
---
anchors:
environ: &env-def {environ_update: {LANGUAGE: C, LC_ALL: C}, check_rc: true}
input: &input
mime_types: x-scheme-handler/http
handler: google-chrome.desktop
get_version: &get_version
command: [/testbin/xdg-mime, --version]
environ: *env-def
rc: 0
out: "xdg-mime 1.2.1\n"
err: ''
query_mime_type: &query_mime_type
command: [/testbin/xdg-mime, query, default, x-scheme-handler/http]
environ: *env-def
rc: 0
out: ''
err: ''
set_handler: &set_handler
command: [/testbin/xdg-mime, default, google-chrome.desktop, x-scheme-handler/http]
environ: *env-def
rc: 0
out: ''
err: ''
test_cases:
- id: test_set_handler
input: *input
output:
current_handlers: ['']
changed: true
mocks:
run_command:
- *get_version
- *query_mime_type
- *set_handler
- id: test_set_handler_check
input: *input
output:
current_handlers: ['google-chrome.desktop']
changed: false
flags:
check: true
mocks:
run_command:
- *get_version
- <<: *query_mime_type
out: |
google-chrome.desktop
- id: test_set_handler_idempot
input: *input
output:
current_handlers: ['google-chrome.desktop']
changed: false
mocks:
run_command:
- *get_version
- <<: *query_mime_type
out: |
google-chrome.desktop
- id: test_set_handler_idempot_check
input: *input
output:
current_handlers: ['google-chrome.desktop']
changed: false
flags:
check: true
mocks:
run_command:
- *get_version
- <<: *query_mime_type
out: |
google-chrome.desktop
- id: test_set_invalid_handler
input:
<<: *input
handler: google-chrome.desktopX
output:
failed: true
msg: Handler must be a .desktop file
mocks:
run_command:
- *get_version