From cd04edc9b3c6cfdfaad65190d9f39d9fb517a4e2 Mon Sep 17 00:00:00 2001
From: Oliver <10700296+ol-iver@users.noreply.github.com>
Date: Tue, 24 Sep 2024 00:57:57 +0200
Subject: [PATCH] Validate for all models if sound mode and tone control are
supported (#306)
* Validate for all models if sound mode is supported
* Validate if tone control is supported
* Allow status.xml as fallback for sound mode
---
denonavr/denonavr.py | 9 +-
denonavr/soundmode.py | 83 +++++++++++--------
denonavr/tonecontrol.py | 70 +++++++++++-----
tests/test_denonavr.py | 6 +-
...V7703-AppCommand-update-soundmode-8080.xml | 6 ++
...703-AppCommand-update-tonecontrol-8080.xml | 11 +++
...8500H-AppCommand-update-soundmode-8080.xml | 6 ++
...00H-AppCommand-update-tonecontrol-8080.xml | 11 +++
...3700H-AppCommand-update-soundmode-8080.xml | 6 ++
...00H-AppCommand-update-tonecontrol-8080.xml | 11 +++
.../AVR-1713-AppCommand-update-soundmode.xml | 6 ++
...AVR-1713-AppCommand-update-tonecontrol.xml | 4 +
.../AVR-1912-AppCommand-update-soundmode.xml | 3 +
...AVR-1912-AppCommand-update-tonecontrol.xml | 3 +
...AVR-2312CI-AppCommand-update-soundmode.xml | 3 +
...R-2312CI-AppCommand-update-tonecontrol.xml | 3 +
...AVR-3311CI-AppCommand-update-soundmode.xml | 3 +
...R-3311CI-AppCommand-update-tonecontrol.xml | 3 +
.../AVR-3312-AppCommand-update-soundmode.xml | 4 +
...AVR-3312-AppCommand-update-tonecontrol.xml | 4 +
.../AVR-3313-AppCommand-update-soundmode.xml | 6 ++
...AVR-3313-AppCommand-update-tonecontrol.xml | 4 +
.../AVR-4810-AppCommand-update-soundmode.xml | 4 +
...AVR-4810-AppCommand-update-tonecontrol.xml | 4 +
...AVR-X1100W-AppCommand-update-soundmode.xml | 6 ++
...R-X1100W-AppCommand-update-tonecontrol.xml | 11 +++
...VR-X2000-2-AppCommand-update-soundmode.xml | 3 +
...-X2000-2-AppCommand-update-tonecontrol.xml | 3 +
.../AVR-X2000-AppCommand-update-soundmode.xml | 3 +
...VR-X2000-AppCommand-update-tonecontrol.xml | 3 +
...R-X2100W-2-AppCommand-update-soundmode.xml | 3 +
...X2100W-2-AppCommand-update-tonecontrol.xml | 3 +
...AVR-X2100W-AppCommand-update-soundmode.xml | 3 +
...R-X2100W-AppCommand-update-tonecontrol.xml | 3 +
.../AVR-X4000-AppCommand-update-soundmode.xml | 6 ++
...VR-X4000-AppCommand-update-tonecontrol.xml | 4 +
...AVR-X4100W-AppCommand-update-soundmode.xml | 6 ++
...R-X4100W-AppCommand-update-tonecontrol.xml | 11 +++
...4300H-AppCommand-update-soundmode-8080.xml | 6 ++
...00H-AppCommand-update-tonecontrol-8080.xml | 11 +++
.../M-CR510-2-AppCommand-update-soundmode.xml | 6 ++
...-CR510-2-AppCommand-update-tonecontrol.xml | 4 +
.../M-CR510-AppCommand-update-soundmode.xml | 6 ++
.../M-CR510-AppCommand-update-tonecontrol.xml | 4 +
.../M-CR603-AppCommand-update-soundmode.xml | 4 +
.../M-CR603-AppCommand-update-tonecontrol.xml | 4 +
.../M-RC610-AppCommand-update-soundmode.xml | 3 +
.../M-RC610-AppCommand-update-tonecontrol.xml | 3 +
.../NR1604-AppCommand-update-soundmode.xml | 3 +
.../NR1604-AppCommand-update-tonecontrol.xml | 3 +
...R1609-AppCommand-update-soundmode-8080.xml | 6 ++
...609-AppCommand-update-tonecontrol-8080.xml | 11 +++
.../SR5008-AppCommand-update-soundmode.xml | 3 +
.../SR5008-AppCommand-update-tonecontrol.xml | 3 +
.../SR6011-AppCommand-update-soundmode.xml | 6 ++
.../SR6011-AppCommand-update-tonecontrol.xml | 11 +++
...R6012-AppCommand-update-soundmode-8080.xml | 6 ++
...012-AppCommand-update-tonecontrol-8080.xml | 11 +++
58 files changed, 396 insertions(+), 59 deletions(-)
create mode 100644 tests/xml/AV7703-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/AV7703-AppCommand-update-tonecontrol-8080.xml
create mode 100644 tests/xml/AVC-8500H-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/AVC-8500H-AppCommand-update-tonecontrol-8080.xml
create mode 100644 tests/xml/AVC-X3700H-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/AVC-X3700H-AppCommand-update-tonecontrol-8080.xml
create mode 100644 tests/xml/AVR-1713-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-1713-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-1912-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-1912-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-2312CI-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-2312CI-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-3311CI-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-3311CI-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-3312-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-3312-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-3313-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-3313-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-4810-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-4810-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X1100W-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X1100W-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X2000-2-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X2000-2-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X2000-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X2000-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X2100W-2-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X2100W-2-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X2100W-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X2100W-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X4000-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X4000-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X4100W-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/AVR-X4100W-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/AVR-X4300H-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/AVR-X4300H-AppCommand-update-tonecontrol-8080.xml
create mode 100644 tests/xml/M-CR510-2-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/M-CR510-2-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/M-CR510-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/M-CR510-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/M-CR603-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/M-CR603-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/M-RC610-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/M-RC610-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/NR1604-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/NR1604-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/NR1609-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/NR1609-AppCommand-update-tonecontrol-8080.xml
create mode 100644 tests/xml/SR5008-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/SR5008-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/SR6011-AppCommand-update-soundmode.xml
create mode 100644 tests/xml/SR6011-AppCommand-update-tonecontrol.xml
create mode 100644 tests/xml/SR6012-AppCommand-update-soundmode-8080.xml
create mode 100644 tests/xml/SR6012-AppCommand-update-tonecontrol-8080.xml
diff --git a/denonavr/denonavr.py b/denonavr/denonavr.py
index 6c47856d..71485cdb 100644
--- a/denonavr/denonavr.py
+++ b/denonavr/denonavr.py
@@ -146,7 +146,7 @@ async def async_setup(self) -> None:
# Setup other functions
self.input.setup()
await self.soundmode.async_setup()
- self.tonecontrol.setup()
+ await self.tonecontrol.async_setup()
self.vol.setup()
self.audyssey.setup()
@@ -320,7 +320,7 @@ def input_func_list(self) -> List[str]:
@property
def support_sound_mode(self) -> Optional[bool]:
- """Return True if sound mode supported."""
+ """Return True if sound mode is supported."""
return self.soundmode.support_sound_mode
@property
@@ -435,6 +435,11 @@ def show_all_inputs(self) -> Optional[bool]:
"""Indicate if all inputs are shown or just active one."""
return self._show_all_inputs
+ @property
+ def support_tone_control(self) -> Optional[bool]:
+ """Return True if tone control is supported."""
+ return self.tonecontrol.support_tone_control
+
@property
def tone_control_status(self) -> Optional[bool]:
"""Return value of tone control status."""
diff --git a/denonavr/soundmode.py b/denonavr/soundmode.py
index 1782fca5..2adc5d17 100644
--- a/denonavr/soundmode.py
+++ b/denonavr/soundmode.py
@@ -16,14 +16,8 @@
import attr
from .appcommand import AppCommands
-from .const import (
- ALL_ZONE_STEREO,
- AVR_X,
- AVR_X_2016,
- DENON_ATTR_SETATTR,
- SOUND_MODE_MAPPING,
-)
-from .exceptions import AvrCommandError, AvrProcessingError
+from .const import ALL_ZONE_STEREO, DENON_ATTR_SETATTR, SOUND_MODE_MAPPING
+from .exceptions import AvrCommandError, AvrIncompleteResponseError, AvrProcessingError
from .foundation import DenonAVRFoundation
_LOGGER = logging.getLogger(__name__)
@@ -94,6 +88,7 @@ class DenonAVRSoundMode(DenonAVRFoundation):
init=False,
)
_setup_lock: asyncio.Lock = attr.ib(default=attr.Factory(asyncio.Lock))
+ _appcommand_active: bool = attr.ib(converter=bool, default=True, init=False)
# Update tags for attributes
# AppCommand.xml interface
@@ -106,16 +101,14 @@ async def async_setup(self) -> None:
"""Ensure that the instance is initialized."""
async with self._setup_lock:
_LOGGER.debug("Starting sound mode setup")
- # Add tags for a potential AppCommand.xml update
- for tag in self.appcommand_attrs:
- self._device.api.add_appcommand_update_tag(tag)
-
- # Soundmode is always available for AVR-X and AVR-X-2016 receivers
- # For AVR receiver it will be tested during the first update
- if self._device.receiver in [AVR_X, AVR_X_2016]:
- self._support_sound_mode = True
- else:
- await self.async_update_sound_mode()
+
+ # The first update determines if sound mode is supported
+ await self.async_update_sound_mode()
+
+ if self._support_sound_mode and self._appcommand_active:
+ # Add tags for a potential AppCommand.xml update
+ for tag in self.appcommand_attrs:
+ self._device.api.add_appcommand_update_tag(tag)
self._device.telnet_api.register_callback(
"MS", self._async_soundmode_callback
@@ -157,29 +150,47 @@ async def async_update_sound_mode(
"Device is not setup correctly, update method not set"
)
- if self._device.use_avr_2016_update:
- await self.async_update_attrs_appcommand(
- self.appcommand_attrs, global_update=global_update, cache_id=cache_id
- )
- else:
- urls = [self._device.urls.status, self._device.urls.mainzone]
- if self._is_setup and not self._support_sound_mode:
+ if self._is_setup and not self._support_sound_mode:
+ return
+
+ if self._device.use_avr_2016_update and self._appcommand_active:
+ try:
+ await self.async_update_attrs_appcommand(
+ self.appcommand_attrs,
+ global_update=global_update,
+ cache_id=cache_id,
+ )
+ except (AvrProcessingError, AvrIncompleteResponseError):
+ self._appcommand_active = False
+ _LOGGER.debug(
+ "Appcommand.xml does not support Sound mode. "
+ "Testing status.xml interface next"
+ )
+ else:
+ if not self._is_setup:
+ self._support_sound_mode = True
+ _LOGGER.info("Sound mode supported")
return
- # There are two different options of sound mode tags
+
+ urls = [self._device.urls.status, self._device.urls.mainzone]
+ # There are two different options of sound mode tags
+ try:
+ await self.async_update_attrs_status_xml(
+ self.status_xml_attrs_01, urls, cache_id=cache_id
+ )
+ except AvrProcessingError:
try:
await self.async_update_attrs_status_xml(
- self.status_xml_attrs_01, urls, cache_id=cache_id
+ self.status_xml_attrs_02, urls, cache_id=cache_id
)
except AvrProcessingError:
- try:
- await self.async_update_attrs_status_xml(
- self.status_xml_attrs_02, urls, cache_id=cache_id
- )
- except AvrProcessingError:
- _LOGGER.info("Sound mode not supported")
- self._support_sound_mode = False
- return
+ self._support_sound_mode = False
+ _LOGGER.info("Sound mode not supported")
+ return
+
+ if not self._is_setup:
self._support_sound_mode = True
+ _LOGGER.info("Sound mode supported")
def match_sound_mode(self) -> Optional[str]:
"""Match the raw_sound_mode to its corresponding sound_mode."""
@@ -252,7 +263,7 @@ async def _async_set_all_zone_stereo(self, zst_on: bool) -> None:
##############
@property
def support_sound_mode(self) -> Optional[bool]:
- """Return True if sound mode supported."""
+ """Return True if sound mode is supported."""
return self._support_sound_mode
@property
diff --git a/denonavr/tonecontrol.py b/denonavr/tonecontrol.py
index 096357d2..ef616e1d 100644
--- a/denonavr/tonecontrol.py
+++ b/denonavr/tonecontrol.py
@@ -7,6 +7,7 @@
:license: MIT, see LICENSE for more details.
"""
+import asyncio
import logging
import time
from collections.abc import Hashable
@@ -16,7 +17,7 @@
from .appcommand import AppCommandCmdParam, AppCommands
from .const import DENON_ATTR_SETATTR
-from .exceptions import AvrCommandError, AvrProcessingError
+from .exceptions import AvrCommandError, AvrIncompleteResponseError, AvrProcessingError
from .foundation import DenonAVRFoundation, convert_string_int_bool
_LOGGER = logging.getLogger(__name__)
@@ -26,6 +27,9 @@
class DenonAVRToneControl(DenonAVRFoundation):
"""This class implements tone control functions of Denon AVR receiver."""
+ _support_tone_control: Optional[bool] = attr.ib(
+ converter=attr.converters.optional(bool), default=None
+ )
_tone_control_status: Optional[bool] = attr.ib(
converter=attr.converters.optional(convert_string_int_bool), default=None
)
@@ -44,22 +48,31 @@ class DenonAVRToneControl(DenonAVRFoundation):
_treble_level: Optional[str] = attr.ib(
converter=attr.converters.optional(str), default=None
)
+ _setup_lock: asyncio.Lock = attr.ib(default=attr.Factory(asyncio.Lock))
# Update tags for attributes
# AppCommand.xml interface
appcommand_attrs = {AppCommands.GetToneControl: None}
- def setup(self) -> None:
+ async def async_setup(self) -> None:
"""Ensure that the instance is initialized."""
- # Add tags for a potential AppCommand.xml update
- for tag in self.appcommand_attrs:
- self._device.api.add_appcommand_update_tag(tag)
+ async with self._setup_lock:
+ _LOGGER.debug("Starting tone control setup")
- self._device.telnet_api.register_callback(
- "PS", self._async_sound_detail_callback
- )
+ # The first update determines if sound mode is supported
+ await self.async_update_tone_control()
+
+ # Add tags for a potential AppCommand.xml update
+ if self.support_tone_control:
+ for tag in self.appcommand_attrs:
+ self._device.api.add_appcommand_update_tag(tag)
+
+ self._device.telnet_api.register_callback(
+ "PS", self._async_sound_detail_callback
+ )
- self._is_setup = True
+ self._is_setup = True
+ _LOGGER.debug("Finished tone control setup")
async def _async_sound_detail_callback(
self, zone: str, event: str, parameter: str
@@ -88,7 +101,7 @@ async def async_update(
_LOGGER.debug("Starting tone control update")
# Ensure instance is setup before updating
if not self._is_setup:
- self.setup()
+ await self.async_setup()
# Update state
await self.async_update_tone_control(
@@ -105,17 +118,29 @@ async def async_update_tone_control(
"Device is not setup correctly, update method not set"
)
+ if self._is_setup and not self._support_tone_control:
+ return
+
# Tone control is only available for avr 2016 update
- if self._device.use_avr_2016_update:
- try:
- await self.async_update_attrs_appcommand(
- self.appcommand_attrs,
- global_update=global_update,
- cache_id=cache_id,
- )
- except AvrProcessingError as err:
- # Don't raise an error here, because not all devices support it
- _LOGGER.debug("Updating tone control failed: %s", err)
+ if not self._device.use_avr_2016_update:
+ self._support_tone_control = False
+ _LOGGER.info("Tone control not supported")
+ return
+
+ try:
+ await self.async_update_attrs_appcommand(
+ self.appcommand_attrs,
+ global_update=global_update,
+ cache_id=cache_id,
+ )
+ except (AvrProcessingError, AvrIncompleteResponseError):
+ self._support_tone_control = False
+ _LOGGER.info("Tone control not supported")
+ return
+
+ if not self._is_setup:
+ self._support_tone_control = True
+ _LOGGER.info("Tone control supported")
async def async_set_tone_control_command(
self, parameter_type: str, value: int
@@ -134,6 +159,11 @@ async def async_set_tone_control_command(
##############
# Properties #
##############
+ @property
+ def support_tone_control(self) -> Optional[bool]:
+ """Return True if tone control is supported."""
+ return self._support_tone_control
+
@property
def tone_control_status(self) -> Optional[bool]:
"""Return value of tone control status."""
diff --git a/tests/test_denonavr.py b/tests/test_denonavr.py
index 140213af..b4088c7d 100644
--- a/tests/test_denonavr.py
+++ b/tests/test_denonavr.py
@@ -126,8 +126,12 @@ def custom_matcher(self, request: httpx.Request, *args, **kwargs):
content_str = request.read().decode("utf-8")
if "GetFriendlyName" in content_str:
ep_suffix = "-setup"
- else:
+ elif "GetAllZoneSource" in content_str:
ep_suffix = "-update"
+ elif "GetSurroundModeStatus" in content_str:
+ ep_suffix = "-update-soundmode"
+ else:
+ ep_suffix = "-update-tonecontrol"
content = get_sample_content(
f"{self.testing_receiver}-AppCommand{ep_suffix}{port_suffix}.xml"
)
diff --git a/tests/xml/AV7703-AppCommand-update-soundmode-8080.xml b/tests/xml/AV7703-AppCommand-update-soundmode-8080.xml
new file mode 100644
index 00000000..e0c1f312
--- /dev/null
+++ b/tests/xml/AV7703-AppCommand-update-soundmode-8080.xml
@@ -0,0 +1,6 @@
+
+
Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-1912-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-1912-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..92f6c409 --- /dev/null +++ b/tests/xml/AVR-1912-AppCommand-update-tonecontrol.xml @@ -0,0 +1,3 @@ +Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-2312CI-AppCommand-update-soundmode.xml b/tests/xml/AVR-2312CI-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..92f6c409 --- /dev/null +++ b/tests/xml/AVR-2312CI-AppCommand-update-soundmode.xml @@ -0,0 +1,3 @@ +Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-2312CI-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-2312CI-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..92f6c409 --- /dev/null +++ b/tests/xml/AVR-2312CI-AppCommand-update-tonecontrol.xml @@ -0,0 +1,3 @@ +Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-3311CI-AppCommand-update-soundmode.xml b/tests/xml/AVR-3311CI-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..92f6c409 --- /dev/null +++ b/tests/xml/AVR-3311CI-AppCommand-update-soundmode.xml @@ -0,0 +1,3 @@ +Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-3311CI-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-3311CI-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..92f6c409 --- /dev/null +++ b/tests/xml/AVR-3311CI-AppCommand-update-tonecontrol.xml @@ -0,0 +1,3 @@ +Form Deviceinfo.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-3312-AppCommand-update-soundmode.xml b/tests/xml/AVR-3312-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..a72ef641 --- /dev/null +++ b/tests/xml/AVR-3312-AppCommand-update-soundmode.xml @@ -0,0 +1,4 @@ +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/AVR-3312-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-3312-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..a72ef641 --- /dev/null +++ b/tests/xml/AVR-3312-AppCommand-update-tonecontrol.xml @@ -0,0 +1,4 @@ +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/AVR-3313-AppCommand-update-soundmode.xml b/tests/xml/AVR-3313-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..a07c4e9f --- /dev/null +++ b/tests/xml/AVR-3313-AppCommand-update-soundmode.xml @@ -0,0 +1,6 @@ + +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/AVR-4810-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-4810-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..a72ef641 --- /dev/null +++ b/tests/xml/AVR-4810-AppCommand-update-tonecontrol.xml @@ -0,0 +1,4 @@ +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/AVR-X1100W-AppCommand-update-soundmode.xml b/tests/xml/AVR-X1100W-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..74704e24 --- /dev/null +++ b/tests/xml/AVR-X1100W-AppCommand-update-soundmode.xml @@ -0,0 +1,6 @@ + +Form AppCommand.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-X2000-2-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-X2000-2-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..a4df4e1d --- /dev/null +++ b/tests/xml/AVR-X2000-2-AppCommand-update-tonecontrol.xml @@ -0,0 +1,3 @@ +Form AppCommand.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-X2000-AppCommand-update-soundmode.xml b/tests/xml/AVR-X2000-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..e2c1811c --- /dev/null +++ b/tests/xml/AVR-X2000-AppCommand-update-soundmode.xml @@ -0,0 +1,3 @@ + +Form AppCommand.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-X2100W-AppCommand-update-tonecontrol.xml b/tests/xml/AVR-X2100W-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..a4df4e1d --- /dev/null +++ b/tests/xml/AVR-X2100W-AppCommand-update-tonecontrol.xml @@ -0,0 +1,3 @@ +Form AppCommand.xml is not defined
\ No newline at end of file diff --git a/tests/xml/AVR-X4000-AppCommand-update-soundmode.xml b/tests/xml/AVR-X4000-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..a07c4e9f --- /dev/null +++ b/tests/xml/AVR-X4000-AppCommand-update-soundmode.xml @@ -0,0 +1,6 @@ + +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/M-CR603-AppCommand-update-tonecontrol.xml b/tests/xml/M-CR603-AppCommand-update-tonecontrol.xml new file mode 100644 index 00000000..a72ef641 --- /dev/null +++ b/tests/xml/M-CR603-AppCommand-update-tonecontrol.xml @@ -0,0 +1,4 @@ +Form AppCommand.xml is not defined
+ diff --git a/tests/xml/M-RC610-AppCommand-update-soundmode.xml b/tests/xml/M-RC610-AppCommand-update-soundmode.xml new file mode 100644 index 00000000..a8ba0133 --- /dev/null +++ b/tests/xml/M-RC610-AppCommand-update-soundmode.xml @@ -0,0 +1,3 @@ + +