@@ -767,3 +767,43 @@ TEST_F(TestAT_CellularNetwork, test_AT_CellularNetwork_set_packet_domain_event_r
767
767
EXPECT_TRUE (NSAPI_ERROR_DEVICE_ERROR == cn.set_packet_domain_event_reporting (true ));
768
768
EXPECT_TRUE (NSAPI_ERROR_DEVICE_ERROR == cn.set_packet_domain_event_reporting (false ));
769
769
}
770
+
771
+ TEST_F (TestAT_CellularNetwork, test_AT_CellularNetwork_is_active_context)
772
+ {
773
+ EventQueue que;
774
+ FileHandle_stub fh1;
775
+ ATHandler at (&fh1, que, 0 , " ," );
776
+
777
+ AT_CellularNetwork cn (at);
778
+
779
+ // No contexts
780
+ int active_contexts = -1 ;
781
+ EXPECT_FALSE (cn.is_active_context (&active_contexts));
782
+ EXPECT_EQ (0 , active_contexts);
783
+
784
+ // Active contexts
785
+ ATHandler_stub::resp_info_true_counter = 2 ;
786
+ ATHandler_stub::int_count = 4 ;
787
+ ATHandler_stub::int_valid_count_table[3 ] = 0 ; // ctx 0
788
+ ATHandler_stub::int_valid_count_table[2 ] = 0 ; // ctx 0 inactive
789
+ ATHandler_stub::int_valid_count_table[1 ] = 1 ; // ctx 1
790
+ ATHandler_stub::int_valid_count_table[0 ] = 1 ; // ctx 1 active
791
+
792
+ EXPECT_TRUE (cn.is_active_context (&active_contexts));
793
+ EXPECT_EQ (1 , active_contexts);
794
+
795
+ ATHandler_stub::resp_info_true_counter = 2 ;
796
+ ATHandler_stub::int_count = 4 ;
797
+ EXPECT_FALSE (cn.is_active_context (&active_contexts, 0 ));
798
+ EXPECT_EQ (1 , active_contexts);
799
+
800
+ ATHandler_stub::resp_info_true_counter = 2 ;
801
+ ATHandler_stub::int_count = 4 ;
802
+ EXPECT_TRUE (cn.is_active_context (&active_contexts, 1 ));
803
+ EXPECT_EQ (1 , active_contexts);
804
+
805
+ ATHandler_stub::resp_info_true_counter = 2 ;
806
+ ATHandler_stub::int_count = 4 ;
807
+ EXPECT_TRUE (cn.is_active_context (NULL , 1 ));
808
+ EXPECT_EQ (1 , active_contexts);
809
+ }
0 commit comments