Skip to content

refactor: Implement CollabTextNode as a single yjs map #1

refactor: Implement CollabTextNode as a single yjs map

refactor: Implement CollabTextNode as a single yjs map #1

Workflow file for this run

name: Lexical Tests
on:
push:
branches:
- main
paths-ignore:
- 'packages/lexical-website/**'
pull_request:
types: [opened, synchronize, reopened]
paths-ignore:
- 'packages/lexical-website/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
integrity:
if: github.repository_owner == 'facebook'
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.11.0]
env:
CI: true
GITHUB_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
~/.cache/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- run: npm run ci-check
- run: npm run build
- run: npm run build-www
unit:
if: github.repository_owner == 'facebook'
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.18.0]
env:
CI: true
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
~/.cache/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- run: npm run test-unit
e2e-mac:
if: github.repository_owner == 'facebook'
runs-on: macos-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox', 'webkit']
editor-mode: ['rich-text', 'plain-text']
events-mode: ['legacy-events', 'modern-events']
env:
CI: true
E2E_EDITOR_MODE: ${{ matrix.editor-mode }}
E2E_EVENTS_MODE: ${{ matrix.events-mode }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/Library/Caches/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-linux:
if: github.repository_owner == 'facebook'
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox']
editor-mode: ['rich-text', 'plain-text']
events-mode: ['legacy-events', 'modern-events']
env:
CI: true
E2E_EDITOR_MODE: ${{ matrix.editor-mode }}
E2E_EVENTS_MODE: ${{ matrix.events-mode }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: install required packages
run: |
sudo apt-get update
sudo apt-get install xvfb
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/.cache/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-windows:
if: github.repository_owner == 'facebook'
runs-on: windows-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox']
editor-mode: ['rich-text', 'plain-text']
events-mode: ['legacy-events', 'modern-events']
env:
CI: true
E2E_EDITOR_MODE: ${{ matrix.editor-mode }}
E2E_EVENTS_MODE: ${{ matrix.events-mode }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
# - uses: actions/cache@v3
# id: cache
# with:
# path: |
# node_modules
# C:\Users\runneradmin\AppData\Local\ms-playwright
# key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
# - name: Install dependencies
# if: steps.cache.outputs.cache-hit != 'true'
- run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: ~/.npm/_logs/
retention-days: 7
e2e-collab-mac:
if: github.repository_owner == 'facebook'
runs-on: macos-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox', 'webkit']
env:
CI: true
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/Library/Caches/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-collab-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-collab-linux:
if: github.repository_owner == 'facebook'
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox']
env:
CI: true
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- name: install required packages
run: |
sudo apt-get update
sudo apt-get install xvfb
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/.cache/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-collab-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-collab-windows:
if: github.repository_owner == 'facebook'
runs-on: windows-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium', 'firefox']
env:
CI: true
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
C:\Users\runneradmin\AppData\Local\ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
# if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-collab-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-prod:
if: github.repository_owner == 'facebook'
runs-on: macos-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium']
editor-mode: ['rich-text', 'plain-text']
events-mode: ['modern-events']
env:
CI: true
E2E_EDITOR_MODE: ${{ matrix.editor-mode }}
E2E_EVENTS_MODE: ${{ matrix.events-mode }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/Library/Caches/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-prod-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7
e2e-collab-prod:
if: github.repository_owner == 'facebook'
runs-on: macos-latest
strategy:
matrix:
node-version: [18.18.0]
browser: ['chromium']
editor-mode: ['rich-text']
events-mode: ['modern-events']
env:
CI: true
E2E_EDITOR_MODE: ${{ matrix.editor-mode }}
E2E_EVENTS_MODE: ${{ matrix.events-mode }}
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: npm i -g npm@8
- uses: actions/cache@v3
id: cache
with:
path: |
node_modules
packages/playwright-core/node_modules
~/Library/Caches/ms-playwright
key: ${{ runner.os }}-v${{ secrets.CACHE_VERSION }}-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Download browsers
run: npx playwright install
- run: npm run test-e2e-collab-prod-ci-${{ matrix.browser }}
- name: Upload Artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: Test Results
path: test-results/
retention-days: 7