Comments (8)
The [UIFact]
attribute does a little more than just set a SynchronizationContext
. It also runs the test on an STA thread if on Windows.
I think I'll keep the names we have, but I'll improve the documentation on the package and attributes to better describe their features and behavior.
from xunit.stafact.
Would be great to have some documentation in README.md too, e.g. a table with the attributes and its primary intention.
from xunit.stafact.
Yes, I am preparing a 1.0 stable release. And you make a valid point about UIFact
not really being UI specific. However, nearly everyone I've observed that deals with SynchronizationContext
is also dealing with some UI framework, so it's accurate for that scenario, even though it is applicable more broadly than that. I'd rather not rename the attribute at this point because there are already over 100K downloads and I don't want to make upgrading more difficult than necessary.
As far as naming goes, I was most tempted to rename the package since hardly anyone is interested in StaFact
actually -- they really want one of the other attributes that apply a SynchronizationContext. But that too, would probably disrupt more than help. I'm not sure. Maybe I'll rename and deprecate the original package on nuget.org so folks discover the new one.
from xunit.stafact.
IF you EVER rename attributes and/or package, then NOW.
from xunit.stafact.
@weltkante @RussKie @josetr @Serg046 @apobekiaris Do you have an opinion on the package ID? Should we keep it or rename it? Perhaps to UIFact.Xunit, since I think Xunit
is now a reserved namespace on nuget.org. Or perhaps Nerdbank.XUnit.UIFact.
from xunit.stafact.
Personally I don't have any issues with renaming things. Not speaking for WinForms repo owners but I can do the necessary changes there as well if it becomes necessary, doesn't look like its integrated into arcade infrastructure so should be straightforward to apply any renaming of package references or code.
from xunit.stafact.
Thank you for asking, but I don't have a strong opinion. We'll use whatever the name is (assuming you're not planning to delist old versions).
I don't think we use anything but WinForms*
or STA*
attributes, so don't have a strong opinion about UI*
attributes either. Though following the logic laid out above, I'd go for a longer name SynchronizationContext*
purely for descriptive reasons.
from xunit.stafact.
Closed with 782b084.
from xunit.stafact.
Related Issues (20)
- Suggestion: Skip support (SkippableFact) HOT 4
- [StaFact] tests not found when used with netcoreapp2.2 HOT 13
- StaTheory is not supported in Visual Studio Runner HOT 13
- Support for OleInitialize HOT 2
- WPF support on .NET Core 3.0 breaks .NET Core 3.0 consumers on Linux/Mac
- Can't run tests HOT 2
- Generate test arguments on test thread
- CPU usage in polling message loop HOT 4
- Hanging UITheoryTestCase
- CollectionAttribute seems to be not respected HOT 7
- [StaFact] tests do not execute when targeting net462 HOT 8
- .net 4.5.2 compatibility HOT 3
- netstandard support HOT 1
- STA for Fixture Collections HOT 5
- StaFact facts breaks the concurrency limitations of Xunit HOT 11
- Running all tests within a class on the same thread? HOT 12
- [MainThreadFact] to execute tests on main thread on macos HOT 6
- Custom Thread HOT 1
- WinUI Unit testing with UIFact doesn't appear to work. HOT 18
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xunit.stafact.