diff --git a/.circleci/config.yml b/.circleci/config.yml index 1a4824038..52b94a5af 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -44,7 +44,6 @@ jobs: - ~/.m2 key: v1-dependencies-{{ checksum "common/deps.edn"}} - test-frontend: docker: - image: penpotapp/devenv:latest @@ -93,7 +92,6 @@ jobs: - ~/.m2 key: v1-dependencies-{{ checksum "frontend/deps.edn"}} - test-integration: docker: - image: penpotapp/devenv:latest @@ -180,7 +178,6 @@ jobs: - ~/.m2 key: v1-dependencies-{{ checksum "backend/deps.edn" }} - test-exporter: docker: - image: penpotapp/devenv:latest @@ -210,6 +207,29 @@ jobs: yarn run fmt:clj:check yarn run lint:clj + test-render-wasm: + docker: + - image: penpotapp/devenv:latest + + working_directory: ~/repo + resource_class: medium+ + environment: + + steps: + - checkout + + - run: + name: "fmt check" + working_directory: "./render-wasm" + command: | + cargo fmt --check + + - run: + name: "cargo tests" + working_directory: "./render-wasm" + command: | + cargo test + workflows: penpot: jobs: @@ -218,3 +238,4 @@ workflows: - test-backend - test-common - test-exporter + - test-render-wasm diff --git a/render-wasm/src/shapes.rs b/render-wasm/src/shapes.rs index 84db1bcda..b095c2fa6 100644 --- a/render-wasm/src/shapes.rs +++ b/render-wasm/src/shapes.rs @@ -150,3 +150,21 @@ impl Shape { self.blend_mode = mode; } } + +#[cfg(test)] +mod tests { + use super::*; + + fn any_shape() -> Shape { + Shape::new(Uuid::nil()) + } + + #[test] + fn add_fill_pushes_a_new_fill() { + let mut shape = any_shape(); + assert_eq!(shape.fills.len(), 0); + + shape.add_fill(Fill::Solid(Color::TRANSPARENT)); + assert_eq!(shape.fills.get(0), Some(&Fill::Solid(Color::TRANSPARENT))) + } +}