mirror of https://github.com/Budibase/budibase.git
17 changed files with 290 additions and 73 deletions
@ -0,0 +1,57 @@ |
|||
name: Budibase Release |
|||
|
|||
on: |
|||
workflow_dispatch: |
|||
|
|||
env: |
|||
POSTHOG_TOKEN: ${{ secrets.POSTHOG_TOKEN }} |
|||
INTERCOM_TOKEN: ${{ secrets.INTERCOM_TOKEN }} |
|||
POSTHOG_URL: ${{ secrets.POSTHOG_URL }} |
|||
SENTRY_DSN: ${{ secrets.SENTRY_DSN }} |
|||
|
|||
jobs: |
|||
release: |
|||
runs-on: ubuntu-latest |
|||
|
|||
steps: |
|||
- uses: actions/checkout@v2 |
|||
- uses: actions/setup-node@v1 |
|||
with: |
|||
node-version: 12.x |
|||
- run: yarn |
|||
- run: yarn bootstrap |
|||
|
|||
- name: Configure AWS Credentials |
|||
uses: aws-actions/configure-aws-credentials@v1 |
|||
with: |
|||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} |
|||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} |
|||
aws-region: eu-west-1 |
|||
|
|||
- name: 'Get Previous tag' |
|||
id: previoustag |
|||
uses: "WyriHaximus/github-action-get-previous-tag@v1" |
|||
|
|||
- name: Build/release Docker images (Self Host) |
|||
if: ${{ github.event.inputs.release_self_host == 'Y' }} |
|||
run: | |
|||
docker login -u $DOCKER_USER -p $DOCKER_PASSWORD |
|||
yarn build |
|||
yarn build:docker:production |
|||
env: |
|||
DOCKER_USER: ${{ secrets.DOCKER_USERNAME }} |
|||
DOCKER_PASSWORD: ${{ secrets.DOCKER_API_KEY }} |
|||
BUDIBASE_RELEASE_VERSION: ${{ steps.previoustag.outputs.tag }} |
|||
|
|||
- uses: azure/setup-helm@v1 |
|||
id: install |
|||
|
|||
# So, we need to inject the values into this |
|||
- run: yarn release:helm |
|||
|
|||
- name: Run chart-releaser |
|||
uses: helm/chart-releaser-action@v1.1.0 |
|||
with: |
|||
charts_dir: docs |
|||
env: |
|||
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" |
|||
@ -0,0 +1,41 @@ |
|||
context("Add Multi-Option Datatype", () => { |
|||
before(() => { |
|||
cy.login() |
|||
cy.createTestApp() |
|||
}) |
|||
|
|||
it("should create a new table, with data", () => { |
|||
cy.createTable("Multi Data") |
|||
cy.addColumn("Multi Data", "Test Data", "Multi-select", "1\n2\n3\n4\n5") |
|||
cy.addRowMultiValue(["1", "2", "3", "4", "5"]) |
|||
}) |
|||
|
|||
it ("should add form with multi select picker, containing 5 options", () => { |
|||
cy.navigateToFrontend() |
|||
cy.wait(500) |
|||
// Add data provider
|
|||
cy.get(`[data-cy="category-Data Provider"]`).click() |
|||
cy.get('[data-cy="dataSource-prop-control"]').click() |
|||
cy.get(".dropdown").contains("Multi Data").click() |
|||
cy.wait(500) |
|||
// Add Form with schema to match table
|
|||
cy.addComponent("Form", "Form") |
|||
cy.get('[data-cy="dataSource-prop-control"').click() |
|||
cy.get(".dropdown").contains("Multi Data").click() |
|||
cy.wait(500) |
|||
// Add multi-select picker to form
|
|||
cy.addComponent("Form", "Multi-select Picker").then((componentId) => { |
|||
cy.get('[data-cy="field-prop-control"]').type("Test Data").type('{enter}') |
|||
cy.wait(1000) |
|||
cy.getComponent(componentId).contains("Choose some options").click() |
|||
// Check picker has 5 items
|
|||
cy.getComponent(componentId).find('li').should('have.length', 5) |
|||
// Select all items
|
|||
for (let i = 1; i < 6; i++) { |
|||
cy.getComponent(componentId).find('li').contains(i).click() |
|||
} |
|||
// Check items have been selected
|
|||
cy.getComponent(componentId).find('.spectrum-Picker-label').contains("(5)") |
|||
}) |
|||
}) |
|||
}) |
|||
@ -0,0 +1,35 @@ |
|||
context("Add Radio Buttons", () => { |
|||
before(() => { |
|||
cy.login() |
|||
cy.createTestApp() |
|||
}) |
|||
|
|||
it("should add Radio Buttons options picker on form, add data, and confirm", () => { |
|||
cy.navigateToFrontend() |
|||
cy.addComponent("Form", "Form") |
|||
cy.addComponent("Form", "Options Picker").then((componentId) => { |
|||
// Provide field setting
|
|||
cy.get(`[data-cy="field-prop-control"]`).type("1") |
|||
// Open dropdown and select Radio buttons
|
|||
cy.get(`[data-cy="optionsType-prop-control"]`).click().then(() => { |
|||
cy.get('.spectrum-Popover').contains('Radio buttons') |
|||
.wait(500) |
|||
.click() |
|||
}) |
|||
const radioButtonsTotal = 3 |
|||
// Add values and confirm total
|
|||
addRadioButtonData(radioButtonsTotal) |
|||
cy.getComponent(componentId).find('[type="radio"]') |
|||
.should('have.length', radioButtonsTotal) |
|||
}) |
|||
}) |
|||
|
|||
const addRadioButtonData = (totalRadioButtons) => { |
|||
cy.get(`[data-cy="optionsSource-prop-control"]`).click().then(() => { |
|||
cy.get('.spectrum-Popover').contains('Custom') |
|||
.wait(500) |
|||
.click() |
|||
}) |
|||
cy.addCustomSourceOptions(totalRadioButtons) |
|||
} |
|||
}) |
|||
@ -0,0 +1,61 @@ |
|||
context("Custom Theming Properties", () => { |
|||
before(() => { |
|||
cy.login() |
|||
cy.createTestApp() |
|||
cy.navigateToFrontend() |
|||
}) |
|||
|
|||
// Default Values
|
|||
// Button roundness = Large
|
|||
// Primary colour = Blue 600
|
|||
// Primary colour (hover) = Blue 500
|
|||
// Navigation bar background colour = Gray 100
|
|||
// Navigation bar text colour = Gray 800
|
|||
it("should reset the color property values", () => { |
|||
// Open Theme modal and change colours
|
|||
cy.get(".spectrum-ActionButton-label").contains("Theme").click() |
|||
cy.get(".spectrum-Picker").contains("Large").click() |
|||
.parents() |
|||
.get(".spectrum-Menu-itemLabel").contains("None").click() |
|||
changeThemeColors() |
|||
// Reset colours
|
|||
cy.get(".spectrum-Button-label").contains("Reset").click({force: true}) |
|||
// Check values have reset
|
|||
checkThemeColorDefaults() |
|||
}) |
|||
|
|||
const changeThemeColors = () => { |
|||
// Changes the theme colours
|
|||
cy.get(".spectrum-FieldLabel").contains("Primary color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.find('[title="Red 400"]').click() |
|||
cy.get(".spectrum-FieldLabel").contains("Primary color (hover)") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.find('[title="Orange 400"]').click() |
|||
cy.get(".spectrum-FieldLabel").contains("Navigation bar background color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.find('[title="Yellow 400"]').click() |
|||
cy.get(".spectrum-FieldLabel").contains("Navigation bar text color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.find('[title="Green 400"]').click() |
|||
} |
|||
|
|||
const checkThemeColorDefaults = () => { |
|||
cy.get(".spectrum-FieldLabel").contains("Primary color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.get('[title="Blue 600"]').children().find('[aria-label="Checkmark"]') |
|||
cy.get(".spectrum-Dialog-grid").click() |
|||
cy.get(".spectrum-FieldLabel").contains("Primary color (hover)") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.get('[title="Blue 500"]').children().find('[aria-label="Checkmark"]') |
|||
cy.get(".spectrum-Dialog-grid").click() |
|||
cy.get(".spectrum-FieldLabel").contains("Navigation bar background color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.get('[title="Gray 100"]').children().find('[aria-label="Checkmark"]') |
|||
cy.get(".spectrum-Dialog-grid").click() |
|||
cy.get(".spectrum-FieldLabel").contains("Navigation bar text color") |
|||
.parent().find(".container.svelte-z3cm5a").click() |
|||
.get('[title="Gray 800"]').children().find('[aria-label="Checkmark"]') |
|||
} |
|||
|
|||
}) |
|||
Loading…
Reference in new issue