Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add xor automation condition #5453

Merged
merged 1 commit into from Oct 3, 2023
Merged

Conversation

kahrendt
Copy link
Contributor

What does this implement/fix?

This PR adds a xor condition for automations. I have added test cases for all 4 basic logic conditions to test1.yaml. If there is a better location to add tests for these base automations, please let me know!

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Other

Related issue or feature (if applicable): closes esphome/feature-requests#2390

Pull request in esphome-docs with documentation (if applicable): esphome/esphome-docs#3222

Test Environment

  • ESP32
  • ESP32 IDF
  • ESP8266
  • RP2040

Example entry for config.yaml:

# Example config.yaml
      on_*:
        then:
          - if:
              condition:
                xor:
                  - binary_sensor.is_on: binary_sensor_1
                  - binary_sensor.is_on: binary_sensor_2
              then:
                logger.log: "binary_sensor_1 or binary_sensor_2 is exclusively on"

Checklist:

  • The code change is tested and works locally.
  • Tests have been added to verify that the new code works (under tests/ folder).

If user exposed functionality or configuration variables are added/changed:

@kahrendt kahrendt marked this pull request as ready for review September 29, 2023 18:10
@kahrendt kahrendt requested a review from a team as a code owner September 29, 2023 18:10
Copy link
Member

@jesserockz jesserockz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@jesserockz jesserockz merged commit 88bb051 into esphome:dev Oct 3, 2023
30 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Oct 5, 2023
@kahrendt kahrendt deleted the xor-condition branch October 26, 2023 11:47
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

xor Condition
2 participants