Skip to content

Migrate discord access plugin tests#38405

Merged
hugoShaka merged 1 commit into
masterfrom
hugo/plugin-migrate-test-discord
Feb 20, 2024
Merged

Migrate discord access plugin tests#38405
hugoShaka merged 1 commit into
masterfrom
hugo/plugin-migrate-test-discord

Conversation

@hugoShaka
Copy link
Copy Markdown
Contributor

This PR migrates discord access plugins tests to the new access plugin integration suite.

It does not perform any changes to the Discord plugin code. The test have mostly been untouched, no test was added or removed. Contexts have been introduced for each test and have the same value as the previous ones. I want to align all context deadlines later once all plugins are migrated.

As the tests were not super readable, I tried dropping a few comments to describe what we want to test and what each part of the test does. Let me know if this helps or is overkill.

Once this PR is merged, I will be able to open a PR in teleport.e to add tests with an enterprise auth for the advanced workflow features.

@hugoShaka hugoShaka added the no-changelog Indicates that a PR does not require a changelog entry label Feb 19, 2024
}

matches := msgFieldRegexp.FindAllStringSubmatch(msg.Text, -1)
if matches == nil {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if matches == nil {
if len(matches) == 0 {

Comment on lines +35 to +43
for {
rawData, err := s.Ruler().PollAccessRequestPluginData(ctx, "discord", reqID)
require.NoError(t, err)
data, err := accessrequest.DecodePluginData(rawData)
require.NoError(t, err)
if cond(data) {
return data
}
}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be a require.Eventually? This for loop seems dangerous because if cond(data) never returns true, it will run forever

Copy link
Copy Markdown
Contributor Author

@hugoShaka hugoShaka Feb 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PollAccessRequestPluginData actually blocks and waits for data. If this gets stuck (and this will when we'll break the plugins 😅 ) the context will eventually be cancelled and the require.NoError will stop the train.

@hugoShaka hugoShaka added this pull request to the merge queue Feb 20, 2024
Merged via the queue into master with commit 0a0719c Feb 20, 2024
@hugoShaka hugoShaka deleted the hugo/plugin-migrate-test-discord branch February 20, 2024 21:44
hugoShaka added a commit that referenced this pull request Apr 23, 2024
github-merge-queue Bot pushed a commit that referenced this pull request Apr 23, 2024
* Copy Terraform provider from teleport-plugins repo (#40224)

* copy terraform provider

* Make dependecy checker happy + use go 1.22

* Run terraform tests in the CI, add Makefile target

* go mod tidy

* Migrate Slack access plugin tests (#38427)

* Migrate ServiceNow access plugin tests (#38413)

* Migrate ServiceNow access plugin tests

* lint

* Migrate pagerduty access plugin tests (#38412)

* Migrate opsgenie access plugin tests (#38410)

* Migrate mattermost access plugin tests (#38408)

* Migrate discord access plugin tests (#38405)

* Migrate jira access plugin tests (#38406)

* Migrate jira access plugin tests

* grant the access_request.update permission

* lint

* license

* Vendor teleport-event-handler (#40364)

* Vendor event-forwarder plugin

* fix tests + add Makefile + CI

* lint

* Fix broken test

* use a separate go.mod

* ignore event-handler in flaky tests + update go.mod

* go mod tidy

* fix TF go mod

* Fix path filtering in unit (integrations) CI (#40488)

* fix broken path filtering in workflow

* go mod tidy

* Prepare teleport access plugin enterprise test suite (#40479)

* Make AuthHelper support enterprise

* Split access OSS and Enterprise tets suites

* fix slack tests

* fix race in accesslist reminder tests

* fixup! fix race in accesslist reminder tests

* Skip flaky access plugin tests (#40525)

* Skip flaky access plugin tests

* fixup! Skip flaky access plugin tests

* Lint Terraform and Event-Handler (#40604)

* Lint Terraform and Event-Handler

* lint terraform

* add Makefile lint targets for TF and event-handler

* address feedback

* Update integrations/event-handler/Makefile

Co-authored-by: Alan Parra <alan.parra@goteleport.com>

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>

* Split Terraform OSS and enterprise test suites (#40534)

* Split TF oss and TF ent tests

* Add makefile target + use eintegration

* update go mod

* Vendor plugin charts (#40373)

* vendor plugin charts

* add tests and version update

* re-generate go modules

* tolerate-ghsa

* bump helm to 3.14.3 to appease the dependency reviewer

* reduce go version to 1.21

* tidy after rebase

---------

Co-authored-by: Alan Parra <alan.parra@goteleport.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog Indicates that a PR does not require a changelog entry size/sm

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants