test: Some cleanup for Git Cypress tests (#32836)
1. Change usage of ports bound to 3000, 5000 and 8000 to 4200, which will be the canonical port for TED in the future. 2. Switch to using TED's native git repo management APIs, instead of the Gitea compatibility layer. 3. Remove code from GitHub ages. /ok-to-test tags="@tag.Sanity, @tag.Git"<!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/8785291879> > Commit: b38f4eb388716f7fcfc2a032d788c2ebb951568b > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=8785291879&attempt=2" target="_blank">Click here!</a> <!-- end of auto-generated comment: Cypress test results --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Enhanced Git integration by shifting from GitHub to Gitea for repository operations in test environments. - Updated URLs and endpoints across various test scripts and data fixtures to align with new configurations. - **Tests** - Modified test scenarios to reflect changes in Git operations and URL configurations. - **Chores** - Updated CI workflows by replacing old secrets with new ones for better configuration management. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
parent
60d45ea6ff
commit
cd22fc1087
3
.github/workflows/ci-test-custom-script.yml
vendored
3
.github/workflows/ci-test-custom-script.yml
vendored
|
|
@ -299,15 +299,12 @@ jobs:
|
||||||
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
||||||
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
||||||
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
||||||
CYPRESS_GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
|
||||||
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
||||||
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
||||||
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
||||||
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
||||||
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
||||||
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
||||||
CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN }}
|
|
||||||
CYPRESS_TEST_GITHUB_USER_NAME: ${{ secrets.CYPRESS_TEST_GITHUB_USER_NAME }}
|
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
||||||
|
|
|
||||||
3
.github/workflows/ci-test-hosted.yml
vendored
3
.github/workflows/ci-test-hosted.yml
vendored
|
|
@ -195,15 +195,12 @@ jobs:
|
||||||
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
||||||
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
||||||
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
||||||
CYPRESS_GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
|
||||||
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
||||||
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
||||||
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
||||||
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
||||||
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
||||||
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
||||||
CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN }}
|
|
||||||
CYPRESS_TEST_GITHUB_USER_NAME: ${{ secrets.CYPRESS_TEST_GITHUB_USER_NAME }}
|
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
||||||
|
|
|
||||||
3
.github/workflows/ci-test-limited.yml
vendored
3
.github/workflows/ci-test-limited.yml
vendored
|
|
@ -303,15 +303,12 @@ jobs:
|
||||||
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
CYPRESS_TESTPASSWORD4: ${{ secrets.CYPRESS_TESTPASSWORD4 }}
|
||||||
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
CYPRESS_S3_ACCESS_KEY: ${{ secrets.CYPRESS_S3_ACCESS_KEY }}
|
||||||
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
CYPRESS_S3_SECRET_KEY: ${{ secrets.CYPRESS_S3_SECRET_KEY }}
|
||||||
CYPRESS_GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
|
||||||
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
CYPRESS_AIRTABLE_BEARER: ${{ secrets.AIRTABLE_BEARER }}
|
||||||
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
CYPRESS_ORACLE_HOST: ${{ secrets.ORACLE_HOST }}
|
||||||
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
CYPRESS_ORACLE_SERVICE: ${{ secrets.ORACLE_SERVICE }}
|
||||||
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
CYPRESS_ORACLE_USERNAME: ${{ secrets.ORACLE_USERNAME }}
|
||||||
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
CYPRESS_ORACLE_PASSWORD: ${{ secrets.ORACLE_PASSWORD }}
|
||||||
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
CYPRESS_FIRESTORE_PRIVATE_KEY: ${{ secrets.FIRESTORE_PRIVATE_KEY }}
|
||||||
CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.CYPRESS_GITHUB_PERSONAL_ACCESS_TOKEN }}
|
|
||||||
CYPRESS_TEST_GITHUB_USER_NAME: ${{ secrets.CYPRESS_TEST_GITHUB_USER_NAME }}
|
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_ID }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GOOGLE_CLIENT_SECRET }}
|
||||||
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID: ${{ secrets.CYPRESS_APPSMITH_OAUTH2_GITHUB_CLIENT_ID }}
|
||||||
|
|
|
||||||
|
|
@ -17,14 +17,12 @@ describe("Git import empty repository", { tags: ["@tag.Git"] }, function () {
|
||||||
cy.generateUUID().then((uid) => {
|
cy.generateUUID().then((uid) => {
|
||||||
repoName = uid;
|
repoName = uid;
|
||||||
_.gitSync.CreateTestGiteaRepo(repoName);
|
_.gitSync.CreateTestGiteaRepo(repoName);
|
||||||
//cy.createTestGithubRepo(repoName);
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it("1. Bug #12749 Git Import - Empty Repo NullPointerException", () => {
|
it("1. Bug #12749 Git Import - Empty Repo NullPointerException", () => {
|
||||||
cy.generateUUID().then((uid) => {
|
cy.generateUUID().then((uid) => {
|
||||||
repoName = uid;
|
repoName = uid;
|
||||||
//cy.createTestGithubRepo(repoName);
|
|
||||||
_.gitSync.CreateTestGiteaRepo(repoName);
|
_.gitSync.CreateTestGiteaRepo(repoName);
|
||||||
_.gitSync.ImportAppFromGit(undefined, repoName, false);
|
_.gitSync.ImportAppFromGit(undefined, repoName, false);
|
||||||
cy.wait("@importFromGit").then((interception) => {
|
cy.wait("@importFromGit").then((interception) => {
|
||||||
|
|
@ -38,6 +36,5 @@ describe("Git import empty repository", { tags: ["@tag.Git"] }, function () {
|
||||||
});
|
});
|
||||||
after(() => {
|
after(() => {
|
||||||
_.gitSync.DeleteTestGithubRepo(repoName);
|
_.gitSync.DeleteTestGithubRepo(repoName);
|
||||||
//cy.deleteTestGithubRepo(repoName);
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,5 @@ describe("Git sync modal: deploy tab", { tags: ["@tag.Git"] }, function () {
|
||||||
|
|
||||||
after(() => {
|
after(() => {
|
||||||
_.gitSync.DeleteTestGithubRepo(repoName);
|
_.gitSync.DeleteTestGithubRepo(repoName);
|
||||||
//cy.deleteTestGithubRepo(repoName);
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -111,6 +111,5 @@ describe("Git disconnect modal:", { tags: ["@tag.Git"] }, function () {
|
||||||
|
|
||||||
after(() => {
|
after(() => {
|
||||||
_.gitSync.DeleteTestGithubRepo(repoName);
|
_.gitSync.DeleteTestGithubRepo(repoName);
|
||||||
//cy.deleteTestGithubRepo(repoName);
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -265,7 +265,7 @@ describe("Git sync Bug #10773", { tags: ["@tag.Git"] }, function () {
|
||||||
agHelper.GetNClick(gitSync.gitConnectNextBtn);
|
agHelper.GetNClick(gitSync.gitConnectNextBtn);
|
||||||
agHelper.TypeText(
|
agHelper.TypeText(
|
||||||
gitSync.remoteUrlInput,
|
gitSync.remoteUrlInput,
|
||||||
`${dataManager.GITEA_API_URL_TED}/${repoName}.git`,
|
`${dataManager.GIT_CLONE_URL}/${repoName}.git`,
|
||||||
);
|
);
|
||||||
agHelper.GetNClick(gitSync.gitConnectNextBtn);
|
agHelper.GetNClick(gitSync.gitConnectNextBtn);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -121,28 +121,5 @@ describe(
|
||||||
expect(location.pathname).includes(legacyPathname);
|
expect(location.pathname).includes(legacyPathname);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// // _.gitSync.DeleteTestGithubRepo(repoName);
|
|
||||||
// // //cy.deleteTestGithubRepo(repoName);
|
|
||||||
// // // TODO remove when app deletion with conflicts is fixed
|
|
||||||
// // cy.get(homePage.homeIcon).click({ force: true });
|
|
||||||
// // cy.get(homePage.createNew)
|
|
||||||
// // .first()
|
|
||||||
// // .click({ force: true });
|
|
||||||
// // cy.wait("@createNewApplication").should(
|
|
||||||
// // "have.nested.property",
|
|
||||||
// // "response.body.responseMeta.status",
|
|
||||||
// // 201,
|
|
||||||
// // );
|
|
||||||
// // cy.get("#loading").should("not.exist");
|
|
||||||
// // cy.wait(2000);
|
|
||||||
// // cy.AppSetupForRename();
|
|
||||||
// // cy.get(homePage.applicationName).type(repoName + "{enter}");
|
|
||||||
// // cy.wait("@updateApplication").should(
|
|
||||||
// // "have.nested.property",
|
|
||||||
// // "response.body.responseMeta.status",
|
|
||||||
// // 200,
|
|
||||||
// // );
|
|
||||||
// });
|
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -187,7 +187,8 @@ describe("Git sync:", { tags: ["@tag.Git"] }, function () {
|
||||||
// cy.get("@gitbranchName").then((branName) => {
|
// cy.get("@gitbranchName").then((branName) => {
|
||||||
// tempBranch = branName;
|
// tempBranch = branName;
|
||||||
// });
|
// });
|
||||||
cy.renameBranchViaGithubApi(repoName, tempBranch, tempBranchRenamed);
|
// rename branch API missing in TED.
|
||||||
|
// cy.renameBranchViaGithubApi(repoName, tempBranch, tempBranchRenamed);
|
||||||
cy.get(gitSyncLocators.branchButton).click();
|
cy.get(gitSyncLocators.branchButton).click();
|
||||||
cy.get(gitSyncLocators.branchSearchInput).type(`{selectall}${tempBranch}`);
|
cy.get(gitSyncLocators.branchSearchInput).type(`{selectall}${tempBranch}`);
|
||||||
const tempBranchRegex = new RegExp(`^${tempBranch}$`);
|
const tempBranchRegex = new RegExp(`^${tempBranch}$`);
|
||||||
|
|
|
||||||
|
|
@ -22,17 +22,12 @@ describe("Git with Theming:", { tags: ["@tag.Git"] }, function () {
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// cy.generateUUID().then((uid) => {
|
|
||||||
// repoName = uid;
|
|
||||||
_.gitSync.CreateNConnectToGit();
|
_.gitSync.CreateNConnectToGit();
|
||||||
cy.get("@gitRepoName").then((repName) => {
|
cy.get("@gitRepoName").then((repName) => {
|
||||||
repoName = repName;
|
repoName = repName;
|
||||||
_.gitSync.CreateGitBranch(repoName);
|
_.gitSync.CreateGitBranch(repoName);
|
||||||
});
|
});
|
||||||
|
|
||||||
// cy.createTestGithubRepo(repoName);
|
|
||||||
// cy.connectToGitRepo(repoName);
|
|
||||||
//});
|
|
||||||
});
|
});
|
||||||
it("1. Bug #13860 Theming is not getting applied on view mode when the app is connected to Git", function () {
|
it("1. Bug #13860 Theming is not getting applied on view mode when the app is connected to Git", function () {
|
||||||
_.appSettings.OpenAppSettings();
|
_.appSettings.OpenAppSettings();
|
||||||
|
|
|
||||||
|
|
@ -74,7 +74,7 @@ describe(
|
||||||
cy.openPropertyPane("imagewidget");
|
cy.openPropertyPane("imagewidget");
|
||||||
// Invalid image url
|
// Invalid image url
|
||||||
const invalidImageUrl =
|
const invalidImageUrl =
|
||||||
"http://host.docker.internal:5000/photo-not-exists.jpeg";
|
"http://host.docker.internal:4200/photo-not-exists.jpeg";
|
||||||
cy.testCodeMirror(invalidImageUrl);
|
cy.testCodeMirror(invalidImageUrl);
|
||||||
|
|
||||||
// Show off error message
|
// Show off error message
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -85,7 +85,7 @@
|
||||||
"readonly": "readonly",
|
"readonly": "readonly",
|
||||||
"authenticatedApiUrl": "https://fakeapi.com",
|
"authenticatedApiUrl": "https://fakeapi.com",
|
||||||
|
|
||||||
"GraphqlApiUrl_TED": "http://host.docker.internal:5000/graphql",
|
"GraphqlApiUrl_TED": "http://host.docker.internal:4200/graphql",
|
||||||
"GITEA_API_BASE_TED": "localhost",
|
"GITEA_API_BASE_TED": "localhost",
|
||||||
"GITEA_API_PORT_TED": "3001",
|
"GITEA_API_PORT_TED": "3001",
|
||||||
"GITEA_API_URL_TED": "git@host.docker.internal:Cypress"
|
"GITEA_API_URL_TED": "git@host.docker.internal:Cypress"
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"image": "http://host.docker.internal:8000/photo-1492529029602-33e53698f407.jpeg",
|
"image": "http://host.docker.internal:4200/photo-1492529029602-33e53698f407.jpeg",
|
||||||
"widgetName": "Image1",
|
"widgetName": "Image1",
|
||||||
"rightColumn": 64,
|
"rightColumn": 64,
|
||||||
"widgetId": "ah4cbb9o2e",
|
"widgetId": "ah4cbb9o2e",
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"image": "http://host.docker.internal:8000/photo-1503469432756-4aae2e18d881.jpeg",
|
"image": "http://host.docker.internal:4200/photo-1503469432756-4aae2e18d881.jpeg",
|
||||||
"widgetName": "Image1",
|
"widgetName": "Image1",
|
||||||
"rightColumn": 64,
|
"rightColumn": 64,
|
||||||
"widgetId": "ah4cbb9o2e",
|
"widgetId": "ah4cbb9o2e",
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
export class DataManager {
|
export class DataManager {
|
||||||
environments = ["Production", "Staging"];
|
environments = ["Production", "Staging"];
|
||||||
defaultEnviorment = this.environments[0];
|
defaultEnviorment = this.environments[0];
|
||||||
GITEA_API_BASE_TED = "localhost";
|
|
||||||
GITEA_API_PORT_TED = "3001";
|
GIT_API_BASE = "localhost:4200";
|
||||||
GITEA_API_URL_TED = "git@host.docker.internal:Cypress";
|
GIT_CLONE_URL = "git@host.docker.internal:Cypress";
|
||||||
|
|
||||||
dsValues: Record<string, any> = {
|
dsValues: Record<string, any> = {
|
||||||
Production: {
|
Production: {
|
||||||
|
|
@ -84,9 +84,9 @@ export class DataManager {
|
||||||
"http://host.docker.internal:5001/v1/whatdoestrumpthink/random",
|
"http://host.docker.internal:5001/v1/whatdoestrumpthink/random",
|
||||||
mockHttpCodeUrl: "http://host.docker.internal:5001/v1/mock-http-codes/",
|
mockHttpCodeUrl: "http://host.docker.internal:5001/v1/mock-http-codes/",
|
||||||
flowerImageUrl1:
|
flowerImageUrl1:
|
||||||
"http://host.docker.internal:5000/photo-1503469432756-4aae2e18d881.jpeg",
|
"http://host.docker.internal:4200/photo-1503469432756-4aae2e18d881.jpeg",
|
||||||
flowerImageUrl2:
|
flowerImageUrl2:
|
||||||
"http://host.docker.internal:5000/photo-1492529029602-33e53698f407.jpeg",
|
"http://host.docker.internal:4200/photo-1492529029602-33e53698f407.jpeg",
|
||||||
AirtableBaseForME: "appubHrVbovcudwN6",
|
AirtableBaseForME: "appubHrVbovcudwN6",
|
||||||
AirtableTableForME: "tblsFCQSskVFf7xNd",
|
AirtableTableForME: "tblsFCQSskVFf7xNd",
|
||||||
ApiUrlME: "http://host.docker.internal:5001/v1/production",
|
ApiUrlME: "http://host.docker.internal:5001/v1/production",
|
||||||
|
|
@ -105,7 +105,7 @@ export class DataManager {
|
||||||
readonly: "readonly",
|
readonly: "readonly",
|
||||||
authenticatedApiUrl: "https://fakeapi.com",
|
authenticatedApiUrl: "https://fakeapi.com",
|
||||||
|
|
||||||
GraphqlApiUrl_TED: "http://host.docker.internal:5000/graphql",
|
GraphqlApiUrl_TED: "http://host.docker.internal:4200/graphql",
|
||||||
|
|
||||||
twilio_username: "random-username",
|
twilio_username: "random-username",
|
||||||
twilio_password: "random-password",
|
twilio_password: "random-password",
|
||||||
|
|
@ -198,7 +198,7 @@ export class DataManager {
|
||||||
readonly: "readonly",
|
readonly: "readonly",
|
||||||
authenticatedApiUrl: "https://fakeapi.com",
|
authenticatedApiUrl: "https://fakeapi.com",
|
||||||
|
|
||||||
GraphqlApiUrl_TED: "http://host.docker.internal:5000/graphql",
|
GraphqlApiUrl_TED: "http://host.docker.internal:4200/graphql",
|
||||||
|
|
||||||
twilio_username: "random-username",
|
twilio_username: "random-username",
|
||||||
twilio_password: "random-password",
|
twilio_password: "random-password",
|
||||||
|
|
|
||||||
|
|
@ -96,10 +96,7 @@ export class GitSync {
|
||||||
public CreateTestGiteaRepo(repo: string, privateFlag = false) {
|
public CreateTestGiteaRepo(repo: string, privateFlag = false) {
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/org/Cypress/repos`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/repos`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
name: repo,
|
name: repo,
|
||||||
private: privateFlag,
|
private: privateFlag,
|
||||||
|
|
@ -152,7 +149,7 @@ export class GitSync {
|
||||||
);
|
);
|
||||||
this.agHelper.TypeText(
|
this.agHelper.TypeText(
|
||||||
this.remoteUrlInput,
|
this.remoteUrlInput,
|
||||||
`${this.dataManager.GITEA_API_URL_TED}/${repoName}.git`,
|
`${this.dataManager.GIT_CLONE_URL}/${repoName}.git`,
|
||||||
);
|
);
|
||||||
this.agHelper.GetNClick(this.gitConnectNextBtn);
|
this.agHelper.GetNClick(this.gitConnectNextBtn);
|
||||||
|
|
||||||
|
|
@ -164,10 +161,7 @@ export class GitSync {
|
||||||
// fetch the generated key and post to the github repo
|
// fetch the generated key and post to the github repo
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repoName}/keys`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/keys/${repoName}`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
title: "key_" + uid,
|
title: "key_" + uid,
|
||||||
key: generatedKey,
|
key: generatedKey,
|
||||||
|
|
@ -226,7 +220,7 @@ export class GitSync {
|
||||||
);
|
);
|
||||||
this.agHelper.TypeText(
|
this.agHelper.TypeText(
|
||||||
this.remoteUrlInput,
|
this.remoteUrlInput,
|
||||||
`${this.dataManager.GITEA_API_URL_TED}/${repoName}.git`,
|
`${this.dataManager.GIT_CLONE_URL}/${repoName}.git`,
|
||||||
);
|
);
|
||||||
this.agHelper.GetNClick(this.gitConnectNextBtn);
|
this.agHelper.GetNClick(this.gitConnectNextBtn);
|
||||||
|
|
||||||
|
|
@ -238,10 +232,7 @@ export class GitSync {
|
||||||
// fetch the generated key and post to the github repo
|
// fetch the generated key and post to the github repo
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repoName}/keys`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/keys/${repoName}`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
title: "key_" + uid,
|
title: "key_" + uid,
|
||||||
key: generatedKey,
|
key: generatedKey,
|
||||||
|
|
@ -281,30 +272,21 @@ export class GitSync {
|
||||||
DeleteTestGithubRepo(repo: any) {
|
DeleteTestGithubRepo(repo: any) {
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "DELETE",
|
method: "DELETE",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repo}`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/repos/${repo}`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
DeleteDeployKey(repo: any, id: number) {
|
DeleteDeployKey(repo: any, id: number) {
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "DELETE",
|
method: "DELETE",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repo}/keys/${id}`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/keys/${id}`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public CreateRemoteBranch(repo: string, branchName: string) {
|
public CreateRemoteBranch(repo: string, branchName: string) {
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repo}/branches`,
|
url: `${this.dataManager.GIT_API_BASE}/api/v1/git/repos/${repo}/branches`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
new_branch_name: branchName,
|
new_branch_name: branchName,
|
||||||
},
|
},
|
||||||
|
|
@ -469,99 +451,4 @@ export class GitSync {
|
||||||
}
|
}
|
||||||
this.CloseGitSyncModal();
|
this.CloseGitSyncModal();
|
||||||
}
|
}
|
||||||
//#region Unused methods
|
|
||||||
|
|
||||||
private AuthorizeLocalGitSSH(remoteUrl: string, assertConnect = true) {
|
|
||||||
let generatedKey;
|
|
||||||
this.OpenGitSyncModal();
|
|
||||||
this.agHelper.AssertAttribute(
|
|
||||||
this._gitRepoInput,
|
|
||||||
"placeholder",
|
|
||||||
"git@example.com:user/repository.git",
|
|
||||||
);
|
|
||||||
this.agHelper.TypeText(this._gitRepoInput, remoteUrl);
|
|
||||||
|
|
||||||
this.agHelper.ClickButton("Generate key");
|
|
||||||
|
|
||||||
cy.wait(`@generateKey`).then((result: any) => {
|
|
||||||
generatedKey = result.response.body.data.publicKey;
|
|
||||||
generatedKey = generatedKey.slice(0, generatedKey.length - 1);
|
|
||||||
let formdata = new FormData();
|
|
||||||
cy.log("generatedKey is " + generatedKey);
|
|
||||||
formdata.set("sshkey", generatedKey);
|
|
||||||
// fetch the generated key and post to the github repo
|
|
||||||
cy.request({
|
|
||||||
method: "POST",
|
|
||||||
url: `http://${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/v1/gitserver/addgitssh`,
|
|
||||||
//body: formdata,
|
|
||||||
body: {
|
|
||||||
sshkey: generatedKey,
|
|
||||||
},
|
|
||||||
form: true,
|
|
||||||
// headers: {
|
|
||||||
// "Content-Type": "application/x-www-form-urlencoded"
|
|
||||||
// },
|
|
||||||
}).then((response) => {
|
|
||||||
expect(response.status).to.equal(200);
|
|
||||||
});
|
|
||||||
this.agHelper.GetNClick(this._useDefaultConfig); //Uncheck the Use default configuration
|
|
||||||
this.agHelper.TypeText(
|
|
||||||
this._gitConfigNameInput,
|
|
||||||
"testusername",
|
|
||||||
//`{selectall}${testUsername}`,
|
|
||||||
);
|
|
||||||
this.agHelper.TypeText(this._gitConfigEmailInput, "test@test.com");
|
|
||||||
this.agHelper.ClickButton("CONNECT");
|
|
||||||
|
|
||||||
if (assertConnect) {
|
|
||||||
//this.ReplaceForGit("cypress/fixtures/Bugs/GitConnectResponse.json", remoteUrl);
|
|
||||||
//cy.get('@connectGitLocalRepo').its('response.statusCode').should('equal', 200);
|
|
||||||
// cy.intercept("POST", "/api/v1/git/connect/app/*", {
|
|
||||||
// fixture: "/Bugs/GitConnectResponse.json",
|
|
||||||
// });
|
|
||||||
this.assertHelper.AssertNetworkStatus("@connectGitLocalRepo");
|
|
||||||
}
|
|
||||||
this.CloseGitSyncModal();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
private ReplaceForGit(fixtureFile: any, remoteUrl: string) {
|
|
||||||
let currentAppId, currentURL;
|
|
||||||
cy.readFile(
|
|
||||||
fixtureFile,
|
|
||||||
// (err: string) => {
|
|
||||||
// if (err) {
|
|
||||||
// return console.error(err);
|
|
||||||
// }}
|
|
||||||
).then((data) => {
|
|
||||||
cy.url().then((url) => {
|
|
||||||
currentURL = url;
|
|
||||||
const myRegexp = /page-1(.*)/;
|
|
||||||
const match = myRegexp.exec(currentURL);
|
|
||||||
cy.log(currentURL + "currentURL from intercept is");
|
|
||||||
currentAppId = match ? match[1].split("/")[1] : null;
|
|
||||||
data.data.id = currentAppId;
|
|
||||||
data.data.gitApplicationMetadata.defaultApplicationId = currentAppId;
|
|
||||||
data.data.gitApplicationMetadata.remoteUrl = remoteUrl;
|
|
||||||
cy.writeFile(fixtureFile, JSON.stringify(data));
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
private CreateLocalGithubRepo(repo: string) {
|
|
||||||
let remoteUrl = "";
|
|
||||||
cy.request({
|
|
||||||
method: "GET",
|
|
||||||
url:
|
|
||||||
`http://${this.dataManager.GITEA_API_BASE_TED}:${this.dataManager.GITEA_API_PORT_TED}/v1/gitserver/addrepo?reponame=` +
|
|
||||||
repo,
|
|
||||||
}).then((response) => {
|
|
||||||
remoteUrl = JSON.stringify(response.body).replace(/['"]+/g, "");
|
|
||||||
expect(response.status).to.equal(200);
|
|
||||||
//cy.log("remoteUrl is"+ remoteUrl);
|
|
||||||
cy.wrap(remoteUrl).as("remoteUrl");
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
//#endregion
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,16 +7,14 @@ require("cy-verify-downloads").addCustomCommand();
|
||||||
require("cypress-file-upload");
|
require("cypress-file-upload");
|
||||||
import gitSyncLocators from "../locators/gitSyncLocators";
|
import gitSyncLocators from "../locators/gitSyncLocators";
|
||||||
import homePage from "../locators/HomePage";
|
import homePage from "../locators/HomePage";
|
||||||
import { ObjectsRegistry } from "../support/Objects/Registry";
|
import { ObjectsRegistry } from "./Objects/Registry";
|
||||||
|
|
||||||
let gitSync = ObjectsRegistry.GitSync,
|
const gitSync = ObjectsRegistry.GitSync;
|
||||||
agHelper = ObjectsRegistry.AggregateHelper,
|
const agHelper = ObjectsRegistry.AggregateHelper;
|
||||||
dataManager = ObjectsRegistry.DataManager,
|
const dataManager = ObjectsRegistry.DataManager;
|
||||||
assertHelper = ObjectsRegistry.AssertHelper,
|
const assertHelper = ObjectsRegistry.AssertHelper;
|
||||||
homePageTS = ObjectsRegistry.HomePage;
|
|
||||||
|
|
||||||
const commonLocators = require("../locators/commonlocators.json");
|
const commonLocators = require("../locators/commonlocators.json");
|
||||||
const GITHUB_API_BASE = "https://api.github.com";
|
|
||||||
|
|
||||||
Cypress.Commands.add("revokeAccessGit", (appName) => {
|
Cypress.Commands.add("revokeAccessGit", (appName) => {
|
||||||
cy.xpath("//span[text()= `${appName}`]").parent().next().click();
|
cy.xpath("//span[text()= `${appName}`]").parent().next().click();
|
||||||
|
|
@ -39,98 +37,6 @@ Cypress.Commands.add("revokeAccessGit", (appName) => {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
Cypress.Commands.add(
|
|
||||||
"connectToGitRepo",
|
|
||||||
(repo, shouldCommit = true, assertConnectFailure) => {
|
|
||||||
const testEmail = "test@test.com";
|
|
||||||
const testUsername = "testusername";
|
|
||||||
const owner = Cypress.env("TEST_GITHUB_USER_NAME");
|
|
||||||
|
|
||||||
let generatedKey;
|
|
||||||
// open gitSync modal
|
|
||||||
cy.get(homePage.deployPopupOptionTrigger).click();
|
|
||||||
cy.get(homePage.connectToGitBtn).click({ force: true });
|
|
||||||
|
|
||||||
// cy.intercept(
|
|
||||||
// {
|
|
||||||
// url: "api/v1/git/connect/app/*",
|
|
||||||
// hostname: window.location.host,
|
|
||||||
// },
|
|
||||||
// (req) => {
|
|
||||||
// req.headers["origin"] = "Cypress";
|
|
||||||
// },
|
|
||||||
// );
|
|
||||||
|
|
||||||
cy.intercept("POST", "/api/v1/applications/ssh-keypair/*").as(
|
|
||||||
`generateKey-${repo}`,
|
|
||||||
);
|
|
||||||
|
|
||||||
cy.get(gitSyncLocators.gitRepoInput).type(
|
|
||||||
`git@github.com:${owner}/${repo}.git`,
|
|
||||||
);
|
|
||||||
cy.get(gitSyncLocators.generateDeployKeyBtn).click();
|
|
||||||
cy.wait(`@generateKey-${repo}`).then((result) => {
|
|
||||||
generatedKey = result.response.body.data.publicKey;
|
|
||||||
generatedKey = generatedKey.slice(0, generatedKey.length - 1);
|
|
||||||
// fetch the generated key and post to the github repo
|
|
||||||
cy.request({
|
|
||||||
method: "POST",
|
|
||||||
url: `${GITHUB_API_BASE}/repos/${Cypress.env(
|
|
||||||
"TEST_GITHUB_USER_NAME",
|
|
||||||
)}/${repo}/keys`,
|
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
|
||||||
title: "key0",
|
|
||||||
key: generatedKey,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
cy.get(gitSyncLocators.useGlobalGitConfig).click({ force: true });
|
|
||||||
|
|
||||||
cy.get(gitSyncLocators.gitConfigNameInput).type(
|
|
||||||
`{selectall}${testUsername}`,
|
|
||||||
);
|
|
||||||
cy.get(gitSyncLocators.gitConfigEmailInput).type(
|
|
||||||
`{selectall}${testEmail}`,
|
|
||||||
);
|
|
||||||
// click on the connect button and verify
|
|
||||||
cy.get(gitSyncLocators.connectSubmitBtn).click();
|
|
||||||
|
|
||||||
if (!assertConnectFailure) {
|
|
||||||
// check for connect success
|
|
||||||
cy.wait("@connectGitLocalRepo").should(
|
|
||||||
"have.nested.property",
|
|
||||||
"response.body.responseMeta.status",
|
|
||||||
200,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// click commit button
|
|
||||||
/* if (shouldCommit) {
|
|
||||||
cy.get(gitSyncLocators.commitCommentInput).type("Initial Commit");
|
|
||||||
cy.get(gitSyncLocators.commitButton).click();
|
|
||||||
// check for commit success
|
|
||||||
cy.wait("@commit").should(
|
|
||||||
"have.nested.property",
|
|
||||||
"response.body.responseMeta.status",
|
|
||||||
201,
|
|
||||||
);
|
|
||||||
|
|
||||||
cy.get(gitSyncLocators.closeGitSyncModal).click();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
cy.wait("@connectGitLocalRepo").then((interception) => {
|
|
||||||
const status = interception.response.body.responseMeta.status;
|
|
||||||
expect(status).to.be.gte(400);
|
|
||||||
});
|
|
||||||
} */
|
|
||||||
cy.get(gitSyncLocators.closeGitSyncModal).click();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
);
|
|
||||||
|
|
||||||
Cypress.Commands.add("latestDeployPreview", () => {
|
Cypress.Commands.add("latestDeployPreview", () => {
|
||||||
cy.intercept("POST", "/api/v1/applications/publish/*").as("publishApp");
|
cy.intercept("POST", "/api/v1/applications/publish/*").as("publishApp");
|
||||||
// Wait before publish
|
// Wait before publish
|
||||||
|
|
@ -187,65 +93,6 @@ Cypress.Commands.add("switchGitBranch", (branch, expectError) => {
|
||||||
AppSidebar.assertVisible(Cypress.config().pageLoadTimeout);
|
AppSidebar.assertVisible(Cypress.config().pageLoadTimeout);
|
||||||
});
|
});
|
||||||
|
|
||||||
Cypress.Commands.add("createTestGithubRepo", (repo, privateFlag = false) => {
|
|
||||||
cy.request({
|
|
||||||
method: "POST",
|
|
||||||
url: `${GITHUB_API_BASE}/user/repos`,
|
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
|
||||||
name: repo,
|
|
||||||
private: privateFlag,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
Cypress.Commands.add("mergeViaGithubApi", ({ base, head, repo }) => {
|
|
||||||
const owner = Cypress.env("TEST_GITHUB_USER_NAME");
|
|
||||||
cy.request({
|
|
||||||
method: "POST",
|
|
||||||
url: `${GITHUB_API_BASE}/repos/${owner}/${repo}/merges`,
|
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
|
||||||
base,
|
|
||||||
head,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
Cypress.Commands.add("deleteTestGithubRepo", (repo) => {
|
|
||||||
cy.request({
|
|
||||||
method: "DELETE",
|
|
||||||
url: `${GITHUB_API_BASE}/repos/${Cypress.env(
|
|
||||||
"TEST_GITHUB_USER_NAME",
|
|
||||||
)}/${repo}`,
|
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
Cypress.Commands.add(
|
|
||||||
"renameBranchViaGithubApi",
|
|
||||||
(repo, currentName, newName) => {
|
|
||||||
cy.request({
|
|
||||||
method: "POST",
|
|
||||||
url: `${GITHUB_API_BASE}/repos/${Cypress.env(
|
|
||||||
"TEST_GITHUB_USER_NAME",
|
|
||||||
)}/${repo}/branches/${currentName}/rename`,
|
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
|
||||||
new_name: newName,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
);
|
|
||||||
|
|
||||||
Cypress.Commands.add("commitAndPush", (assertFailure) => {
|
Cypress.Commands.add("commitAndPush", (assertFailure) => {
|
||||||
cy.get(homePage.publishButton).click();
|
cy.get(homePage.publishButton).click();
|
||||||
agHelper.AssertElementExist(gitSync._bottomBarPull);
|
agHelper.AssertElementExist(gitSync._bottomBarPull);
|
||||||
|
|
@ -270,29 +117,6 @@ Cypress.Commands.add("commitAndPush", (assertFailure) => {
|
||||||
cy.get(gitSyncLocators.closeGitSyncModal).click();
|
cy.get(gitSyncLocators.closeGitSyncModal).click();
|
||||||
});
|
});
|
||||||
|
|
||||||
// todo rishabh s: refactor
|
|
||||||
Cypress.Commands.add(
|
|
||||||
"createAppAndConnectGit",
|
|
||||||
(appname, shouldConnect = true, assertConnectFailure) => {
|
|
||||||
cy.get(homePage.homeIcon).click({ force: true });
|
|
||||||
cy.get(homePage.createNew).first().click({ force: true });
|
|
||||||
cy.wait("@createNewApplication").should(
|
|
||||||
"have.nested.property",
|
|
||||||
"response.body.responseMeta.status",
|
|
||||||
201,
|
|
||||||
);
|
|
||||||
cy.get("#loading").should("not.exist");
|
|
||||||
// eslint-disable-next-line cypress/no-unnecessary-waiting
|
|
||||||
cy.wait(2000);
|
|
||||||
|
|
||||||
homePageTS.RenameApplication(appname);
|
|
||||||
|
|
||||||
cy.createTestGithubRepo(appname, true);
|
|
||||||
cy.connectToGitRepo(appname, false, assertConnectFailure);
|
|
||||||
cy.get(gitSyncLocators.closeGitSyncModal).click({ force: true });
|
|
||||||
},
|
|
||||||
);
|
|
||||||
|
|
||||||
Cypress.Commands.add("merge", (destinationBranch) => {
|
Cypress.Commands.add("merge", (destinationBranch) => {
|
||||||
agHelper.AssertElementExist(gitSync._bottomBarPull);
|
agHelper.AssertElementExist(gitSync._bottomBarPull);
|
||||||
|
|
||||||
|
|
@ -342,53 +166,22 @@ Cypress.Commands.add(
|
||||||
(repo, assertConnectFailure, failureMessage) => {
|
(repo, assertConnectFailure, failureMessage) => {
|
||||||
const testEmail = "test@test.com";
|
const testEmail = "test@test.com";
|
||||||
const testUsername = "testusername";
|
const testUsername = "testusername";
|
||||||
const owner = Cypress.env("TEST_GITHUB_USER_NAME");
|
|
||||||
|
|
||||||
let generatedKey;
|
|
||||||
// cy.intercept(
|
|
||||||
// {
|
|
||||||
// url: "api/v1/git/connect/app/*",
|
|
||||||
// hostname: window.location.host,
|
|
||||||
// },
|
|
||||||
// (req) => {
|
|
||||||
// req.headers["origin"] = "Cypress";
|
|
||||||
// },
|
|
||||||
// );
|
|
||||||
cy.intercept("GET", "api/v1/git/import/keys?keyType=ECDSA").as(
|
cy.intercept("GET", "api/v1/git/import/keys?keyType=ECDSA").as(
|
||||||
`generateKey-${repo}`,
|
`generateKey-${repo}`,
|
||||||
);
|
);
|
||||||
cy.get(gitSyncLocators.gitRepoInput).type(
|
cy.get(gitSyncLocators.gitRepoInput).type(
|
||||||
//`git@github.com:${owner}/${repo}.git`,
|
`${dataManager.GIT_CLONE_URL}/${repo}.git`,
|
||||||
`${dataManager.GITEA_API_URL_TED}/${repo}.git`,
|
|
||||||
);
|
);
|
||||||
cy.get(gitSyncLocators.generateDeployKeyBtn).click();
|
cy.get(gitSyncLocators.generateDeployKeyBtn).click();
|
||||||
cy.wait(`@generateKey-${repo}`).then((result) => {
|
cy.wait(`@generateKey-${repo}`).then((result) => {
|
||||||
generatedKey = result.response.body.data.publicKey;
|
const key = result.response.body.data.publicKey.trimEnd();
|
||||||
generatedKey = generatedKey.slice(0, generatedKey.length - 1);
|
|
||||||
// fetch the generated key and post to the github repo
|
|
||||||
// cy.request({
|
|
||||||
// method: "POST",
|
|
||||||
// url: `${GITHUB_API_BASE}/repos/${Cypress.env(
|
|
||||||
// "TEST_GITHUB_USER_NAME",
|
|
||||||
// )}/${repo}/keys`,
|
|
||||||
// headers: {
|
|
||||||
// Authorization: `token ${Cypress.env("GITHUB_PERSONAL_ACCESS_TOKEN")}`,
|
|
||||||
// },
|
|
||||||
// body: {
|
|
||||||
// title: "key0",
|
|
||||||
// key: generatedKey,
|
|
||||||
// },
|
|
||||||
// });
|
|
||||||
|
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${dataManager.GITEA_API_BASE_TED}:${dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repo}/keys`,
|
url: `${dataManager.GIT_API_BASE}/api/v1/git/keys/${repo}`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
title: "key1",
|
title: "key1",
|
||||||
key: generatedKey,
|
key,
|
||||||
read_only: false,
|
read_only: false,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
@ -472,34 +265,13 @@ Cypress.Commands.add(
|
||||||
if (generateKey) {
|
if (generateKey) {
|
||||||
if (protocol === "ECDSA") {
|
if (protocol === "ECDSA") {
|
||||||
cy.wait(`@generateKey-${repo}`).then((result) => {
|
cy.wait(`@generateKey-${repo}`).then((result) => {
|
||||||
generatedKey = result.response.body.data.publicKey;
|
const key = result.response.body.data.publicKey.trimEnd();
|
||||||
generatedKey = generatedKey.slice(0, generatedKey.length - 1);
|
|
||||||
// fetch the generated key and post to the github repo
|
|
||||||
// cy.request({
|
|
||||||
// method: "POST",
|
|
||||||
// url: `${GITHUB_API_BASE}/repos/${Cypress.env(
|
|
||||||
// "TEST_GITHUB_USER_NAME",
|
|
||||||
// )}/${repo}/keys`,
|
|
||||||
// headers: {
|
|
||||||
// Authorization: `token ${Cypress.env(
|
|
||||||
// "GITHUB_PERSONAL_ACCESS_TOKEN",
|
|
||||||
// )}`,
|
|
||||||
// },
|
|
||||||
// body: {
|
|
||||||
// title: "key0",
|
|
||||||
// key: generatedKey,
|
|
||||||
// },
|
|
||||||
// });
|
|
||||||
|
|
||||||
cy.request({
|
cy.request({
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: `${dataManager.GITEA_API_BASE_TED}:${dataManager.GITEA_API_PORT_TED}/api/v1/repos/Cypress/${repo}/keys`,
|
url: `${dataManager.GIT_API_BASE}/api/v1/repos/Cypress/${repo}/keys`,
|
||||||
headers: {
|
|
||||||
Authorization: `token ${Cypress.env("GITEA_TOKEN")}`,
|
|
||||||
},
|
|
||||||
body: {
|
body: {
|
||||||
title: "key1",
|
title: "key1",
|
||||||
key: generatedKey,
|
key,
|
||||||
read_only: false,
|
read_only: false,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user