summaryrefslogtreecommitdiff
path: root/test/integration/targets/eos_banner/tests/cli/basic-login.yaml
blob: b82566a1acdfeed12c34cd7cbae254084b386691 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
---
- debug: msg="START cli/basic-login.yaml on connection={{ ansible_connection }}"

- name: Remove previous login banner
  eos_config:
    lines: no banner login
  become: yes

- name: Create login banner
  eos_banner: &multiline
    banner: login
    text: |
      Junk login banner
      over multiple lines
    state: present
  become: yes
  register: result

- assert:
    that:
      - "result.changed == true"
      - "'banner login' in result.commands[0]" # does this break due to "contains?"
      # Ensure sessions contains epoc. Will fail after 18th May 2033
      - "'ansible_1' in result.session_name"

- name: Create login banner again (idempotent)
  eos_banner: *multiline
  become: yes
  register: result

- assert:
    that:
      - "result.changed == false"
      - "result.commands | length == 0"
      # Ensure sessions contains epoc. Will fail after 18th May 2033
      - "result.session_name is not defined"

- name: Remove login
  eos_banner: &remove
    banner: login
    state: absent
  become: yes
  register: result

- assert:
    that:
      - "result.changed == true"
      - "'no banner login' in result.commands" # does this break due to "contains?"
      # Ensure sessions contains epoc. Will fail after 18th May 2033
      - "'ansible_1' in result.session_name"

- name: Remove login again (idempotent)
  eos_banner: *remove
  become: yes
  register: result

- assert:
    that:
      - "result.changed == false"
      - "result.commands | length == 0"
      # Ensure sessions contains epoc. Will fail after 18th May 2033
      - "result.session_name is not defined"

# FIXME add in tests for everything defined in docs
# FIXME Test state:absent + test:
# FIXME Without powers ensure "privileged mode required"