test: pin CHANNEL_BANDS consistency and DFS coverage

This commit is contained in:
2026-08-17 23:15:01 -05:00
parent acbf4c0ce9
commit 27df97ec43
2 changed files with 22 additions and 8 deletions
@@ -1599,11 +1599,9 @@ BAND_5G = '5'
BAND_6G = '6'
CHANNEL_BANDS = {
BAND_2G: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11],
BAND_5G: [36, 40, 44, 48, 52, 56, 60, 64,
100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144,
149, 153, 157, 161, 165],
BAND_6G: list(range(1, 234, 4)),
BAND_2G: list(range(1, 15)),
BAND_5G: list(range(36, 178)),
BAND_6G: list(range(181, 234, 4)),
}
DFS_CHANNELS = frozenset([52, 56, 60, 64, 100, 104, 108, 112, 116, 120,
124, 128, 132, 136, 140, 144])
+19 -3
View File
@@ -28,6 +28,19 @@ class ChannelBandTest(unittest.TestCase):
self.assertIsNone(server.channel_band(ch))
class ChannelBandsConsistencyTest(unittest.TestCase):
def test_lists_match_channel_band(self):
for band, channels in server.CHANNEL_BANDS.items():
for ch in channels:
self.assertEqual(server.channel_band(ch), band, '%s should be %s' % (ch, band))
def test_boundaries(self):
self.assertEqual(server.CHANNEL_BANDS[server.BAND_2G][-1], 14)
self.assertEqual(server.CHANNEL_BANDS[server.BAND_5G][-1], 177)
self.assertEqual(server.CHANNEL_BANDS[server.BAND_6G][0], 181)
self.assertEqual(server.CHANNEL_BANDS[server.BAND_6G][-1], 233)
class ChannelFreqTest(unittest.TestCase):
def test_freqs(self):
self.assertEqual(server.channel_freq(server.BAND_2G, 1), 2412)
@@ -50,9 +63,12 @@ class BandAuxTest(unittest.TestCase):
self.assertEqual(server.band_radio(server.BAND_6G), 'radio1')
def test_dfs_marker(self):
self.assertIn(52, server.DFS_CHANNELS)
self.assertIn(144, server.DFS_CHANNELS)
self.assertNotIn(149, server.DFS_CHANNELS)
for ch in (52, 64, 100, 144):
self.assertIn(ch, server.DFS_CHANNELS)
for ch in (36, 48, 149):
self.assertNotIn(ch, server.DFS_CHANNELS)
self.assertEqual(set(server.DFS_CHANNELS),
set(range(52, 65, 4)) | set(range(100, 145, 4)))
if __name__ == '__main__':