diff --git a/cypress/integration/graphql/project_operations_spec.js b/cypress/integration/graphql/project_operations_spec.js
index 54ab327233..49ae751654 100644
--- a/cypress/integration/graphql/project_operations_spec.js
+++ b/cypress/integration/graphql/project_operations_spec.js
@@ -16,11 +16,14 @@ describe('GraphQL Project operations', () => {
cy.contains('Ok & Save Project', {timeout: 3000}).click()
cy.url({timeout: 12000}).should('contain', '#/nc/')
});
+
it('Stop Project', () => {
+ cy.wait(100000)
// cy.get('.nc-graphql-project-row .mdi-stop-circle-outline', {timeout: 10000}).last().trigger('onmouseover').trigger('mouseenter')
cy.get('.nc-graphql-project-row .mdi-stop-circle-outline', {timeout: 10000}).last().invoke('show').click();
cy.contains('Submit').closest('button').click();
});
+
it('Start Project', () => {
cy.get('.nc-graphql-project-row .mdi-play-circle-outline', {timeout: 10000}).last().invoke('show').click();
cy.contains('Submit').closest('button').click();
diff --git a/cypress/integration/rest/api_operations_spec.js b/cypress/integration/rest/api_operations_spec.js
index 5e2a4afe21..af84ee632c 100644
--- a/cypress/integration/rest/api_operations_spec.js
+++ b/cypress/integration/rest/api_operations_spec.js
@@ -6,13 +6,69 @@ describe('Rest api - CRUD/Filter', () => {
// open country table
cy.openTableTab('Country');
+ // cy.intercept({
+ // method: "GET",
+ // url: "/nc/**/api/v1/Country**",
+ // hostname: 'localhost',
+ // port: 8080
+ // }).as("dataGetFirst");
+ // cy.wait("@dataGetFirst");
+ // todo: wait until api call completes
+ cy.wait(2000)
})
- // create a new random table
+ // check pagination
it('Check country table - ', () => {
- cy.get('.nc-pagination').should('exist')
+ cy.get('.nc-pagination').should('exist');
+ cy.get('.nc-pagination .v-pagination > li:last-child').click()
+ cy.get('.nc-pagination .v-pagination > li:contains(2)').should('have.class', 'v-pagination__item--active')
});
+ // create new row
+ it('Create new row', () => {
+ cy.get('.nc-add-new-row-btn').click();
+
+ cy.get('#data-table-form-Country > input').first().type('Test Country');
+
+ cy.contains('Save Row').filter('button').click()
+
+ // todo: verify
+ })
+
+ // Test sort
+ it('Add sort option', () => {
+ cy.get('.nc-sort-menu-btn').click()
+ cy.contains('Add Sort Option').click();
+ cy.get('.nc-sort-field-select div').first().click()
+ cy.get('.menuable__content__active .v-list-item:contains(Country)').click()
+ cy.get('.nc-sort-dir-select div').first().click()
+ cy.get('.menuable__content__active .v-list-item:contains("Z -> A")').click()
+ cy.contains('Zambia').should('exist')
+ })
+
+
+ // Test fields
+ it('Add fields options', () => {
+ cy.get('.nc-fields-menu-btn').click()
+ cy.get('.menuable__content__active .v-list-item label:contains(LastUpdate)').click()
+ cy.get('th:contains(LastUpdate)').should('not.exist')
+ })
+
+
+ // Test filter
+ it('Add filter options', () => {
+ cy.get('.nc-filter-menu-btn').click()
+ cy.contains('Add Filter').click();
+
+ cy.get('.nc-filter-field-select').last().click();
+ cy.get('.menuable__content__active .v-list-item:contains(Country)').click()
+ cy.get('.nc-filter-operation-select').last().click();
+ cy.get('.menuable__content__active .v-list-item:contains("is equal")').click()
+ cy.get('.nc-filter-value-select input:text').last().type('India');
+
+ cy.get('td:contains(India)').should('exist')
+
+ })
})
diff --git a/cypress/integration/rest/table_operations_spec.js b/cypress/integration/rest/table_operations_spec.js
index bf34af5fed..a81492d474 100644
--- a/cypress/integration/rest/table_operations_spec.js
+++ b/cypress/integration/rest/table_operations_spec.js
@@ -115,4 +115,6 @@ describe('Rest api - Table', () => {
});
+
+
})
diff --git a/docker-compose-cypress.yml b/docker-compose-cypress.yml
index 8cd1891e8e..93f9e6511c 100644
--- a/docker-compose-cypress.yml
+++ b/docker-compose-cypress.yml
@@ -12,6 +12,8 @@ services:
xc-cypress-nocodb:
network_mode: host
image: node:14-alpine
+ environment:
+ - EE=true
volumes:
- ./packages/nocodb:/home/app
command:
@@ -28,6 +30,7 @@ services:
environment:
- HOST=0.0.0.0
- PORT=3000
+ - EE=true
volumes:
- ./packages/nc-gui:/home/app
- ./packages/nc-lib-gui:/home/nc-lib-gui
diff --git a/packages/nc-gui/components/project/spreadsheet/components/columnFilter.vue b/packages/nc-gui/components/project/spreadsheet/components/columnFilter.vue
index 535076dad3..0d4b28c97a 100644
--- a/packages/nc-gui/components/project/spreadsheet/components/columnFilter.vue
+++ b/packages/nc-gui/components/project/spreadsheet/components/columnFilter.vue
@@ -26,7 +26,7 @@
v-else
:key="i + '_4'"
v-model="filter.logicOp"
- class="flex-shrink-1 flex-grow-0 elevation-0 caption"
+ class="flex-shrink-1 flex-grow-0 elevation-0 caption "
:items="['and' ,'or']"
solo
flat
@@ -43,7 +43,7 @@
v-if="filter.readOnly"
:key="i + '_5'"
v-model="filter.field"
- class="caption"
+ class="caption "
placeholder="Field"
solo
flat
@@ -60,7 +60,7 @@
v-else
:key="i + '_6'"
v-model="filter.field"
- class="caption"
+ class="caption nc-filter-field-select"
:items="fieldList"
placeholder="Field"
solo
@@ -77,7 +77,7 @@
diff --git a/packages/nc-gui/components/project/spreadsheet/components/columnFilterMenu.vue b/packages/nc-gui/components/project/spreadsheet/components/columnFilterMenu.vue
index 28ee726029..254bd98fa6 100644
--- a/packages/nc-gui/components/project/spreadsheet/components/columnFilterMenu.vue
+++ b/packages/nc-gui/components/project/spreadsheet/components/columnFilterMenu.vue
@@ -8,6 +8,7 @@
overlap
>