1+ #
2+ # Copyright 2022, Cédric Moreau <moreaucedric0 at gmail dot com>
3+ #
4+ # SPDX-License-Identifier: Apache-2.0
5+ #
6+
7+ # include common configuration
8+ . ../ common.ps1
9+
10+ BeforeAll {
11+ Connect-FGT @invokeParams
12+ }
13+
14+ Describe " Get WebFilter UrlFilter" {
15+
16+ BeforeAll {
17+ $urlfilter = Add-FGTWebfilterUrlfilter - name $pester_url1 - url_id 1 - url_type simple - url powerfgt.com - action allow - status enable
18+ $script :uuid = $urlfilter.id
19+ Add-FGTWebfilterUrlfilter - name $pester_url2 - url_id 2 - url_type wildcard - url * powerfgt.com - action allow - status enable
20+ }
21+
22+ It " Get WebFilter UrlFilter Does not throw an error" {
23+ {
24+ Get-FGTWebfilterUrlfilter
25+ } | Should -Not - Throw
26+ }
27+
28+ It " Get ALL URL Filter" {
29+ $urlfilter = Get-FGTWebfilterUrlfilter
30+ $urlfilter.count | Should -Not - Be $NULL
31+ }
32+
33+ It " Get ALL URL Filter with -skip" {
34+ $urlfilter = Get-FGTWebfilterUrlfilter - skip
35+ $urlfilter.count | Should -Not - Be $NULL
36+ }
37+
38+ It " Get URL Filter ($pester_url1 )" {
39+ $urlfilter = Get-FGTWebfilterUrlfilter - name $pester_url1
40+ $urlfilter.name | Should - Be $pester_url1
41+ }
42+
43+ It " Get URL Filter ($pester_url1 ) and confirm (via Confirm-FGTWebfilterUrlfilter)" {
44+ $urlfilter = Get-FGTWebfilterUrlfilter - name $pester_url1
45+ Confirm-FGTWebfilterUrlfilter ($urlfilter ) | Should - Be $true
46+ }
47+
48+ Context " Search" {
49+
50+ It " Search URL Filter by name ($pester_url1 )" {
51+ $urlfilter = Get-FGTWebfilterUrlfilter - name $pester_url1
52+ @ ($urlfilter ).count | Should - be 1
53+ $urlfilter.name | Should - Be $pester_url1
54+ }
55+
56+ It " Search URL Filter by uuid ($script :uuid )" {
57+ $urlfilter = Get-FGTWebfilterUrlfilter - id $script :uuid
58+ @ ($urlfilter ).count | Should - be 1
59+ $urlfilter.name | Should - Be $pester_url1
60+ }
61+
62+ }
63+
64+ AfterAll {
65+ Get-FGTWebfilterUrlfilter - name $pester_url1 | Remove-FGTWebfilterUrlfilter - confirm:$false
66+ Get-FGTWebfilterUrlfilter - name $pester_url2 | Remove-FGTWebfilterUrlfilter - confirm:$false
67+ }
68+
69+ }
70+
71+ Describe " Add WebFilter UrlFilter" {
72+
73+ AfterEach {
74+ Get-FGTWebfilterUrlfilter - name $pester_url1 | Remove-FGTWebfilterUrlfilter - confirm:$false
75+ }
76+
77+ It " Add URL Filter $pester_url1 " {
78+ Add-FGTWebfilterUrlfilter - name $pester_url1 - url_id 1 - url_type simple - url powerfgt.com - action allow - status enable
79+ $urlfilter = Get-FGTWebfilterUrlfilter - name $pester_url1
80+ $urlfilter.name | Should - Be $pester_url1
81+ $urlfilter.comment | Should - BeNullOrEmpty
82+ $urlfilter.entries.id | Should - Be 1
83+ $urlfilter.entries.url | Should - Be " powerfgt.com"
84+ $urlfilter.entries.type | Should - Be " simple"
85+ $urlfilter.entries.action | Should - Be " allow"
86+ $urlfilter.entries.status | Should - Be " enable"
87+ }
88+
89+ It " Add URL Filter $pester_url1 (with comment)" {
90+ Add-FGTWebfilterUrlfilter - name $pester_url1 - url_id 1 - url_type simple - url powerfgt.com - action allow - status enable - comment " Added by PowerFGT"
91+ $urlfilter = Get-FGTWebfilterUrlfilter - name $pester_url1
92+ $urlfilter.name | Should - Be $pester_url1
93+ $urlfilter.comment | Should - Be " Added by PowerFGT"
94+ $urlfilter.entries.id | Should - Be 1
95+ $urlfilter.entries.url | Should - Be " powerfgt.com"
96+ $urlfilter.entries.type | Should - Be " simple"
97+ $urlfilter.entries.action | Should - Be " allow"
98+ $urlfilter.entries.status | Should - Be " enable"
99+ }
100+
101+ It " Try to Add URL Filter $pester_url1 (but there is already a object with same name)" {
102+ # Add first URL Filter
103+ Add-FGTWebfilterUrlfilter - name $pester_url1 - url_id 1 - url_type simple - url powerfgt.com - action allow - status enable
104+ # Add Second URL Filter with same name
105+ { Add-FGTWebfilterUrlfilter - name $pester_url1 - url_id 1 - url_type simple - url powerfgt.com - action allow - status enable } | Should - Throw " Already a URL profile object using the same name"
106+ }
107+
108+ }
0 commit comments