Path: blob/dev/pkg/reporting/trackers/jira/jira_test.go
2070 views
package jira12import (3"strings"4"testing"56"github.com/projectdiscovery/nuclei/v3/pkg/model"7"github.com/projectdiscovery/nuclei/v3/pkg/model/types/severity"8"github.com/projectdiscovery/nuclei/v3/pkg/output"9"github.com/projectdiscovery/nuclei/v3/pkg/reporting/trackers/filters"10"github.com/stretchr/testify/require"11)1213func TestLinkCreation(t *testing.T) {14jiraIntegration := &Integration{}15link := jiraIntegration.CreateLink("ProjectDiscovery", "https://projectdiscovery.io")16require.Equal(t, "[ProjectDiscovery|https://projectdiscovery.io]", link)17}1819func TestHorizontalLineCreation(t *testing.T) {20jiraIntegration := &Integration{}21horizontalLine := jiraIntegration.CreateHorizontalLine()22require.True(t, strings.Contains(horizontalLine, "----"))23}2425func TestTableCreation(t *testing.T) {26jiraIntegration := &Integration{}2728table, err := jiraIntegration.CreateTable([]string{"key", "value"}, [][]string{29{"a", "b"},30{"c"},31{"d", "e"},32})3334require.Nil(t, err)35expected := `| key | value |36| a | b |37| c | |38| d | e |39`40require.Equal(t, expected, table)41}4243func Test_ShouldFilter_Tracker(t *testing.T) {44jiraIntegration := &Integration{45options: &Options{AllowList: &filters.Filter{46Severities: severity.Severities{severity.Critical},47}},48}4950require.False(t, jiraIntegration.ShouldFilter(&output.ResultEvent{Info: model.Info{51SeverityHolder: severity.Holder{Severity: severity.Info},52}}))53require.True(t, jiraIntegration.ShouldFilter(&output.ResultEvent{Info: model.Info{54SeverityHolder: severity.Holder{Severity: severity.Critical},55}}))5657t.Run("deny-list", func(t *testing.T) {58jiraIntegration := &Integration{59options: &Options{DenyList: &filters.Filter{60Severities: severity.Severities{severity.Critical},61}},62}6364require.True(t, jiraIntegration.ShouldFilter(&output.ResultEvent{Info: model.Info{65SeverityHolder: severity.Holder{Severity: severity.Info},66}}))67require.False(t, jiraIntegration.ShouldFilter(&output.ResultEvent{Info: model.Info{68SeverityHolder: severity.Holder{Severity: severity.Critical},69}}))70})71}727374