mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-10-20 02:53:57 -07:00
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
* 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
88 lines
2.3 KiB
YAML
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
|