Namespace Serenity.Shared.Tests.Utils
Classes
DisplayValueTests
FileUtilsTests
LocalePreviewMatcherTests
NumberUtilsTests
ObjectUtilsTests
ObjectUtilsTests.TestAbstractImpl
ObjectUtilsTests.TestBase
ObjectUtilsTests.TestDerived1
ObjectUtilsTests.TestDerived2
ObjectUtilsTests.TestImpl1
ObjectUtilsTests.TestImpl2
ObjectUtilsTypeResolutionTests
Tests for GetTypeFromCurrentDomainAssemblies(string).
The lookup used to scan every assembly — materializing every type, twice — on each call that missed the
Type.GetType fast path, which measured at seconds per call and froze the editor on every keystroke
of a partial type name. It now answers from a lazily built index. These tests pin the resolution
semantics the index must reproduce exactly; the speed itself was verified by measurement.
ParseUtilsTests
ParseUtilsTypeTests
SafeCollectionUtilsTests
SignalCategoryFilteringTests
Tests for SignalCategoryFiltering, extracted from
Serenity.EventDispatcher.Infrastructure.Editor.SerenitySignalFlowBrowserWindow's search box and
category chip row, which previously had no coverage at all.
StringUtilsTests
ValueDisplayFormatterTests
Tests for ValueDisplayFormatter. Pure formatting logic, so every case runs without an
editor/player context.
Rounding-boundary cases deliberately use values whose fractional part is exactly representable in binary
(e.g. 0.5, 12.25, 12.125) rather than decimal-looking values like 0.995 -- those are NOT exact as
doubles, so asserting a specific rounded result for them would be testing floating-point
representation quirks instead of the formatter's rounding rule.