MiniApp Tests

More details about this document
Latest published version:
https://w3c.github.io/miniapp-tests/
Latest editor's draft:
https://w3c.github.io/miniapp-tests/
History:
Commit history
Editor:
Martin Alvarez-Espinar (Huawei)
Feedback:
GitHub w3c/miniapp-tests (pull requests, new issue, open issues)
public-miniapp@w3.org with subject line [miniapp-tests] … message topic … (archives)

Abstract

Description of the MiniApp tests.

Status of This Document

This document is merely a W3C-internal document. It has no official standing of any kind and does not represent consensus of the W3C Membership.

1. Introduction

w3c/miniapp-tests is the repository for the the tests to validate the implementability of W3C's MiniApp specifications, specifically MiniApp Packaging (the specification for the MiniApp format itself), MiniApp Lifecycle (the specification for events related to MiniApp lifecycle), and MiniApp Manifest (the specification for describing and configuring MiniApps through a manifest document).

The development of the tests is a community effort (see the list of contributors). Everyone is welcome to contribute tests; please read the separate contribution guidelines if you are interested.

This document provides a short overview for each test, grouped into separate tables by test categories. The columns in the tables are as follows:

  1. The identification of each test, linked to the unzipped tests themselves in the GitHub repository.
  2. Conformance flag of test (i.e., must, should, or may).
  3. Title of the test.
  4. Short description of the test.
  5. References to the corresponding normative statements or sections in the MiniApp specification(s).
  6. Pointer to the (consolidated) implementation status of the test in the separate implementation report.

Strictly speaking, the should and may tests are not necessary for the official CR testing of the specifications. These tests are currently visible in the tables below; to change their visibility, click the switch visibility button below.

2. Description of the Tests

2.1 Packaging

Id Req Title Description Specs Ref
pkg-css-global-supportmustGlobal CSS stylesheet affects all pagesGlobal CSS stylesheet must affect all pages. The test includes CSS properties in the app.css over that will affect the text on the entry page, showing a black text on yellow background. (1)
pkg-pages-same-filenamesmustA page with resources with same filenameThe entry page includes three resources (.html, .css, and .js) with the same filename. The app must be loaded. (1)
pkg-root-app-css-emptymayEmpty global app.cssThe app.css global stylesheet may be empty. The app must be loaded. (1)

2.2 Manifest

Id Req Title Description Specs Ref
mnf-window-background-colormustWindow background color setThe window's background member is set to #00FF00, so the app page must have a green background. (1)
mnf-window-background-color-defaultmustWindow background color set by defaultIf the window's background member is not set, the app page must have a white background by default. (1)
mnf-window-fullscreen-defaultmustNo full-screen by defaultNo window's full-screen member declared in the manifest, so ehe app must not be in full-screen mode. (1)
mnf-window-fullscreen-truemustFullscreen enabled in manifestThe window's fullscreen member is set to true in the manifest. The app must be shown in fullscreen. (1)
mnf-window-orientation-defaultmustPortrait orientation by defaultNo window's orientation member declared in the manifest, so the app display must be in portrait mode by default. (1)
mnf-window-orientation-landscapemustLandscape orientation defined in manifestThe window's orientation member is set to landscape in the manifest, so the app display must be in landscape mode. (1)
mnf-window-orientation-portraitmustPortrait orientation defined in manifestThe window's orientation member is set to portrait in the manifest. The app display must be in portrait mode. (1)

2.3 Lifecycle

Id Req Title Description Specs Ref
lcy-global-launched-callback-page-pathmustGlobal shown callback on the first pageOnce the app is launched and the first page is shown, the callback must return an object. The pagePath member must be the same as the first page. (1)

A. Acknowledgements

The following experts contributed to the test suite:

This testing methodology is based on the EPUB tests, developed by Ivan Herman, Dan Lazin, and the rest of the group.