UNPKG

one

Version:

One is a React framework for web, iOS, and Android apps.

31 lines (28 loc) • 1.14 kB
import { describe, expect, test } from 'vitest' import { auditUnpackedManifest, createResolutionRecorder, findForbiddenDependencies, } from './closure' describe('packed-artifact closure oracle', () => { test('fails on expo packages reachable from the app root', () => { expect(findForbiddenDependencies({ expo: '1.0.0', react: '19.0.0' })).toEqual([ 'expo', ]) expect( findForbiddenDependencies(['expo-constants', '@expo/config-plugins', 'react']) ).toEqual(['@expo/config-plugins', 'expo-constants']) expect(findForbiddenDependencies({ react: '19.0.0' })).toEqual([]) expect( auditUnpackedManifest({ dependencies: { 'babel-preset-expo': '1.0.0' } }) ).toEqual(['babel-preset-expo']) }) test('resolution recorder keeps a positive dynamic import and rejects expo', () => { const recorder = createResolutionRecorder() recorder.record('one', 'app/index.ts') recorder.record('./label', 'app/index.ts') expect(recorder.events()).toHaveLength(2) expect(() => recorder.record('expo-linking')).toThrow() expect(() => recorder.record('@expo/cli')).toThrow() }) })