Allow multiple days to be specified in DaysMask parameter of SetWeekdaySchedule command (#32424)

* Allow multiple days to be specified in DaysMask parameter of SetWeekdaySchedule command

Fixes #32423

* Restyled by clang-format

* Update CI yaml test for Schedules to allow for multiple day bits

---------

Co-authored-by: Restyled.io <commits@restyled.io>
diff --git a/src/app/clusters/door-lock-server/door-lock-server.cpp b/src/app/clusters/door-lock-server/door-lock-server.cpp
index c049e34..0e65644 100644
--- a/src/app/clusters/door-lock-server/door-lock-server.cpp
+++ b/src/app/clusters/door-lock-server/door-lock-server.cpp
@@ -1003,17 +1003,10 @@
         return;
     }
 
-    // appclusters, 5.2.4.14 - spec does not allow setting the schedule for multiple days in the bitmask
-    int setBitsInDaysMask = 0;
-    uint8_t rawDaysMask   = daysMask.Raw();
-    for (size_t i = 0; i < sizeof(rawDaysMask) * 8; ++i)
-    {
-        setBitsInDaysMask += rawDaysMask & 0x1;
-        rawDaysMask = static_cast<uint8_t>(rawDaysMask >> 1);
-    }
+    uint8_t rawDaysMask = daysMask.Raw();
 
-    // TODO: Check that bits are within range
-    if (setBitsInDaysMask == 0 || setBitsInDaysMask > 1)
+    // Check that bits are within range
+    if ((0 == rawDaysMask) || (rawDaysMask & 0x80))
     {
         ChipLogProgress(Zcl,
                         "[SetWeekDaySchedule] Unable to add schedule - daysMask is out of range "
diff --git a/src/app/tests/suites/DL_Schedules.yaml b/src/app/tests/suites/DL_Schedules.yaml
index fedc924..f0c3244 100644
--- a/src/app/tests/suites/DL_Schedules.yaml
+++ b/src/app/tests/suites/DL_Schedules.yaml
@@ -215,7 +215,7 @@
       response:
           error: INVALID_COMMAND
 
-    - label: "Create Week Day schedule for Sunday and Monday"
+    - label: "Create Week Day schedule with Invalid day"
       command: "SetWeekDaySchedule"
       arguments:
           values:
@@ -224,28 +224,7 @@
               - name: "UserIndex"
                 value: 1
               - name: "DaysMask"
-                value: 0x3 # (Sunday and Monday)
-              - name: "StartHour"
-                value: 15
-              - name: "StartMinute"
-                value: 16
-              - name: "EndHour"
-                value: 18
-              - name: "EndMinute"
-                value: 00
-      response:
-          error: INVALID_COMMAND
-
-    - label: "Create Week Day schedule for Sunday Wednesday and Saturday"
-      command: "SetWeekDaySchedule"
-      arguments:
-          values:
-              - name: "WeekDayIndex"
-                value: 1
-              - name: "UserIndex"
-                value: 1
-              - name: "DaysMask"
-                value: 0x49 # (Sunday, Wednesday and Saturday)
+                value: 0x80 # (Not a valid day between Sunday thru Saturday)
               - name: "StartHour"
                 value: 15
               - name: "StartMinute"
@@ -1705,7 +1684,7 @@
               - name: "UserIndex"
                 value: 2
               - name: "DaysMask"
-                value: 0x40
+                value: 0x49 # (Sunday, Wednesday and Saturday)
               - name: "StartHour"
                 value: 23
               - name: "StartMinute"
@@ -1732,7 +1711,7 @@
               - name: "Status"
                 value: 0x0
               - name: "DaysMask"
-                value: 0x40
+                value: 0x49
               - name: "StartHour"
                 value: 23
               - name: "StartMinute"