74 lines
2.5 KiB
JavaScript
Raw Normal View History

/*
* Copyright 2021 Collate
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { deleteCreatedService, editOwnerforCreatedService, goToAddNewServicePage, testServiceCreationAndIngestion, updateDescriptionForIngestedTables, uuid } from '../../common/common';
import { API_SERVICE, SERVICE_TYPE } from '../../constants/constants';
const serviceType = 'Snowflake';
const serviceName = `${serviceType}-ct-test-${uuid()}`;
const tableName = 'CUSTOMER';
const schema = 'TPCH_SF1000';
const description = `This is ${serviceName} description`;
describe('Snowflake Ingestion', () => {
beforeEach(() => {
cy.login();
});
it('add and ingest data', { defaultCommandTimeout: 8000 }, () => {
goToAddNewServicePage(SERVICE_TYPE.Database);
const connectionInput = () => {
cy.get('#root_username').type(Cypress.env('snowflakeUsername'));
cy.get('#root_password').type(Cypress.env('snowflakePassword'));
cy.get('#root_account').type(Cypress.env('snowflakeAccount'));
cy.get('#root_database').type(Cypress.env('snowflakeDatabase'));
cy.get('#root_warehouse').type(Cypress.env('snowflakeWarehouse'));
};
const addIngestionInput = () => {
cy.get('[data-testid="schema-filter-pattern-checkbox"]').check();
cy.get('[data-testid="filter-pattern-includes-schema"]')
.should('be.visible')
.type(schema);
};
testServiceCreationAndIngestion(
serviceType,
connectionInput,
addIngestionInput,
serviceName
);
});
it('Update table description and verify description after re-run', () => {
updateDescriptionForIngestedTables(
serviceName,
tableName,
description,
SERVICE_TYPE.Database,
'tables'
);
});
it('Edit and validate owner', () => {
editOwnerforCreatedService(
SERVICE_TYPE.Database,
serviceName,
API_SERVICE.databaseServices
);
});
it('delete created service', () => {
deleteCreatedService(SERVICE_TYPE.Database, serviceName, API_SERVICE.databaseServices);
});
});