core/homeassistant
Nathan Henrie 2109b7a1b9 Use entity_id for backend, friendly name for frontend (#4343)
* Use entity_id for backend, friendly name for frontend

Closes https://github.com/home-assistant/home-assistant/issues/3434

Command line switches had the option to set a `friendly_name` reportedly
for use in the front end. However, if set, it was also being used as the
`entity_id`.

This did not seem like obvious behavior to me. This PR changes the
behavior so the entity_id is the object_id, which must already be
unique, and is an obvious place to have a very predictable slug (even if
long or unsightly), and the friendly name (if set) is used for the
display.

Example:

```yaml
switch:
  platform: command_line
  switches:
    rf_kitchen_light_one:
      command_on: switch_command on kitchen
      command_off: switch_command off kitchen
      command_state: query_command kitchen
      value_template: '{{ value == "online" }}'
      friendly_name: "Beautiful bright kitchen light!"
```

If you were using in an automation or from dev tools, would use:
`switch.rf_kitchen_light_one`, but your front end would still show `Beautiful
bright kitchen light!`

* Add new arg to test_assumed_state_should_be_true_if_command_state_is_false

* Import ENTITY_ID _FORMAT from existing, rename device_name to object_id

* Rename `device_name` to `object_id`

* Test that `entity_id` and `name` are set as expected
2016-11-12 22:46:23 -08:00
..
components Use entity_id for backend, friendly name for frontend (#4343) 2016-11-12 22:46:23 -08:00
helpers Hotfix deadlock on platform setup (#4354) 2016-11-12 16:19:13 -08:00
scripts Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
util Remove ThreadPool with async executor (#4154) 2016-11-05 09:27:55 -07:00
__init__.py Fix PEP257 issues 2016-03-08 00:06:04 +01:00
__main__.py Remove globally disabled pylint warnings (#4204) 2016-11-03 18:40:43 -07:00
bootstrap.py Add logging to platform/component setup (#4300) 2016-11-10 18:46:31 +01:00
config.py Disable too-many-* (#4107) 2016-10-30 22:18:53 +01:00
const.py http: reimplement X-Forwarded-For parsing (#4355) 2016-11-12 16:14:39 -08:00
core.py Change pending task sheduler to time based cleanup (#4324) 2016-11-09 08:41:17 -08:00
exceptions.py Fix PEP257 issues 2016-03-08 00:06:04 +01:00
loader.py fix some comments spell (#4082) 2016-10-28 21:26:52 +02:00
remote.py Change pending task sheduler to time based cleanup (#4324) 2016-11-09 08:41:17 -08:00