Skip to content

Add 77 test scenarios to Backlog tier#4147

Merged
lirenhe merged 1 commit into
mainfrom
test_category
Apr 1, 2026
Merged

Add 77 test scenarios to Backlog tier#4147
lirenhe merged 1 commit into
mainfrom
test_category

Conversation

@lirenhe
Copy link
Copy Markdown
Member

@lirenhe lirenhe commented Mar 30, 2026

Summary

Categorizes 78 test scenarios as Backlog in the Can I Use dashboard based on cross-language analysis of skipped tests across Go, Java, Python, and JS emitters.

Criterion: A scenario is moved to Backlog if it is skipped by 2 or more of the 4 major language emitters, indicating the feature is optional rather than a single-emitter gap. Newly added scenarios that fit an existing Backlog category are also included.

Data Sources

Language Source
Go autorest.go#1812 comment
Python autorest.python#3372
Java \java-skipped.txt\ in repo root
JS \js-skipped.txt\ in repo root

Scenarios Added to Backlog (78 tests, skipped by 2+ languages)

Category Tests Languages Skipping
Routes Path/Query Parameter Expansion 32 Go, Java, Python
Type Union Discriminated 8 Go, Java, Python
Pageable ContinuationToken 6 Go, Java, JS
Pageable AlternateInitialVerb 1 New (microsoft/typespec#9966); no language implemented yet
Azure AlternateType ExternalType 4 Go, Python, JS
Azure ClientDefaultValue 4 Go, Java
Authentication Noauth Union 2 Go, JS
Pageable Link-based pagination 3 Java, JS
Pageable PageSize 2 Java, JS
Pageable XmlPagination 2 Go, Java
Response StatusCodeRange 2 Go, JS
Type File Body 8 Python, JS
Encode Duration float*LargerUnit 4 Python, JS
Total 78

New XML scenarios kept as Core

22 new XML scenarios from microsoft/typespec#10063 remain Core. Existing \Payload_Xml_*\ tests are only skipped by Java (1 language) — Go, Python, and JS pass them — so XML is an emitter-specific gap, not an optional feature.


Scenarios Remaining in Core (~147 skipped tests kept as Core)

Tests skipped by only 1 language remain Core — 3 of 4 emitters already support them, so these are emitter-specific gaps, not optional features.

Go-only skips (~86 tests) — mostly blocked on union support

Category Count Reason
Type_Union (non-discriminated) 20 Requires union support
Type_Property_AdditionalProperties (union-related) 34 Requires union support
Encode_Array 12 Tracked in autorest.go#1771
Type_Model_Inheritance_NestedDiscriminator 6 Not a real scenario — will fix on demand
Versioning (Added/Removed/RenamedFrom) 9 Requires union support
Authentication_Union 2 Requires union support
SpecialHeaders_Repeatability 1 Requires union support
DeserializeEmptyStringAsNull 1 Tracked in autorest.go#1857
Azure_Core_Page_withParameterizedNextLink 1 Tracked in autorest.go#1576

Go's gaps are primarily due to missing union support. Once Go adds unions, ~66 of these tests will pass.

Python-only skips (~33 tests) — feature-specific gaps

Category Count Reason
Encode_Duration (int/non-float variants) 20 No urgent demand for these encodings
ClientInitialization (Individually*) 13 Feature not yet needed by Python

Java, Go, and JS support these. Python's gaps are implementation priorities, not optional features.

Java-only skips (~28 tests) — XML and misc

Category Count Reason
Payload_Xml 26 XML support incomplete
Parameters_Path_optional 1 Not yet implemented
Resiliency_ServiceDriven_breakTheGlass 1 Not yet implemented

Go, Python, and JS support these. XML is a real Azure feature used by services like Storage.

JS-only skips (0 tests)

All JS-skipped tests overlapped with at least one other language, so they all moved to Backlog.

@azure-sdk
Copy link
Copy Markdown
Collaborator

No changes needing a change description found.

@azure-sdk
Copy link
Copy Markdown
Collaborator

azure-sdk commented Mar 30, 2026

You can try these changes here

🛝 Playground 🌐 Website

@lirenhe lirenhe requested a review from lmazuel March 30, 2026 06:32
Copy link
Copy Markdown
Member

@weidongxu-microsoft weidongxu-microsoft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

payload/xml added many new cases
microsoft/typespec#10063

payload/pageable added 1 too

@lirenhe
Copy link
Copy Markdown
Member Author

lirenhe commented Mar 30, 2026

payload/xml added many new cases microsoft/typespec#10063

payload/pageable added 1 too

Do you know those xml cases should be implemented as they seems to be asked by storage?

Categorize test scenarios as Backlog based on cross-language analysis of
skipped tests across Go, Java, Python, and JS emitters. Scenarios skipped
by 2+ languages are moved to Backlog as they represent optional features
not yet required for all emitters.

Categories added:
- Routes path/query parameter expansion (32 tests) — Go, Java, Python
- Type Union Discriminated (8 tests) — Go, Java, Python
- Pageable ContinuationToken (6 tests) — Go, Java, JS
- Pageable AlternateInitialVerb (1 test) — newly added, no language implemented yet
- Azure AlternateType ExternalType (4 tests) — Go, Python, JS
- Azure ClientDefaultValue (4 tests) — Go, Java
- Authentication Noauth Union (2 tests) — Go, JS
- Pageable link-based pagination (3 tests) — Java, JS
- Pageable PageSize (2 tests) — Java, JS
- Pageable XmlPagination (2 tests) — Go, Java
- Response StatusCodeRange (2 tests) — Go, JS
- Type File Body (8 tests) — Python, JS
- Encode Duration float*LargerUnit (4 tests) — Python, JS

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Comment thread website/src/pages/can-i-use/scenario-tiers.ts
@lirenhe lirenhe added this pull request to the merge queue Apr 1, 2026
Merged via the queue into main with commit 60aae76 Apr 1, 2026
27 checks passed
@lirenhe lirenhe deleted the test_category branch April 1, 2026 10:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

meta:website TypeSpec.io updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants