MCPcopy
hub / github.com/syncthing/syncthing / TestAddDevice

Function TestAddDevice

lib/connections/limiter_test.go:152–184  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

150}
151
152func TestAddDevice(t *testing.T) {
153 wrapper, wrapperCancel := initConfig()
154 defer wrapperCancel()
155 lim := newLimiter(device1, wrapper)
156
157 addedDevice, _ := protocol.DeviceIDFromString("XZJ4UNS-ENI7QGJ-J45DT6G-QSGML2K-6I4XVOG-NAZ7BF5-2VAOWNT-TFDOMQU")
158 addDevConf := newDeviceConfiguration(wrapper, addedDevice, "addedDevice")
159 addDevConf.MaxRecvKbps = 120
160 addDevConf.MaxSendKbps = 240
161
162 waiter, _ := wrapper.Modify(func(cfg *config.Configuration) {
163 cfg.SetDevice(addDevConf)
164 })
165 waiter.Wait()
166
167 expectedR := map[protocol.DeviceID]*rate.Limiter{
168 device2: rate.NewLimiter(rate.Limit(dev2Conf.MaxRecvKbps*1024), limiterBurstSize),
169 device3: rate.NewLimiter(rate.Inf, limiterBurstSize),
170 device4: rate.NewLimiter(rate.Inf, limiterBurstSize),
171 addedDevice: rate.NewLimiter(rate.Limit(addDevConf.MaxRecvKbps*1024), limiterBurstSize),
172 }
173
174 expectedW := map[protocol.DeviceID]*rate.Limiter{
175 device2: rate.NewLimiter(rate.Limit(dev2Conf.MaxSendKbps*1024), limiterBurstSize),
176 device3: rate.NewLimiter(rate.Inf, limiterBurstSize),
177 device4: rate.NewLimiter(rate.Inf, limiterBurstSize),
178 addedDevice: rate.NewLimiter(rate.Limit(addDevConf.MaxSendKbps*1024), limiterBurstSize),
179 }
180 actualR := lim.deviceReadLimiters
181 actualW := lim.deviceWriteLimiters
182
183 checkActualAndExpected(t, actualR, actualW, expectedR, expectedW)
184}
185
186func TestAddAndRemove(t *testing.T) {
187 wrapper, wrapperCancel := initConfig()

Callers

nothing calls this directly

Calls 9

DeviceIDFromStringFunction · 0.92
initConfigFunction · 0.85
newLimiterFunction · 0.85
checkActualAndExpectedFunction · 0.85
SetDeviceMethod · 0.80
newDeviceConfigurationFunction · 0.70
ModifyMethod · 0.65
WaitMethod · 0.65
LimitMethod · 0.65

Tested by

no test coverage detected