mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-22 19:07:54 +01:00
test: fix tests
This commit is contained in:
parent
f07cc2e460
commit
c9bd071c07
@ -1,16 +1,16 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`Datadog integration Should call datadog webhook for archived toggle 1`] = `"{"text":"%%% \\n *some@user.com* archived *some-toggle* in project ** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
exports[`Datadog integration Should call datadog webhook for archived toggle 1`] = `"{"text":"%%% \\n **some@user.com** archived **some-toggle** in project **** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should call datadog webhook for archived toggle with project info 1`] = `"{"text":"%%% \\n *some@user.com* archived *some-toggle* in project *[some-project](http://some-url.com/projects/some-project)* \\n %%% ","title":"Unleash notification update"}"`;
|
||||
exports[`Datadog integration Should call datadog webhook for archived toggle with project info 1`] = `"{"text":"%%% \\n **some@user.com** archived **some-toggle** in project **[some-project](http://some-url.com/projects/some-project)** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should call datadog webhook 1`] = `"{"text":"%%% \\n *some@user.com* created *[some-toggle](http://some-url.com/projects//features/some-toggle)* in project ** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
exports[`Datadog integration Should call datadog webhook 1`] = `"{"text":"%%% \\n **some@user.com** created **[some-toggle](http://some-url.com/projects//features/some-toggle)** in project **** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should call datadog webhook for toggled environment 1`] = `"{"text":"%%% \\n *some@user.com* disabled *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* for the *development* environment in project *[default](http://some-url.com/projects/default)* \\n %%% ","title":"Unleash notification update"}"`;
|
||||
exports[`Datadog integration Should call datadog webhook for toggled environment 1`] = `"{"text":"%%% \\n **some@user.com** disabled **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** for the **development** environment in project **[default](http://some-url.com/projects/default)** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should call datadog webhook with JSON when template set 1`] = `"{"text":"{\\n \\"event\\": \\"feature-created\\",\\n \\"createdBy\\": \\"some@user.com\\"\\n}","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should include customHeaders in headers when calling service 1`] = `"{"text":"%%% \\n *some@user.com* disabled *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* for the *development* environment in project *[default](http://some-url.com/projects/default)* \\n %%% ","title":"Unleash notification update"}"`;
|
||||
exports[`Datadog integration Should include customHeaders in headers when calling service 1`] = `"{"text":"%%% \\n **some@user.com** disabled **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** for the **development** environment in project **[default](http://some-url.com/projects/default)** \\n %%% ","title":"Unleash notification update"}"`;
|
||||
|
||||
exports[`Datadog integration Should include customHeaders in headers when calling service 2`] = `
|
||||
{
|
||||
@ -20,7 +20,7 @@ exports[`Datadog integration Should include customHeaders in headers when callin
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Datadog integration Should not include source_type_name when included in the config 1`] = `"{"text":"%%% \\n *some@user.com* disabled *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* for the *development* environment in project *[default](http://some-url.com/projects/default)* \\n %%% ","title":"Unleash notification update","source_type_name":"my-custom-source-type"}"`;
|
||||
exports[`Datadog integration Should not include source_type_name when included in the config 1`] = `"{"text":"%%% \\n **some@user.com** disabled **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** for the **development** environment in project **[default](http://some-url.com/projects/default)** \\n %%% ","title":"Unleash notification update","source_type_name":"my-custom-source-type"}"`;
|
||||
|
||||
exports[`Datadog integration Should not include source_type_name when included in the config 2`] = `
|
||||
{
|
||||
|
@ -2,210 +2,240 @@
|
||||
|
||||
exports[`Should format specialised text for events when IPs changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *remoteAddress* in *production* IPs from empty set of IPs to [127.0.0.1]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **remoteAddress** in **production** IPs from empty set of IPs to [127.0.0.1]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when a scheduled change request is suspended 1`] = `
|
||||
{
|
||||
"text": "Change request *[#1](unleashUrl/projects/my-other-project/change-requests/1)* in the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)* was suspended for the following reason: The user who scheduled this change request (user id: 6) has been deleted from this Unleash instance.",
|
||||
"label": "Change request suspended",
|
||||
"text": "Change request **[#1](unleashUrl/projects/my-other-project/change-requests/1)** in the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)** was suspended for the following reason: The user who scheduled this change request (user id: 6) has been deleted from this Unleash instance.",
|
||||
"url": "unleashUrl/projects/my-other-project/change-requests/1",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when change request is scheduled 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* scheduled change request *[#1](unleashUrl/projects/my-other-project/change-requests/1)* for feature flag *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)* to be applied at in project *my-other-project*",
|
||||
"label": "Change request scheduled",
|
||||
"text": "**user@company.com** scheduled change request **[#1](unleashUrl/projects/my-other-project/change-requests/1)** for feature flag **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)** to be applied at in project **my-other-project**",
|
||||
"url": "unleashUrl/projects/my-other-project/change-requests/1",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when constraints and rollout percentage and stickiness changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *flexibleRollout* in *production* stickiness from default to random; rollout from 67% to 32%; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **flexibleRollout** in **production** stickiness from default to random; rollout from 67% to 32%; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from empty set of constraints to [appName is one of (x,y), appName not is one of (x)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from empty set of constraints to [appName is one of (x,y), appName not is one of (x)]",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated 2`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from empty set of constraints to [appName is not one of (x,y), appName not is not one of (x)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from empty set of constraints to [appName is not one of (x,y), appName not is not one of (x)]",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated 3`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from empty set of constraints to [appName is a string that contains (x,y), appName not is a string that contains (x)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from empty set of constraints to [appName is a string that contains (x,y), appName not is a string that contains (x)]",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated 4`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from empty set of constraints to [appName is a string that starts with (x,y), appName not is a string that starts with (x)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from empty set of constraints to [appName is a string that starts with (x,y), appName not is a string that starts with (x)]",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated 5`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from empty set of constraints to [appName is a string that ends with (x,y), appName not is a string that ends with (x)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from empty set of constraints to [appName is a string that ends with (x,y), appName not is a string that ends with (x)]",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint DATE_AFTER 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a date after 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a date after 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint DATE_BEFORE 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a date before 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a date before 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint NUM_EQ 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a number equal to 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a number equal to 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint NUM_GT 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a number greater than 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a number greater than 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint NUM_GTE 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a number greater than or equal to 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a number greater than or equal to 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint NUM_LT 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a number less than 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a number less than 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint NUM_LTE 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a number less than or equal to 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a number less than or equal to 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint SEMVER_EQ 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a SemVer equal to 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a SemVer equal to 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint SEMVER_GT 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a SemVer greater than 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a SemVer greater than 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when default strategy updated with numeric constraint SEMVER_LT 1`] = `
|
||||
{
|
||||
"text": "*admin* updated *[aaa](unleashUrl/projects/default/features/aaa)* in project *[default](unleashUrl/projects/default)* by updating strategy *default* in *production* constraints from [appName is a SemVer less than 4] to empty set of constraints",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**admin** updated **[aaa](unleashUrl/projects/default/features/aaa)** in project **[default](unleashUrl/projects/default)** by updating strategy **default** in **production** constraints from [appName is a SemVer less than 4] to empty set of constraints",
|
||||
"url": "unleashUrl/projects/default/features/aaa",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when groupId changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *flexibleRollout* in *production* groupId from new-feature to different-feature",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **flexibleRollout** in **production** groupId from new-feature to different-feature",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when host names changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *applicationHostname* in *production* hostNames from empty set of hostNames to [unleash.com]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **applicationHostname** in **production** hostNames from empty set of hostNames to [unleash.com]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when neither rollout percentage nor stickiness changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *flexibleRollout* in *production*",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **flexibleRollout** in **production**",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when no specific text for strategy exists yet 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *newStrategy* in *production*",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **newStrategy** in **production**",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when rollout percentage changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *flexibleRollout* in *production* rollout from 67% to 32%",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **flexibleRollout** in **production** rollout from 67% to 32%",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when scheduled change request fails 1`] = `
|
||||
{
|
||||
"text": "*Failed* to apply the scheduled change request *[#1](unleashUrl/projects/my-other-project/change-requests/1)* for feature flag *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)* by *user@company.com* in project *my-other-project*.",
|
||||
"label": "Scheduled change request failed",
|
||||
"text": "**Failed** to apply the scheduled change request **[#1](unleashUrl/projects/my-other-project/change-requests/1)** for feature flag **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)** by **user@company.com** in project **my-other-project**.",
|
||||
"url": "unleashUrl/projects/my-other-project/change-requests/1",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when scheduled change request succeeds 1`] = `
|
||||
{
|
||||
"text": "*Successfully* applied the scheduled change request *[#1](unleashUrl/projects/my-other-project/change-requests/1)* for feature flag *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)* by *user@company.com* in project *my-other-project*.",
|
||||
"label": "Scheduled change request applied successfully",
|
||||
"text": "**Successfully** applied the scheduled change request **[#1](unleashUrl/projects/my-other-project/change-requests/1)** for feature flag **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)** by **user@company.com** in project **my-other-project**.",
|
||||
"url": "unleashUrl/projects/my-other-project/change-requests/1",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when stickiness changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *flexibleRollout* in *production* stickiness from default to random",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **flexibleRollout** in **production** stickiness from default to random",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when strategy added 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* added strategy *flexibleRollout* to *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* for the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)*",
|
||||
"label": "Flag strategy added",
|
||||
"text": "**user@company.com** added strategy **flexibleRollout** to **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** for the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)**",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when strategy removed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* removed strategy *default* from *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* for the *production* environment in project *[my-other-project](unleashUrl/projects/my-other-project)*",
|
||||
"label": "Flag strategy removed",
|
||||
"text": "**user@company.com** removed strategy **default** from **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** for the **production** environment in project **[my-other-project](unleashUrl/projects/my-other-project)**",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`Should format specialised text for events when userIds changed 1`] = `
|
||||
{
|
||||
"text": "*user@company.com* updated *[new-feature](unleashUrl/projects/my-other-project/features/new-feature)* in project *[my-other-project](unleashUrl/projects/my-other-project)* by updating strategy *userWithId* in *production* userIds from empty set of userIds to [a,b]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"label": "Flag strategy updated",
|
||||
"text": "**user@company.com** updated **[new-feature](unleashUrl/projects/my-other-project/features/new-feature)** in project **[my-other-project](unleashUrl/projects/my-other-project)** by updating strategy **userWithId** in **production** userIds from empty set of userIds to [a,b]; constraints from empty set of constraints to [appName is one of (x,y)]",
|
||||
"url": "unleashUrl/projects/my-other-project/features/new-feature",
|
||||
}
|
||||
`;
|
||||
|
@ -1,14 +1,14 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`Slack integration Should call slack webhook 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"*some@user.com* created *<http://some-url.com/projects/default/features/some-toggle|some-toggle>* in project *<http://some-url.com/projects/default|default>*","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
exports[`Slack integration Should call slack webhook 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"**some@user.com** created **<http://some-url.com/projects/default/features/some-toggle|some-toggle>** in project **<http://some-url.com/projects/default|default>**","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Slack integration Should call slack webhook for archived toggle 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"*some@user.com* archived *some-toggle* in project **","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects//archive"}]}]}"`;
|
||||
exports[`Slack integration Should call slack webhook for archived toggle 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"**some@user.com** archived **some-toggle** in project ****","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects//archive"}]}]}"`;
|
||||
|
||||
exports[`Slack integration Should call slack webhook for archived toggle with project info 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"*some@user.com* archived *some-toggle* in project *<http://some-url.com/projects/some-project|some-project>*","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/some-project/archive"}]}]}"`;
|
||||
exports[`Slack integration Should call slack webhook for archived toggle with project info 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"**some@user.com** archived **some-toggle** in project **<http://some-url.com/projects/some-project|some-project>**","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/some-project/archive"}]}]}"`;
|
||||
|
||||
exports[`Slack integration Should call webhook for toggled environment 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"*some@user.com* disabled *<http://some-url.com/projects/default/features/some-toggle|some-toggle>* for the *development* environment in project *<http://some-url.com/projects/default|default>*","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
exports[`Slack integration Should call webhook for toggled environment 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"**some@user.com** disabled **<http://some-url.com/projects/default/features/some-toggle|some-toggle>** for the **development** environment in project **<http://some-url.com/projects/default|default>**","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Slack integration Should include custom headers from parameters in call to service 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"*some@user.com* disabled *<http://some-url.com/projects/default/features/some-toggle|some-toggle>* for the *development* environment in project *<http://some-url.com/projects/default|default>*","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
exports[`Slack integration Should include custom headers from parameters in call to service 1`] = `"{"username":"Unleash","icon_emoji":":unleash:","text":"**some@user.com** disabled **<http://some-url.com/projects/default/features/some-toggle|some-toggle>** for the **development** environment in project **<http://some-url.com/projects/default|default>**","channel":"#general","attachments":[{"actions":[{"name":"featureToggle","text":"Open in Unleash","type":"button","value":"featureToggle","style":"primary","url":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Slack integration Should include custom headers from parameters in call to service 2`] = `
|
||||
{
|
||||
|
@ -1,14 +1,14 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`Teams integration Should call teams webhook 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"*some@user.com* created *[some-toggle](http://some-url.com/projects//features/some-toggle)* in project **","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-created"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects//features/some-toggle"}]}]}"`;
|
||||
exports[`Teams integration Should call teams webhook 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"**some@user.com** created **[some-toggle](http://some-url.com/projects//features/some-toggle)** in project ****","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-created"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects//features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Teams integration Should call teams webhook for archived toggle 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"*some@user.com* archived *some-toggle* in project **","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-archived"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects//archive"}]}]}"`;
|
||||
exports[`Teams integration Should call teams webhook for archived toggle 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"**some@user.com** archived **some-toggle** in project ****","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-archived"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects//archive"}]}]}"`;
|
||||
|
||||
exports[`Teams integration Should call teams webhook for archived toggle with project info 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"*some@user.com* archived *some-toggle* in project *[some-project](http://some-url.com/projects/some-project)*","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-archived"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/some-project/archive"}]}]}"`;
|
||||
exports[`Teams integration Should call teams webhook for archived toggle with project info 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"**some@user.com** archived **some-toggle** in project **[some-project](http://some-url.com/projects/some-project)**","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-archived"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/some-project/archive"}]}]}"`;
|
||||
|
||||
exports[`Teams integration Should call teams webhook for toggled environment 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"*some@user.com* disabled *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* for the *development* environment in project *[default](http://some-url.com/projects/default)*","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-environment-disabled"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
exports[`Teams integration Should call teams webhook for toggled environment 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"**some@user.com** disabled **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** for the **development** environment in project **[default](http://some-url.com/projects/default)**","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-environment-disabled"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Teams integration Should include custom headers in call to teams 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"*some@user.com* disabled *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* for the *development* environment in project *[default](http://some-url.com/projects/default)*","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-environment-disabled"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
exports[`Teams integration Should include custom headers in call to teams 1`] = `"{"themeColor":"0076D7","summary":"Message","sections":[{"activityTitle":"**some@user.com** disabled **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** for the **development** environment in project **[default](http://some-url.com/projects/default)**","activitySubtitle":"Unleash notification update","facts":[{"name":"User","value":"some@user.com"},{"name":"Action","value":"feature-environment-disabled"}]}],"potentialAction":[{"@type":"OpenUri","name":"Go to feature","targets":[{"os":"default","uri":"http://some-url.com/projects/default/features/some-toggle"}]}]}"`;
|
||||
|
||||
exports[`Teams integration Should include custom headers in call to teams 2`] = `
|
||||
{
|
||||
|
@ -3,6 +3,6 @@
|
||||
exports[`Webhook integration should allow for eventJson and eventMarkdown in bodyTemplate 1`] = `
|
||||
"{
|
||||
"json": "{\\"id\\":1,\\"createdAt\\":\\"2024-07-24T00:00:00.000Z\\",\\"createdByUserId\\":-1337,\\"type\\":\\"feature-created\\",\\"createdBy\\":\\"some@user.com\\",\\"featureName\\":\\"some-toggle\\",\\"project\\":\\"default\\",\\"data\\":{\\"name\\":\\"some-toggle\\",\\"enabled\\":false,\\"strategies\\":[{\\"name\\":\\"default\\"}]}}",
|
||||
"markdown": "*some@user.com* created *[some-toggle](http://some-url.com/projects/default/features/some-toggle)* in project *[default](http://some-url.com/projects/default)*"
|
||||
"markdown": "**some@user.com** created **[some-toggle](http://some-url.com/projects/default/features/some-toggle)** in project **[default](http://some-url.com/projects/default)**"
|
||||
}"
|
||||
`;
|
||||
|
@ -82,7 +82,7 @@ export enum LinkStyle {
|
||||
MD = 1,
|
||||
}
|
||||
|
||||
const bold = (text?: string) => (text ? `**${text}**` : '');
|
||||
export const bold = (text?: string) => (text ? `**${text}**` : '');
|
||||
|
||||
const EVENT_MAP: Record<string, IEventData> = {
|
||||
[ADDON_CONFIG_CREATED]: {
|
||||
|
@ -10,6 +10,7 @@ import {
|
||||
} from '../types';
|
||||
import type { IntegrationEventsService } from '../services';
|
||||
import type { Logger } from '../logger';
|
||||
import { bold } from './feature-event-formatter-md';
|
||||
|
||||
const slackApiCalls: ChatPostMessageArguments[] = [];
|
||||
|
||||
@ -271,8 +272,7 @@ describe('SlackAppAddon', () => {
|
||||
event: serializeDates(eventWith2Tags),
|
||||
details: {
|
||||
channels: ['general', 'another-channel-1', 'another-channel-2'],
|
||||
message:
|
||||
'*some@user.com* enabled *<http://some-url.com/projects/default/features/some-toggle|some-toggle>* for the *development* environment in project *<http://some-url.com/projects/default|default>*',
|
||||
message: `${bold('some@user.com')} enabled ${bold('<http://some-url.com/projects/default/features/some-toggle|some-toggle>')} for the ${bold('development')} environment in project ${bold('<http://some-url.com/projects/default|default>')}`,
|
||||
},
|
||||
});
|
||||
});
|
||||
|
@ -17,6 +17,7 @@ import {
|
||||
SYSTEM_USER_ID,
|
||||
} from '../types';
|
||||
import type { IntegrationEventsService } from '../services';
|
||||
import { bold } from './feature-event-formatter-md';
|
||||
|
||||
let fetchRetryCalls: any[] = [];
|
||||
const registerEventMock = jest.fn();
|
||||
@ -338,8 +339,7 @@ describe('Slack integration', () => {
|
||||
url: parameters.url,
|
||||
channels: ['general'],
|
||||
username: 'Unleash',
|
||||
message:
|
||||
'*some@user.com* disabled *<http://some-url.com/projects/default/features/some-toggle|some-toggle>* for the *development* environment in project *<http://some-url.com/projects/default|default>*',
|
||||
message: `${bold('some@user.com')} disabled ${bold('<http://some-url.com/projects/default/features/some-toggle|some-toggle>')} for the ${bold('development')} environment in project ${bold('<http://some-url.com/projects/default|default>')}`,
|
||||
},
|
||||
});
|
||||
});
|
||||
|
@ -18,6 +18,7 @@ import {
|
||||
SYSTEM_USER_ID,
|
||||
} from '../types';
|
||||
import type { IntegrationEventsService } from '../services';
|
||||
import { bold } from './feature-event-formatter-md';
|
||||
|
||||
let fetchRetryCalls: any[];
|
||||
const registerEventMock = jest.fn();
|
||||
@ -231,7 +232,7 @@ describe('Teams integration', () => {
|
||||
summary: 'Message',
|
||||
sections: [
|
||||
{
|
||||
activityTitle: `*${event.createdBy}* disabled *[${event.featureName}](${ARGS.unleashUrl}/projects/${event.project}/features/${event.featureName})* for the *${event.environment}* environment in project *[${event.project}](${ARGS.unleashUrl}/projects/${event.project})*`,
|
||||
activityTitle: `${bold(event.createdBy)} disabled ${bold(`[${event.featureName}](${ARGS.unleashUrl}/projects/${event.project}/features/${event.featureName})`)} for the ${bold(event.environment)} environment in project ${bold(`[${event.project}](${ARGS.unleashUrl}/projects/${event.project})`)}`,
|
||||
activitySubtitle: `Unleash notification update`,
|
||||
facts: [
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user