Skip to content

CLOUDP-64113: implementing e2e test for alerts ack and unack atlas #186

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 27 commits into from
May 26, 2020
Merged
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
7c198bc
Refactoring
andreaangiolillo Apr 29, 2020
1dacaa0
Merge remote-tracking branch 'origin/master'
andreaangiolillo Apr 29, 2020
39b30ca
Merge remote-tracking branch 'origin/master'
andreaangiolillo Apr 29, 2020
861d88e
Merge remote-tracking branch 'origin/master'
andreaangiolillo Apr 30, 2020
a1ba80a
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 5, 2020
658d057
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 5, 2020
5927427
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 7, 2020
6fffc8c
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 7, 2020
b0da6c5
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 8, 2020
08b90d3
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 8, 2020
8904b24
Merge remote-tracking branch 'origin'
andreaangiolillo May 8, 2020
247a32e
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 14, 2020
7c7cfed
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 18, 2020
0e694ef
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 18, 2020
5471ee3
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 18, 2020
111282a
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 18, 2020
ad6e2aa
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 18, 2020
5729bd5
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 25, 2020
deed28d
Merge remote-tracking branch 'origin/master'
andreaangiolillo May 25, 2020
3a17614
Close detail: e2e test for alerts ack and unack atlas
andreaangiolillo May 25, 2020
eaede44
Updated e2e test
andreaangiolillo May 25, 2020
a0e58a6
Updated e2e test
andreaangiolillo May 25, 2020
bca0b59
Merge remote-tracking branch 'origin/master' into CLOUDP-64113
andreaangiolillo May 25, 2020
aca2bb8
Updated e2e
andreaangiolillo May 26, 2020
42ccd6e
Merge remote-tracking branch 'origin/master' into CLOUDP-64113
andreaangiolillo May 26, 2020
8f060f7
Updated e2e test
andreaangiolillo May 26, 2020
9f27557
Refactoring
andreaangiolillo May 26, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 95 additions & 9 deletions e2e/atlas/alerts_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,14 @@ import (
"os/exec"
"path/filepath"
"testing"
"time"

"github.com/mongodb/go-client-mongodb-atlas/mongodbatlas"
)

const (
closed = "CLOSED"
replication_oplog_window_running_out = "REPLICATION_OPLOG_WINDOW_RUNNING_OUT"
open = "OPEN"
users_without_multi_factor_auth = "USERS_WITHOUT_MULTI_FACTOR_AUTH"
)

func TestAtlasAlerts(t *testing.T) {
Expand All @@ -43,9 +44,9 @@ func TestAtlasAlerts(t *testing.T) {

atlasEntity := "atlas"
alertsEntity := "alerts"
alertID := "5ecbef6b2359825e889837a7"

t.Run("Describe", func(t *testing.T) {
alertID := "5e4d20ff5cc174527c22c606"

cmd := exec.Command(cliPath,
atlasEntity,
Expand All @@ -72,12 +73,12 @@ func TestAtlasAlerts(t *testing.T) {
t.Errorf("got=%#v\nwant=%#v\n", alert.ID, alertID)
}

if alert.Status != closed {
t.Errorf("got=%#v\nwant=%#v\n", alert.Status, closed)
if alert.Status != open {
t.Errorf("got=%#v\nwant=%#v\n", alert.Status, open)
}

if alert.EventTypeName != replication_oplog_window_running_out {
t.Errorf("got=%#v\nwant=%#v\n", alert.EventTypeName, replication_oplog_window_running_out)
if alert.EventTypeName != users_without_multi_factor_auth {
t.Errorf("got=%#v\nwant=%#v\n", alert.EventTypeName, users_without_multi_factor_auth)
}

})
Expand Down Expand Up @@ -133,11 +134,12 @@ func TestAtlasAlerts(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}

if len(alerts.Results) > 0 {
t.Errorf("got=%#v\nwant=0\n", len(alerts.Results))
if len(alerts.Results) == 0 {
t.Errorf("got=0\nwant>0\n")
}

})

t.Run("List with status CLOSED", func(t *testing.T) {

cmd := exec.Command(cliPath,
Expand Down Expand Up @@ -167,4 +169,88 @@ func TestAtlasAlerts(t *testing.T) {
}

})

t.Run("Acknowledge", func(t *testing.T) {

cmd := exec.Command(cliPath,
atlasEntity,
alertsEntity,
"ack",
alertID,
"--until",
time.Now().Format(time.RFC3339))

cmd.Env = os.Environ()
resp, err := cmd.CombinedOutput()

if err != nil {
t.Fatalf("unexpected error: %v, resp: %v", err, string(resp))
}

alert := mongodbatlas.Alert{}
err = json.Unmarshal(resp, &alert)

if err != nil {
t.Fatalf("unexpected error: %v", err)
}

if alert.ID != alertID {
t.Errorf("got=%#v\nwant%v\n", alert.ID, alertID)
}
})

t.Run("Acknowledge Forever", func(t *testing.T) {

cmd := exec.Command(cliPath,
atlasEntity,
alertsEntity,
"ack",
alertID,
"--forever")

cmd.Env = os.Environ()
resp, err := cmd.CombinedOutput()

if err != nil {
t.Fatalf("unexpected error: %v, resp: %v", err, string(resp))
}

alert := mongodbatlas.Alert{}
err = json.Unmarshal(resp, &alert)

if err != nil {
t.Fatalf("unexpected error: %v", err)
}

if alert.ID != alertID {
t.Errorf("got=%#v\nwant%v\n", alert.ID, alertID)
}
})

t.Run("UnaAcknowledge", func(t *testing.T) {

cmd := exec.Command(cliPath,
atlasEntity,
alertsEntity,
"unack",
alertID)

cmd.Env = os.Environ()
resp, err := cmd.CombinedOutput()

if err != nil {
t.Fatalf("unexpected error: %v, resp: %v", err, string(resp))
}

alert := mongodbatlas.Alert{}
err = json.Unmarshal(resp, &alert)

if err != nil {
t.Fatalf("unexpected error: %v", err)
}

if alert.ID != alertID {
t.Errorf("got=%#v\nwant%v\n", alert.ID, alertID)
}
})
}