using Tau.Acuvim.Portal.Domain.Rates; namespace Tau.Acuvim.Portal.Tests; public class DayOfWeekFlagTests { [Theory] [InlineData(DayOfWeek.Monday, DayOfWeekFlag.Monday)] [InlineData(DayOfWeek.Tuesday, DayOfWeekFlag.Tuesday)] [InlineData(DayOfWeek.Wednesday, DayOfWeekFlag.Wednesday)] [InlineData(DayOfWeek.Thursday, DayOfWeekFlag.Thursday)] [InlineData(DayOfWeek.Friday, DayOfWeekFlag.Friday)] [InlineData(DayOfWeek.Saturday, DayOfWeekFlag.Saturday)] [InlineData(DayOfWeek.Sunday, DayOfWeekFlag.Sunday)] public void ToFlag_MapsEachDay(DayOfWeek day, DayOfWeekFlag expected) { Assert.Equal(expected, day.ToFlag()); } [Fact] public void Weekdays_IncludesMonToFri_ExcludesWeekend() { Assert.True((DayOfWeekFlag.Weekdays & DayOfWeekFlag.Monday) != 0); Assert.True((DayOfWeekFlag.Weekdays & DayOfWeekFlag.Friday) != 0); Assert.True((DayOfWeekFlag.Weekdays & DayOfWeekFlag.Saturday) == 0); Assert.True((DayOfWeekFlag.Weekdays & DayOfWeekFlag.Sunday) == 0); } [Fact] public void Weekends_IncludesSatAndSun_ExcludesWeekdays() { Assert.True((DayOfWeekFlag.Weekends & DayOfWeekFlag.Saturday) != 0); Assert.True((DayOfWeekFlag.Weekends & DayOfWeekFlag.Sunday) != 0); Assert.True((DayOfWeekFlag.Weekends & DayOfWeekFlag.Monday) == 0); } [Fact] public void All_IsWeekdaysOrWeekends() { Assert.Equal(DayOfWeekFlag.All, DayOfWeekFlag.Weekdays | DayOfWeekFlag.Weekends); } }