Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

code.test.ts 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import state from 'state'
  2. import { generateFromCode } from 'state/code/generate'
  3. import { getShapes } from 'utils'
  4. import * as json from './__mocks__/document.json'
  5. jest.useRealTimers()
  6. state.reset()
  7. state.send('MOUNTED').send('LOADED_FROM_FILE', { json: JSON.stringify(json) })
  8. state.send('CLEARED_PAGE')
  9. describe('selection', () => {
  10. it('opens and closes the code panel', () => {
  11. expect(state.data.settings.isCodeOpen).toBe(false)
  12. state.send('TOGGLED_CODE_PANEL_OPEN')
  13. expect(state.data.settings.isCodeOpen).toBe(true)
  14. state.send('TOGGLED_CODE_PANEL_OPEN')
  15. expect(state.data.settings.isCodeOpen).toBe(false)
  16. })
  17. it('saves changes to code', () => {
  18. expect(getShapes(state.data).length).toBe(0)
  19. const code = `// hello world!`
  20. state.send('SAVED_CODE', { code })
  21. expect(state.data.document.code[state.data.currentCodeFileId].code).toBe(
  22. code
  23. )
  24. })
  25. it('generates shapes', async () => {
  26. const code = `
  27. const rectangle = new Rectangle({
  28. name: 'Test Rectangle',
  29. point: [100, 100],
  30. size: [200, 200],
  31. style: {
  32. size: SizeStyle.Medium,
  33. color: ColorStyle.Red,
  34. dash: DashStyle.Dotted,
  35. },
  36. })
  37. `
  38. const { controls, shapes } = await generateFromCode(state.data, code)
  39. state.send('GENERATED_FROM_CODE', { controls, shapes })
  40. expect(getShapes(state.data).length).toBe(1)
  41. })
  42. it('creates a code control', () => {
  43. null
  44. })
  45. it('updates a code control', () => {
  46. null
  47. })
  48. it('updates a code control', () => {
  49. null
  50. })
  51. /* -------------------- Readonly -------------------- */
  52. it('does not saves changes to code when readonly', () => {
  53. null
  54. })
  55. })