CodeVetter · Repo Unpack · System map
jasmine/jasmine
The package boundary is jasmine-core, with a CommonJS entrypoint and browser distributables generated from source. Core factories separate public Jasmine APIs from private execution machinery, while HTML factories add browser reporting. State belongs to an environment and its suites, specs, and runnable resources; filesystem activity occurs in packaging and development tooling.
- package.json declares jasmine-core 7.0.2, exports only the root CommonJS entrypoint, and limits published content to the license, README, images, lib JavaScript/CSS, and package metadata.
- The Node entrypoint loads the bundled globals, installGlobals, reset, and version, then synchronously discovers browser asset filenames beneath its installed jasmine-core directory.
- requireCore.core constructs separate jasmine and private namespaces and wires Configuration, Env, Runner, TreeRunner, QueueRunner, spies, equality tools, and matcher factories.
- bootJasmine creates the environment and interface; Node exports the booted instance with load errors suppressed, whereas browser loading installs globals immediately.
- Env owns configuration, global-error installation, scoped resources, SuiteBuilder, ReportDispatcher, and Runner; jasmine.getEnv caches the current environment.
- HTML assembly installs private view factories and exposes HtmlReporterV2Urls, HtmlReporterV2, and QueryString as non-writable additions to the Jasmine namespace.
- buildDistribution compiles Sass, embeds image assets, concatenates ordered factory sources, renders version/license templates, and writes four JavaScript distribution targets.
- Repository scripts provide Node tests, parallel tests, browser serving/CI, lint, builds, and standalone archives; browser automation optionally connects to a Sauce Labs Selenium grid.