@@ -2640,6 +2640,164 @@ void main() {
26402640 expect (client.devices[22 ].deviceType, equals (NetworkManagerDeviceType .vrf));
26412641 });
26422642
2643+ test ('device state reasons' , () async {
2644+ var server = DBusServer ();
2645+ addTearDown (() async => await server.close ());
2646+ var clientAddress =
2647+ await server.listenAddress (DBusAddress .unix (dir: Directory .systemTemp));
2648+
2649+ var nm = MockNetworkManagerServer (clientAddress);
2650+ addTearDown (() async => await nm.close ());
2651+ await nm.start ();
2652+ for (var reason = 2 ; reason <= 67 ; reason++ ) {
2653+ await nm.addDevice (stateReason: reason);
2654+ }
2655+ await nm.addDevice (stateReason: 0 );
2656+ await nm.addDevice (stateReason: 999 );
2657+
2658+ var client = NetworkManagerClient (bus: DBusClient (clientAddress));
2659+ addTearDown (() async => await client.close ());
2660+ await client.connect ();
2661+
2662+ expect (client.devices, hasLength (68 ));
2663+ expect (client.devices[0 ].stateReason.reason,
2664+ equals (NetworkManagerDeviceStateReason .nowManaged));
2665+ expect (client.devices[1 ].stateReason.reason,
2666+ equals (NetworkManagerDeviceStateReason .nowUnmanaged));
2667+ expect (client.devices[2 ].stateReason.reason,
2668+ equals (NetworkManagerDeviceStateReason .configFailed));
2669+ expect (client.devices[3 ].stateReason.reason,
2670+ equals (NetworkManagerDeviceStateReason .ipConfigUnavailable));
2671+ expect (client.devices[4 ].stateReason.reason,
2672+ equals (NetworkManagerDeviceStateReason .ipConfigExpired));
2673+ expect (client.devices[5 ].stateReason.reason,
2674+ equals (NetworkManagerDeviceStateReason .noSecrets));
2675+ expect (client.devices[6 ].stateReason.reason,
2676+ equals (NetworkManagerDeviceStateReason .supplicantDisconnect));
2677+ expect (client.devices[7 ].stateReason.reason,
2678+ equals (NetworkManagerDeviceStateReason .supplicantConfigFailed));
2679+ expect (client.devices[8 ].stateReason.reason,
2680+ equals (NetworkManagerDeviceStateReason .supplicantFailed));
2681+ expect (client.devices[9 ].stateReason.reason,
2682+ equals (NetworkManagerDeviceStateReason .supplicantTimeout));
2683+ expect (client.devices[10 ].stateReason.reason,
2684+ equals (NetworkManagerDeviceStateReason .pppStartFailed));
2685+ expect (client.devices[11 ].stateReason.reason,
2686+ equals (NetworkManagerDeviceStateReason .pppDisconnect));
2687+ expect (client.devices[12 ].stateReason.reason,
2688+ equals (NetworkManagerDeviceStateReason .pppFailed));
2689+ expect (client.devices[13 ].stateReason.reason,
2690+ equals (NetworkManagerDeviceStateReason .dhcpStartFailed));
2691+ expect (client.devices[14 ].stateReason.reason,
2692+ equals (NetworkManagerDeviceStateReason .dhcpError));
2693+ expect (client.devices[15 ].stateReason.reason,
2694+ equals (NetworkManagerDeviceStateReason .dhcpFailed));
2695+ expect (client.devices[16 ].stateReason.reason,
2696+ equals (NetworkManagerDeviceStateReason .sharedStartFailed));
2697+ expect (client.devices[17 ].stateReason.reason,
2698+ equals (NetworkManagerDeviceStateReason .sharedFailed));
2699+ expect (client.devices[18 ].stateReason.reason,
2700+ equals (NetworkManagerDeviceStateReason .autoIpStartFailed));
2701+ expect (client.devices[19 ].stateReason.reason,
2702+ equals (NetworkManagerDeviceStateReason .autoIpError));
2703+ expect (client.devices[20 ].stateReason.reason,
2704+ equals (NetworkManagerDeviceStateReason .autoIpFailed));
2705+ expect (client.devices[21 ].stateReason.reason,
2706+ equals (NetworkManagerDeviceStateReason .modemBusy));
2707+ expect (client.devices[22 ].stateReason.reason,
2708+ equals (NetworkManagerDeviceStateReason .modemNoDialTone));
2709+ expect (client.devices[23 ].stateReason.reason,
2710+ equals (NetworkManagerDeviceStateReason .modemNoCarrier));
2711+ expect (client.devices[24 ].stateReason.reason,
2712+ equals (NetworkManagerDeviceStateReason .modemDialTimeout));
2713+ expect (client.devices[25 ].stateReason.reason,
2714+ equals (NetworkManagerDeviceStateReason .modemDialFailed));
2715+ expect (client.devices[26 ].stateReason.reason,
2716+ equals (NetworkManagerDeviceStateReason .modemInitFailed));
2717+ expect (client.devices[27 ].stateReason.reason,
2718+ equals (NetworkManagerDeviceStateReason .gsmApnFailed));
2719+ expect (client.devices[28 ].stateReason.reason,
2720+ equals (NetworkManagerDeviceStateReason .gsmRegistrationNotSearching));
2721+ expect (client.devices[29 ].stateReason.reason,
2722+ equals (NetworkManagerDeviceStateReason .gsmRegistrationDenied));
2723+ expect (client.devices[30 ].stateReason.reason,
2724+ equals (NetworkManagerDeviceStateReason .gsmRegistrationTimeout));
2725+ expect (client.devices[31 ].stateReason.reason,
2726+ equals (NetworkManagerDeviceStateReason .gsmRegistrationFailed));
2727+ expect (client.devices[32 ].stateReason.reason,
2728+ equals (NetworkManagerDeviceStateReason .gsmPinCheckFailed));
2729+ expect (client.devices[33 ].stateReason.reason,
2730+ equals (NetworkManagerDeviceStateReason .firmwareMissing));
2731+ expect (client.devices[34 ].stateReason.reason,
2732+ equals (NetworkManagerDeviceStateReason .removed));
2733+ expect (client.devices[35 ].stateReason.reason,
2734+ equals (NetworkManagerDeviceStateReason .sleeping));
2735+ expect (client.devices[36 ].stateReason.reason,
2736+ equals (NetworkManagerDeviceStateReason .connectionRemoved));
2737+ expect (client.devices[37 ].stateReason.reason,
2738+ equals (NetworkManagerDeviceStateReason .userRequested));
2739+ expect (client.devices[38 ].stateReason.reason,
2740+ equals (NetworkManagerDeviceStateReason .carrier));
2741+ expect (client.devices[39 ].stateReason.reason,
2742+ equals (NetworkManagerDeviceStateReason .connectionAssumed));
2743+ expect (client.devices[40 ].stateReason.reason,
2744+ equals (NetworkManagerDeviceStateReason .supplicantAvailable));
2745+ expect (client.devices[41 ].stateReason.reason,
2746+ equals (NetworkManagerDeviceStateReason .modemNotFound));
2747+ expect (client.devices[42 ].stateReason.reason,
2748+ equals (NetworkManagerDeviceStateReason .btFailed));
2749+ expect (client.devices[43 ].stateReason.reason,
2750+ equals (NetworkManagerDeviceStateReason .gsmSimNotInserted));
2751+ expect (client.devices[44 ].stateReason.reason,
2752+ equals (NetworkManagerDeviceStateReason .gsmSimPinRequired));
2753+ expect (client.devices[45 ].stateReason.reason,
2754+ equals (NetworkManagerDeviceStateReason .gsmSimPukRequired));
2755+ expect (client.devices[46 ].stateReason.reason,
2756+ equals (NetworkManagerDeviceStateReason .gsmSimWrong));
2757+ expect (client.devices[47 ].stateReason.reason,
2758+ equals (NetworkManagerDeviceStateReason .infinibandMode));
2759+ expect (client.devices[48 ].stateReason.reason,
2760+ equals (NetworkManagerDeviceStateReason .dependencyFailed));
2761+ expect (client.devices[49 ].stateReason.reason,
2762+ equals (NetworkManagerDeviceStateReason .br2684Failed));
2763+ expect (client.devices[50 ].stateReason.reason,
2764+ equals (NetworkManagerDeviceStateReason .modemManagerUnavailable));
2765+ expect (client.devices[51 ].stateReason.reason,
2766+ equals (NetworkManagerDeviceStateReason .ssidNotFound));
2767+ expect (client.devices[52 ].stateReason.reason,
2768+ equals (NetworkManagerDeviceStateReason .secondaryConnectionFailed));
2769+ expect (client.devices[53 ].stateReason.reason,
2770+ equals (NetworkManagerDeviceStateReason .dcbFcoeFailed));
2771+ expect (client.devices[54 ].stateReason.reason,
2772+ equals (NetworkManagerDeviceStateReason .teamdControlFailed));
2773+ expect (client.devices[55 ].stateReason.reason,
2774+ equals (NetworkManagerDeviceStateReason .modemFailed));
2775+ expect (client.devices[56 ].stateReason.reason,
2776+ equals (NetworkManagerDeviceStateReason .modemAvailable));
2777+ expect (client.devices[57 ].stateReason.reason,
2778+ equals (NetworkManagerDeviceStateReason .simPinIncorrect));
2779+ expect (client.devices[58 ].stateReason.reason,
2780+ equals (NetworkManagerDeviceStateReason .newActivation));
2781+ expect (client.devices[59 ].stateReason.reason,
2782+ equals (NetworkManagerDeviceStateReason .parentChanged));
2783+ expect (client.devices[60 ].stateReason.reason,
2784+ equals (NetworkManagerDeviceStateReason .parentManagedChanged));
2785+ expect (client.devices[61 ].stateReason.reason,
2786+ equals (NetworkManagerDeviceStateReason .ovsdbFailed));
2787+ expect (client.devices[62 ].stateReason.reason,
2788+ equals (NetworkManagerDeviceStateReason .ipAddressDuplicate));
2789+ expect (client.devices[63 ].stateReason.reason,
2790+ equals (NetworkManagerDeviceStateReason .ipMethodUnsupported));
2791+ expect (client.devices[64 ].stateReason.reason,
2792+ equals (NetworkManagerDeviceStateReason .sriovConfigurationFailed));
2793+ expect (client.devices[65 ].stateReason.reason,
2794+ equals (NetworkManagerDeviceStateReason .peerNotFound));
2795+ expect (client.devices[66 ].stateReason.reason,
2796+ equals (NetworkManagerDeviceStateReason .none));
2797+ expect (client.devices[67 ].stateReason.reason,
2798+ equals (NetworkManagerDeviceStateReason .unknown));
2799+ });
2800+
26432801 test ('device statistics' , () async {
26442802 var server = DBusServer ();
26452803 addTearDown (() async => await server.close ());
0 commit comments