mirror of https://github.com/logseq/logseq
commit
c34114cc45
|
@ -0,0 +1,74 @@
|
|||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
paths-ignore:
|
||||
- '*.md'
|
||||
pull_request:
|
||||
branches: [master]
|
||||
paths-ignore:
|
||||
- '*.md'
|
||||
|
||||
jobs:
|
||||
|
||||
test:
|
||||
strategy:
|
||||
matrix:
|
||||
operating-system: [ubuntu-latest]
|
||||
|
||||
runs-on: ${{ matrix.operating-system }}
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 1
|
||||
submodules: 'true'
|
||||
|
||||
- name: Maven cache
|
||||
uses: actions/cache@v1
|
||||
id: maven-cache
|
||||
with:
|
||||
path: ~/.m2/repository
|
||||
key: ${{ runner.os }}-maven-${{ hashFiles('deps.edn') }}
|
||||
restore-keys: ${{ runner.os }}-maven-
|
||||
|
||||
- name: Prepare Java
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: '12'
|
||||
|
||||
- name: Install Clojure tools.deps
|
||||
uses: DeLaGuardo/setup-clojure@master
|
||||
with:
|
||||
cli: '1.10.1.727'
|
||||
|
||||
- name: Fetch Maven deps
|
||||
if: steps.maven-cache.outputs.cache-hit != 'true'
|
||||
run: clojure -A:cljs -P
|
||||
|
||||
- name: Get yarn cache directory path
|
||||
id: yarn-cache-dir-path
|
||||
run: echo "::set-output name=dir::$(yarn cache dir)"
|
||||
- name: yarn cache
|
||||
uses: actions/cache@v1
|
||||
id: yarn-cache
|
||||
with:
|
||||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
|
||||
key: ${{ runner.os }}-yarn-${{ hashFiles('yarn.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-yarn-
|
||||
- name: Fetch yarn deps
|
||||
if: steps.yarn-cache.outputs.cache-hit != 'true'
|
||||
run: yarn install --frozen-lockfile
|
||||
|
||||
- name: Run Clojure test
|
||||
run: |
|
||||
yarn cljs:test
|
||||
node static/tests.js
|
7
deps.edn
7
deps.edn
|
@ -24,6 +24,7 @@
|
|||
hiccups {:mvn/version "0.3.0"}
|
||||
tongue {:mvn/version "0.2.9"}
|
||||
org.clojure/core.async {:mvn/version "1.3.610"}
|
||||
thheller/shadow-cljs {:mvn/version "2.8.81"}
|
||||
expound {:mvn/version "0.8.6"}
|
||||
lambdaisland/glogi {:mvn/version "1.0.74"}}
|
||||
|
||||
|
@ -35,8 +36,10 @@
|
|||
cider/cider-nrepl {:mvn/version "0.23.0-SNAPSHOT"}}
|
||||
:main-opts ["-m" "shadow.cljs.devtools.cli"]}
|
||||
:test
|
||||
{:extra-paths ["test"],
|
||||
:extra-deps {org.clojure/test.check {:mvn/version "RELEASE"}}}
|
||||
{:extra-paths ["src/test/"]
|
||||
:extra-deps {org.clojure/clojurescript {:mvn/version "1.10.520"}
|
||||
org.clojure/test.check {:mvn/version "RELEASE"}}
|
||||
:main-opts ["-m" "shadow.cljs.devtools.cli"]}
|
||||
:runner
|
||||
{:extra-deps
|
||||
{com.cognitect/test-runner
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
"gulp:build": "NODE_ENV=production gulp build",
|
||||
"cljs:watch": "clojure -A:cljs watch app publishing",
|
||||
"cljs:release": "clojure -A:cljs release app publishing",
|
||||
"cljs:test": "clojure -A:test compile test",
|
||||
"cljs:watch-app": "clojure -A:cljs watch app",
|
||||
"cljs:release-app": "clojure -A:cljs release app",
|
||||
"cljs:release-publishing": "clojure -A:cljs release publishing",
|
||||
|
|
|
@ -26,6 +26,11 @@
|
|||
;; after live-reloading finishes call this function
|
||||
:after-load frontend.core/start
|
||||
:preloads [devtools.preload]}}
|
||||
|
||||
:test
|
||||
{:target :node-test
|
||||
:output-to "static/tests.js"}
|
||||
|
||||
:publishing
|
||||
{:target :browser
|
||||
:module-loader true
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
(ns frontend.util-test
|
||||
(:require [cljs.test :refer [deftest is testing run-tests]]
|
||||
[frontend.util :refer [find-first]]))
|
||||
|
||||
(deftest test-find-first
|
||||
(testing "find-first"
|
||||
(is (= 1 (find-first identity [1])))))
|
Loading…
Reference in New Issue