Skip to content

Commit 0e7d922

Browse files
richbibbyclaude
andcommitted
Add airflow and rack_type tests to v4.1 and v4.2
Both features were introduced in NetBox 4.1 (September 2024), so tests should run against v4.1, v4.2, and v4.3. - v4.0: No changes (features don't exist in this version) - v4.1: Added tests for airflow and rack_type - v4.2: Added tests for airflow and rack_type - v4.3: Already had tests This ensures backward compatibility testing across all supported versions that have these features. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 889436a commit 0e7d922

File tree

2 files changed

+262
-0
lines changed

2 files changed

+262
-0
lines changed

tests/integration/targets/v4.1/tasks/netbox_rack.yml

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,3 +224,134 @@
224224
- test_eight['diff']['before']['state'] == "present"
225225
- test_eight['diff']['after']['state'] == "absent"
226226
- test_eight['msg'] == "rack Test rack one deleted"
227+
228+
- name: 9 - Create rack with airflow
229+
netbox.netbox.netbox_rack:
230+
netbox_url: http://localhost:32768
231+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
232+
data:
233+
name: Test Rack Airflow
234+
site: Test Site
235+
airflow: front-to-rear
236+
state: present
237+
register: test_nine
238+
239+
- name: 9 - ASSERT
240+
ansible.builtin.assert:
241+
that:
242+
- test_nine is changed
243+
- test_nine['diff']['before']['state'] == "absent"
244+
- test_nine['diff']['after']['state'] == "present"
245+
- test_nine['rack']['name'] == "Test Rack Airflow"
246+
- test_nine['rack']['airflow'] == "front-to-rear"
247+
- test_nine['msg'] == "rack Test Rack Airflow created"
248+
249+
- name: 10 - Update rack airflow
250+
netbox.netbox.netbox_rack:
251+
netbox_url: http://localhost:32768
252+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
253+
data:
254+
name: Test Rack Airflow
255+
site: Test Site
256+
airflow: rear-to-front
257+
state: present
258+
register: test_ten
259+
260+
- name: 10 - ASSERT
261+
ansible.builtin.assert:
262+
that:
263+
- test_ten is changed
264+
- test_ten['diff']['before']['airflow'] == "front-to-rear"
265+
- test_ten['diff']['after']['airflow'] == "rear-to-front"
266+
- test_ten['rack']['airflow'] == "rear-to-front"
267+
- test_ten['msg'] == "rack Test Rack Airflow updated"
268+
269+
- name: 11 - Delete rack with airflow
270+
netbox.netbox.netbox_rack:
271+
netbox_url: http://localhost:32768
272+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
273+
data:
274+
name: Test Rack Airflow
275+
site: Test Site
276+
state: absent
277+
register: test_eleven
278+
279+
- name: 11 - ASSERT
280+
ansible.builtin.assert:
281+
that:
282+
- test_eleven is changed
283+
- test_eleven['msg'] == "rack Test Rack Airflow deleted"
284+
285+
- name: 12 - Create rack with rack_type
286+
netbox.netbox.netbox_rack:
287+
netbox_url: http://localhost:32768
288+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
289+
data:
290+
name: Test Rack With Type
291+
site: Test Site
292+
rack_type: Standard 42U
293+
state: present
294+
register: test_twelve
295+
296+
- name: 12 - ASSERT
297+
ansible.builtin.assert:
298+
that:
299+
- test_twelve is changed
300+
- test_twelve['diff']['before']['state'] == "absent"
301+
- test_twelve['diff']['after']['state'] == "present"
302+
- test_twelve['rack']['name'] == "Test Rack With Type"
303+
- test_twelve['rack']['rack_type'] is not none
304+
- test_twelve['msg'] == "rack Test Rack With Type created"
305+
306+
- name: 13 - Create duplicate rack with rack_type (idempotency)
307+
netbox.netbox.netbox_rack:
308+
netbox_url: http://localhost:32768
309+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
310+
data:
311+
name: Test Rack With Type
312+
site: Test Site
313+
rack_type: Standard 42U
314+
state: present
315+
register: test_thirteen
316+
317+
- name: 13 - ASSERT
318+
ansible.builtin.assert:
319+
that:
320+
- test_thirteen is not changed
321+
- test_thirteen['rack']['rack_type'] is not none
322+
- test_thirteen['msg'] == "rack Test Rack With Type already exists"
323+
324+
- name: 14 - Update rack rack_type
325+
netbox.netbox.netbox_rack:
326+
netbox_url: http://localhost:32768
327+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
328+
data:
329+
name: Test Rack With Type
330+
site: Test Site
331+
rack_type: Standard 48U
332+
state: present
333+
register: test_fourteen
334+
335+
- name: 14 - ASSERT
336+
ansible.builtin.assert:
337+
that:
338+
- test_fourteen is changed
339+
- test_fourteen['diff']['before']['rack_type'] != test_fourteen['diff']['after']['rack_type']
340+
- test_fourteen['rack']['rack_type'] is not none
341+
- test_fourteen['msg'] == "rack Test Rack With Type updated"
342+
343+
- name: 15 - Delete rack with rack_type
344+
netbox.netbox.netbox_rack:
345+
netbox_url: http://localhost:32768
346+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
347+
data:
348+
name: Test Rack With Type
349+
site: Test Site
350+
state: absent
351+
register: test_fifteen
352+
353+
- name: 15 - ASSERT
354+
ansible.builtin.assert:
355+
that:
356+
- test_fifteen is changed
357+
- test_fifteen['msg'] == "rack Test Rack With Type deleted"

tests/integration/targets/v4.2/tasks/netbox_rack.yml

Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,3 +224,134 @@
224224
- test_eight['diff']['before']['state'] == "present"
225225
- test_eight['diff']['after']['state'] == "absent"
226226
- test_eight['msg'] == "rack Test rack one deleted"
227+
228+
- name: 9 - Create rack with airflow
229+
netbox.netbox.netbox_rack:
230+
netbox_url: http://localhost:32768
231+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
232+
data:
233+
name: Test Rack Airflow
234+
site: Test Site
235+
airflow: front-to-rear
236+
state: present
237+
register: test_nine
238+
239+
- name: 9 - ASSERT
240+
ansible.builtin.assert:
241+
that:
242+
- test_nine is changed
243+
- test_nine['diff']['before']['state'] == "absent"
244+
- test_nine['diff']['after']['state'] == "present"
245+
- test_nine['rack']['name'] == "Test Rack Airflow"
246+
- test_nine['rack']['airflow'] == "front-to-rear"
247+
- test_nine['msg'] == "rack Test Rack Airflow created"
248+
249+
- name: 10 - Update rack airflow
250+
netbox.netbox.netbox_rack:
251+
netbox_url: http://localhost:32768
252+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
253+
data:
254+
name: Test Rack Airflow
255+
site: Test Site
256+
airflow: rear-to-front
257+
state: present
258+
register: test_ten
259+
260+
- name: 10 - ASSERT
261+
ansible.builtin.assert:
262+
that:
263+
- test_ten is changed
264+
- test_ten['diff']['before']['airflow'] == "front-to-rear"
265+
- test_ten['diff']['after']['airflow'] == "rear-to-front"
266+
- test_ten['rack']['airflow'] == "rear-to-front"
267+
- test_ten['msg'] == "rack Test Rack Airflow updated"
268+
269+
- name: 11 - Delete rack with airflow
270+
netbox.netbox.netbox_rack:
271+
netbox_url: http://localhost:32768
272+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
273+
data:
274+
name: Test Rack Airflow
275+
site: Test Site
276+
state: absent
277+
register: test_eleven
278+
279+
- name: 11 - ASSERT
280+
ansible.builtin.assert:
281+
that:
282+
- test_eleven is changed
283+
- test_eleven['msg'] == "rack Test Rack Airflow deleted"
284+
285+
- name: 12 - Create rack with rack_type
286+
netbox.netbox.netbox_rack:
287+
netbox_url: http://localhost:32768
288+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
289+
data:
290+
name: Test Rack With Type
291+
site: Test Site
292+
rack_type: Standard 42U
293+
state: present
294+
register: test_twelve
295+
296+
- name: 12 - ASSERT
297+
ansible.builtin.assert:
298+
that:
299+
- test_twelve is changed
300+
- test_twelve['diff']['before']['state'] == "absent"
301+
- test_twelve['diff']['after']['state'] == "present"
302+
- test_twelve['rack']['name'] == "Test Rack With Type"
303+
- test_twelve['rack']['rack_type'] is not none
304+
- test_twelve['msg'] == "rack Test Rack With Type created"
305+
306+
- name: 13 - Create duplicate rack with rack_type (idempotency)
307+
netbox.netbox.netbox_rack:
308+
netbox_url: http://localhost:32768
309+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
310+
data:
311+
name: Test Rack With Type
312+
site: Test Site
313+
rack_type: Standard 42U
314+
state: present
315+
register: test_thirteen
316+
317+
- name: 13 - ASSERT
318+
ansible.builtin.assert:
319+
that:
320+
- test_thirteen is not changed
321+
- test_thirteen['rack']['rack_type'] is not none
322+
- test_thirteen['msg'] == "rack Test Rack With Type already exists"
323+
324+
- name: 14 - Update rack rack_type
325+
netbox.netbox.netbox_rack:
326+
netbox_url: http://localhost:32768
327+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
328+
data:
329+
name: Test Rack With Type
330+
site: Test Site
331+
rack_type: Standard 48U
332+
state: present
333+
register: test_fourteen
334+
335+
- name: 14 - ASSERT
336+
ansible.builtin.assert:
337+
that:
338+
- test_fourteen is changed
339+
- test_fourteen['diff']['before']['rack_type'] != test_fourteen['diff']['after']['rack_type']
340+
- test_fourteen['rack']['rack_type'] is not none
341+
- test_fourteen['msg'] == "rack Test Rack With Type updated"
342+
343+
- name: 15 - Delete rack with rack_type
344+
netbox.netbox.netbox_rack:
345+
netbox_url: http://localhost:32768
346+
netbox_token: "0123456789abcdef0123456789abcdef01234567"
347+
data:
348+
name: Test Rack With Type
349+
site: Test Site
350+
state: absent
351+
register: test_fifteen
352+
353+
- name: 15 - ASSERT
354+
ansible.builtin.assert:
355+
that:
356+
- test_fifteen is changed
357+
- test_fifteen['msg'] == "rack Test Rack With Type deleted"

0 commit comments

Comments
 (0)