فهرست منبع

Merge pull request #23582 from overleaf/mj-material-icon-font-test

[web] Add cypress test for MaterialIcon variants

GitOrigin-RevId: 816ee12e8d50482c0b4fd05adc0511445d82ca8d
Mathias Jakobsen 1 سال پیش
والد
کامیت
f7c4df8d04
1فایلهای تغییر یافته به همراه31 افزوده شده و 0 حذف شده
  1. 31 0
      services/web/test/frontend/components/shared/material-icon.spec.tsx

+ 31 - 0
services/web/test/frontend/components/shared/material-icon.spec.tsx

@@ -0,0 +1,31 @@
+import MaterialIcon from '@/shared/components/material-icon'
+import unfilledIconTypes from '../../../../frontend/fonts/material-symbols/unfilled-symbols.mjs'
+import '../../helpers/bootstrap-3'
+
+const FONT_SIZE = 40
+
+describe('MaterialIcon', function () {
+  describe('Filled', function () {
+    it('contains symbols', function () {
+      cy.mount(<MaterialIcon type="home" style={{ fontSize: FONT_SIZE }} />)
+      cy.get('.material-symbols').as('icon')
+      cy.get('@icon')
+        .invoke('width')
+        .should('be.within', FONT_SIZE - 1, FONT_SIZE + 1)
+    })
+  })
+
+  describe('Unfilled', function () {
+    it('Contain all unfilled symbol', function () {
+      for (const type of unfilledIconTypes) {
+        cy.mount(
+          <MaterialIcon type={type} unfilled style={{ fontSize: FONT_SIZE }} />
+        )
+        cy.get('.material-symbols').as('icon')
+        cy.get('@icon')
+          .invoke('width')
+          .should('be.within', FONT_SIZE - 1, FONT_SIZE + 1)
+      }
+    })
+  })
+})