-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test plan for "ref assemblies" (7.1) #18612
Comments
Some things to think about for the test plan:
|
Also references that use |
@jcouv's initial testing has revealed a couple of interesting project set-up scenarios:
(I tested the latter during development but broke the former.) |
Another scenario from Jason:
|
Went over the test plan today with @jcouv and checked off all we could. |
Issues so far:
Other things I tested:
|
I'm closing this. @jcouv, do you want issues for additional proposed tests? |
This is the test plan for "ref assemblies".
See also
refout
feature branchGolden Path Tests
/out
and/refout
/refonly
*
not used inAssemblyVersionAttribute
/refonly
is used, we should not be sensitive to semantic error in [seeRefAssembly_InvariantToSomeChanges
]InternalVisibleToAttribute
/refout
and not/refonly
, we should not produce a ref assembly if there are any errors [seeRefOutWithError
]RefAssemblyClient_EmitTupleNames
)out
parameters in APIs are visible through the ref assembly (C# only). (See RefAssemblyClient_EmitOut)/refonly
and/doc
are used, XML docs produced for included APIs (SeeRefOnly
And RefOut in commandline tests)/refonly
and/doc
are used, XML docs not produced for excluded APIs (out of scope for 7.1)/refout
used and resource are specified, they are not in the ref assembly/refonly
used and resource are specified, they are included in the ref assemblyInclusion and Exclusion
private
(and included otherwise)private
(I don't think I have a test for operators or indexers though)private
tointernal
and exclude more if there are noInternalsVisibleTo
.Miscellaneous
/addmodule
with either/refout
or/refonly
.ReferenceAssemblyAttribute
in the ref assembly with either/refout
or/refonly
./refonly
and/debug
together are an error (There is a test for this, but the test asserts that it is NOT an error. Perhaps change spec? See /refout and /debug together should be an error #19708)struct S1<T> { private T t }
in the ref assembly used this waystruct S2 { S1<S2> x; }
(See RefAssemblyClient_StructWithPrivateGenericField)Build Scenarios
The text was updated successfully, but these errors were encountered: