1#!/usr/bin/env python3
2#
3#   Copyright 2016 - The Android Open Source Project
4#
5#   Licensed under the Apache License, Version 2.0 (the "License");
6#   you may not use this file except in compliance with the License.
7#   You may obtain a copy of the License at
8#
9#       http://www.apache.org/licenses/LICENSE-2.0
10#
11#   Unless required by applicable law or agreed to in writing, software
12#   distributed under the License is distributed on an "AS IS" BASIS,
13#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14#   See the License for the specific language governing permissions and
15#   limitations under the License.
16"""
17Sanity tests for voice tests in telephony
18"""
19
20from acts.controllers.anritsu_lib._anritsu_utils import AnritsuError
21from acts.controllers.anritsu_lib.md8475a import CBCHSetup
22from acts.controllers.anritsu_lib.md8475a import CTCHSetup
23from acts.controllers.anritsu_lib.md8475a import MD8475A
24from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_CATEGORY_AMBER
25from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_CATEGORY_EXTREME
26from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_CATEGORY_PRESIDENTIAL
27from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_CERTIANTY_LIKELY
28from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_RESPONSETYPE_EVACUATE
29from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_RESPONSETYPE_MONITOR
30from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_RESPONSETYPE_SHELTER
31from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_SEVERITY_EXTREME
32from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_URGENCY_IMMEDIATE
33from acts_contrib.test_utils.tel.anritsu_utils import CMAS_C2K_CERTIANTY_OBSERVED
34from acts_contrib.test_utils.tel.anritsu_utils import CMAS_MESSAGE_CHILD_ABDUCTION_EMERGENCY
35from acts_contrib.test_utils.tel.anritsu_utils import CMAS_MESSAGE_EXTREME_IMMEDIATE_LIKELY
36from acts_contrib.test_utils.tel.anritsu_utils import CMAS_MESSAGE_PRESIDENTIAL_ALERT
37from acts_contrib.test_utils.tel.anritsu_utils import cb_serial_number
38from acts_contrib.test_utils.tel.anritsu_utils import cmas_receive_verify_message_cdma1x
39from acts_contrib.test_utils.tel.anritsu_utils import cmas_receive_verify_message_lte_wcdma
40from acts_contrib.test_utils.tel.anritsu_utils import set_system_model_1x
41from acts_contrib.test_utils.tel.anritsu_utils import set_system_model_1x_evdo
42from acts_contrib.test_utils.tel.anritsu_utils import set_system_model_lte
43from acts_contrib.test_utils.tel.anritsu_utils import set_system_model_gsm
44from acts_contrib.test_utils.tel.anritsu_utils import set_system_model_wcdma
45from acts_contrib.test_utils.tel.anritsu_utils import set_usim_parameters
46from acts_contrib.test_utils.tel.anritsu_utils import set_post_sim_params
47from acts_contrib.test_utils.tel.tel_defines import NETWORK_MODE_CDMA
48from acts_contrib.test_utils.tel.tel_defines import NETWORK_MODE_GSM_ONLY
49from acts_contrib.test_utils.tel.tel_defines import NETWORK_MODE_GSM_UMTS
50from acts_contrib.test_utils.tel.tel_defines import NETWORK_MODE_LTE_GSM_WCDMA
51from acts_contrib.test_utils.tel.tel_defines import RAT_1XRTT
52from acts_contrib.test_utils.tel.tel_defines import RAT_LTE
53from acts_contrib.test_utils.tel.tel_defines import RAT_GSM
54from acts_contrib.test_utils.tel.tel_defines import RAT_WCDMA
55from acts_contrib.test_utils.tel.tel_defines import RAT_FAMILY_CDMA2000
56from acts_contrib.test_utils.tel.tel_defines import RAT_FAMILY_GSM
57from acts_contrib.test_utils.tel.tel_defines import RAT_FAMILY_LTE
58from acts_contrib.test_utils.tel.tel_defines import RAT_FAMILY_UMTS
59from acts_contrib.test_utils.tel.tel_logging_utils import start_qxdm_loggers
60from acts_contrib.test_utils.tel.tel_phone_setup_utils import ensure_network_rat
61from acts_contrib.test_utils.tel.tel_phone_setup_utils import ensure_phones_idle
62from acts_contrib.test_utils.tel.tel_test_utils import toggle_airplane_mode
63from acts_contrib.test_utils.tel.TelephonyBaseTest import TelephonyBaseTest
64from acts.test_decorators import test_tracker_info
65
66WAIT_TIME_BETWEEN_REG_AND_MSG = 15  # default 15 sec
67
68
69class TelLabCmasTest(TelephonyBaseTest):
70    SERIAL_NO = cb_serial_number()
71
72    def setup_class(self):
73        super().setup_class()
74        self.ad = self.android_devices[0]
75        self.ad.sim_card = getattr(self.ad, "sim_card", None)
76        self.md8475a_ip_address = self.user_params[
77            "anritsu_md8475a_ip_address"]
78        self.wlan_option = self.user_params.get("anritsu_wlan_option", False)
79        self.md8475_version = self.user_params.get("md8475", "A")
80        self.wait_time_between_reg_and_msg = self.user_params.get(
81            "wait_time_between_reg_and_msg", WAIT_TIME_BETWEEN_REG_AND_MSG)
82
83        try:
84            self.anritsu = MD8475A(self.md8475a_ip_address, self.wlan_option,
85                                   self.md8475_version)
86        except AnritsuError:
87            self.log.error("Error in connecting to Anritsu Simulator")
88            return False
89        return True
90
91    def setup_test(self):
92        if getattr(self, "qxdm_log", True):
93            start_qxdm_loggers(self.log, self.android_devices)
94        ensure_phones_idle(self.log, self.android_devices)
95        toggle_airplane_mode(self.log, self.ad, True)
96        self.ad.adb.shell("logcat -c -b all", ignore_status=True)
97        return True
98
99    def teardown_test(self):
100        self.log.info("Stopping Simulation")
101        self.anritsu.stop_simulation()
102        toggle_airplane_mode(self.log, self.ad, True)
103        return True
104
105    def teardown_class(self):
106        self.anritsu.disconnect()
107        return True
108
109    def _send_receive_cmas_message(
110            self,
111            set_simulation_func,
112            rat,
113            message_id,
114            warning_message,
115            c2k_response_type=CMAS_C2K_RESPONSETYPE_SHELTER,
116            c2k_severity=CMAS_C2K_SEVERITY_EXTREME,
117            c2k_urgency=CMAS_C2K_URGENCY_IMMEDIATE,
118            c2k_certainty=CMAS_C2K_CERTIANTY_OBSERVED):
119        try:
120            [self.bts1] = set_simulation_func(self.anritsu, self.user_params,
121                                              self.ad.sim_card)
122            set_usim_parameters(self.anritsu, self.ad.sim_card)
123            if rat == RAT_LTE:
124                set_post_sim_params(self.anritsu, self.user_params,
125                                    self.ad.sim_card)
126            self.anritsu.start_simulation()
127
128            if rat == RAT_LTE:
129                preferred_network_setting = NETWORK_MODE_LTE_GSM_WCDMA
130                rat_family = RAT_FAMILY_LTE
131            elif rat == RAT_WCDMA:
132                self.bts1.wcdma_ctch = CTCHSetup.CTCH_ENABLE
133                self.ad.droid.telephonyToggleDataConnection(False)
134                preferred_network_setting = NETWORK_MODE_GSM_UMTS
135                rat_family = RAT_FAMILY_UMTS
136            elif rat == RAT_GSM:
137                self.bts1.gsm_cbch = CBCHSetup.CBCH_ENABLE
138                self.ad.droid.telephonyToggleDataConnection(False)
139                preferred_network_setting = NETWORK_MODE_GSM_ONLY
140                rat_family = RAT_FAMILY_GSM
141            elif rat == RAT_1XRTT:
142                self.ad.droid.telephonyToggleDataConnection(False)
143                preferred_network_setting = NETWORK_MODE_CDMA
144                rat_family = RAT_FAMILY_CDMA2000
145            else:
146                self.log.error("No valid RAT provided for CMAS test.")
147                return False
148
149            if not ensure_network_rat(self.log,
150                                      self.ad,
151                                      preferred_network_setting,
152                                      rat_family,
153                                      toggle_apm_after_setting=True):
154                self.log.error(
155                    "Failed to set rat family {}, preferred network:{}".format(
156                        rat_family, preferred_network_setting))
157                return False
158
159            self.anritsu.wait_for_registration_state()
160            if rat != RAT_1XRTT:
161                if not cmas_receive_verify_message_lte_wcdma(
162                        self.log, self.ad, self.anritsu,
163                        next(TelLabCmasTest.SERIAL_NO), message_id,
164                        warning_message):
165                    self.log.warning(
166                        "Phone {} Failed to receive CMAS message".format(
167                            self.ad.serial))
168                    # Another check of logcat before confirming failure
169                    if self.ad.search_logcat(warning_message):
170                        self.ad.log.info(
171                            "Confirmed from Logcat - User received %s",
172                            warning_message)
173                        return True
174                    return False
175            else:
176                if not cmas_receive_verify_message_cdma1x(
177                        self.log, self.ad, self.anritsu,
178                        next(TelLabCmasTest.SERIAL_NO), message_id,
179                        warning_message, c2k_response_type, c2k_severity,
180                        c2k_urgency, c2k_certainty):
181                    self.log.warning(
182                        "Phone {} Failed to receive CMAS message".format(
183                            self.ad.serial))
184                    if self.ad.search_logcat(warning_message):
185                        self.ad.log.info(
186                            "Confirmed from Logcat - User received %s",
187                            warning_message)
188                        return True
189                    return False
190        except AnritsuError as e:
191            self.log.error("Error in connection with Anritsu Simulator: " +
192                           str(e))
193            return False
194        except Exception as e:
195            self.log.error("Exception during CMAS send/receive: " + str(e))
196            return False
197        return True
198
199    def test_carrier_tmobile(self):
200        """ Sets the Carrier to TMO.
201        Returns: None
202        """
203        setattr(self.ad, "sim_card", "FiTMO")
204
205    def test_carrier_sprint(self):
206        """ Sets the Carrier to SPR.
207        Returns: None
208        """
209        setattr(self.ad, "sim_card", "FiSPR")
210
211    def test_carrier_uscc(self):
212        """ Sets the Carrier to USCC.
213        Returns: None
214        """
215        setattr(self.ad, "sim_card", "FiUSCC")
216
217    """ Tests Begin """
218
219    @test_tracker_info(uuid="e5ddf562-e94b-4b58-bc7d-6635c01f290e")
220    @TelephonyBaseTest.tel_test_wrap
221    def test_cmas_presidential_alert_lte(self):
222        """CMAS Presidential alert message reception on LTE
223
224        Tests the capability of device to receive and inform the user
225        about the CMAS presedential alert message when camped on LTE newtork
226
227        Steps:
228        1. Make Sure Phone is camped on LTE network
229        2. Send CMAS Presidential message from Anritsu
230
231        Expected Result:
232        Phone receives CMAS Presidential alert message
233
234        Returns:
235            True if pass; False if fail
236        """
237        return self._send_receive_cmas_message(
238            set_system_model_lte, RAT_LTE, CMAS_MESSAGE_PRESIDENTIAL_ALERT,
239            "LTE CMAS Presidential Alert")
240
241    @test_tracker_info(uuid="33be2aaa-e8a6-4832-afea-8bd7e5555cc7")
242    @TelephonyBaseTest.tel_test_wrap
243    def test_cmas_extreme_immediate_likely_lte(self):
244        """CMAS Extreme immediate likely message reception on LTE
245
246        Tests the capability of device to receive and inform the user
247        about the Extreme immediate likely message when camped on LTE newtork
248
249        1. Make Sure Phone is camped on LTE network
250        2. Send CMAS Extreme immediate likely message from Anritsu
251
252        Expected Result:
253        Phone receives CMAS Extreme immediate likely message
254
255        Returns:
256            True if pass; False if fail
257        """
258        return self._send_receive_cmas_message(
259            set_system_model_lte, RAT_LTE,
260            CMAS_MESSAGE_EXTREME_IMMEDIATE_LIKELY,
261            "LTE CMAS Extreme Immediate Likely")
262
263    @test_tracker_info(uuid="111d3b0b-020a-4818-9681-e46d1d4d61fd")
264    @TelephonyBaseTest.tel_test_wrap
265    def test_cmas_child_abduction_emergency_lte(self):
266        """CMAS Child abduction emergency message reception on LTE
267
268        Tests the capability of device to receive and inform the user
269        about the CMAS Child abduction emergency message when camped on LTE newtork
270
271        1. Make Sure Phone is camped on LTE network
272        2. Send CMAS Child abduction emergency message from Anritsu
273
274        Expected Result:
275        Phone receives CMAS Child abduction emergency message
276
277        Returns:
278            True if pass; False if fail
279        """
280        return self._send_receive_cmas_message(
281            set_system_model_lte, RAT_LTE,
282            CMAS_MESSAGE_CHILD_ABDUCTION_EMERGENCY,
283            "LTE CMAS Child abduction Alert")
284
285    @test_tracker_info(uuid="df5676b2-cfab-4d64-8c51-ed2b95642dce")
286    @TelephonyBaseTest.tel_test_wrap
287    def test_cmas_presidential_alert_wcdma(self):
288        """CMAS Presidential alert message reception on WCDMA
289
290        Tests the capability of device to receive and inform the user
291        about the CMAS presedential alert message when camped on WCDMA newtork
292
293        Steps:
294        1. Make Sure Phone is camped on WCDMA network
295        2. Send CMAS Presidential message from Anritsu
296
297        Expected Result:
298        Phone receives CMAS Presidential alert message
299
300        Returns:
301            True if pass; False if fail
302        """
303        return self._send_receive_cmas_message(
304            set_system_model_wcdma, RAT_WCDMA, CMAS_MESSAGE_PRESIDENTIAL_ALERT,
305            "WCDMA CMAS Presidential Alert")
306
307    @test_tracker_info(uuid="954544cc-75e8-408b-a5a5-4d820d0e0b3d")
308    @TelephonyBaseTest.tel_test_wrap
309    def test_cmas_extreme_immediate_likely_wcdma(self):
310        """CMAS Extreme immediate likely message reception on WCDMA
311
312        Tests the capability of device to receive and inform the user
313        about the Extreme immediate likely message when camped on WCDMA newtork
314
315        1. Make Sure Phone is camped on WCDMA network
316        2. Send CMAS Extreme immediate likely message from Anritsu
317
318        Expected Result:
319        Phone receives CMAS Extreme immediate likely message
320
321        Returns:
322            True if pass; False if fail
323        """
324        return self._send_receive_cmas_message(
325            set_system_model_wcdma, RAT_WCDMA,
326            CMAS_MESSAGE_EXTREME_IMMEDIATE_LIKELY,
327            "WCDMA CMAS Extreme Immediate Likely")
328
329    @test_tracker_info(uuid="8c681524-b217-422b-9b45-0dea9b30deed")
330    @TelephonyBaseTest.tel_test_wrap
331    def test_cmas_child_abduction_emergency_wcdma(self):
332        """CMAS Child abduction emergency message reception on WCDMA
333
334        Tests the capability of device to receive and inform the user
335        about the CMAS Child abduction emergency message when camped on WCDMA newtork
336
337        1. Make Sure Phone is camped on WCDMA network
338        2. Send CMAS Child abduction emergency message from Anritsu
339
340        Expected Result:
341        Phone receives CMAS Child abduction emergency message
342
343        Returns:
344            True if pass; False if fail
345        """
346        return self._send_receive_cmas_message(
347            set_system_model_wcdma, RAT_WCDMA,
348            CMAS_MESSAGE_CHILD_ABDUCTION_EMERGENCY,
349            "WCDMA CMAS Child abduction Alert")
350
351    @test_tracker_info(uuid="44b0c8c5-b5f4-4fe0-b62f-6586bd37c728")
352    @TelephonyBaseTest.tel_test_wrap
353    def test_cmas_presidential_alert_1x(self):
354        """CMAS Presidential alert message reception on 1x
355
356        Tests the capability of device to receive and inform the user
357        about the CMAS presedential alert message when camped on 1x newtork
358
359        Steps:
360        1. Make Sure Phone is camped on 1x network
361        2. Send CMAS Presidential message from Anritsu
362
363        Expected Result:
364        Phone receives CMAS Presidential alert message
365
366        Returns:
367            True if pass; False if fail
368        """
369        return self._send_receive_cmas_message(set_system_model_1x, RAT_1XRTT,
370                                               CMAS_C2K_CATEGORY_PRESIDENTIAL,
371                                               "1X CMAS Presidential Alert")
372
373    @test_tracker_info(uuid="67cccd46-4cce-47b2-9cba-a24abe7aedc5")
374    @TelephonyBaseTest.tel_test_wrap
375    def test_cmas_extreme_immediate_likely_1x(self):
376        """CMAS Extreme immediate likely message reception on 1x
377
378        Tests the capability of device to receive and inform the user
379        about the Extreme immediate likely message when camped on 1x newtork
380
381        1. Make Sure Phone is camped on 1x network
382        2. Send CMAS Extreme immediate likely message from Anritsu
383
384        Expected Result:
385        Phone receives CMAS Extreme immediate likely message
386
387        Returns:
388            True if pass; False if fail
389        """
390        return self._send_receive_cmas_message(
391            set_system_model_1x, RAT_1XRTT, CMAS_C2K_CATEGORY_EXTREME,
392            "1X CMAS Extreme Immediate Likely", CMAS_C2K_RESPONSETYPE_EVACUATE,
393            CMAS_C2K_SEVERITY_EXTREME, CMAS_C2K_URGENCY_IMMEDIATE,
394            CMAS_C2K_CERTIANTY_LIKELY)
395
396    @test_tracker_info(uuid="4053c54b-cda8-456a-8bce-5483732c9aee")
397    @TelephonyBaseTest.tel_test_wrap
398    def test_cmas_child_abduction_emergency_1x(self):
399        """CMAS Child abduction emergency message reception on 1x
400
401        Tests the capability of device to receive and inform the user
402        about the CMAS Child abduction emergency message when camped on 1x newtork
403
404        1. Make Sure Phone is camped on 1x network
405        2. Send CMAS Child abduction emergency message from Anritsu
406
407        Expected Result:
408        Phone receives CMAS Child abduction emergency message
409
410        Returns:
411            True if pass; False if fail
412        """
413        return self._send_receive_cmas_message(
414            set_system_model_1x, RAT_1XRTT, CMAS_C2K_CATEGORY_AMBER,
415            "1X CMAS Child abduction Alert", CMAS_C2K_RESPONSETYPE_MONITOR,
416            CMAS_C2K_SEVERITY_EXTREME, CMAS_C2K_URGENCY_IMMEDIATE,
417            CMAS_C2K_CERTIANTY_OBSERVED)
418
419    @test_tracker_info(uuid="95e4643b-3387-41ce-ac24-8db3a8f96557")
420    @TelephonyBaseTest.tel_test_wrap
421    def test_cmas_presidential_alert_1x_evdo(self):
422        """CMAS Presidential alert message reception on 1x with EVDO
423
424        Tests the capability of device to receive and inform the user
425        about the CMAS presedential alert message when camped on 1x newtork
426
427        Steps:
428        1. Make Sure Phone is camped on 1x network with EVDO
429        2. Send CMAS Presidential message from Anritsu
430
431        Expected Result:
432        Phone receives CMAS Presidential alert message
433
434        Returns:
435            True if pass; False if fail
436        """
437        return self._send_receive_cmas_message(set_system_model_1x_evdo,
438                                               RAT_1XRTT,
439                                               CMAS_C2K_CATEGORY_PRESIDENTIAL,
440                                               "1X CMAS Presidential Alert")
441
442    @test_tracker_info(uuid="d1283544-81d0-4852-9387-c94826794896")
443    @TelephonyBaseTest.tel_test_wrap
444    def test_cmas_extreme_immediate_likely_1x_evdo(self):
445        """CMAS Extreme immediate likely message reception on 1x with EVDO
446
447        Tests the capability of device to receive and inform the user
448        about the Extreme immediate likely message when camped on 1x newtork
449
450        1. Make Sure Phone is camped on 1x network with EVDO
451        2. Send CMAS Extreme immediate likely message from Anritsu
452
453        Expected Result:
454        Phone receives CMAS Extreme immediate likely message
455
456        Returns:
457            True if pass; False if fail
458        """
459        return self._send_receive_cmas_message(
460            set_system_model_1x_evdo, RAT_1XRTT, CMAS_C2K_CATEGORY_EXTREME,
461            "1X CMAS Extreme Immediate Likely", CMAS_C2K_RESPONSETYPE_EVACUATE,
462            CMAS_C2K_SEVERITY_EXTREME, CMAS_C2K_URGENCY_IMMEDIATE,
463            CMAS_C2K_CERTIANTY_LIKELY)
464
465    @test_tracker_info(uuid="8ae7027e-77ec-4c9b-88e5-c20caef007a5")
466    @TelephonyBaseTest.tel_test_wrap
467    def test_cmas_child_abduction_emergency_1x_evdo(self):
468        """CMAS Child abduction emergency message reception on 1x with EVDO
469
470        Tests the capability of device to receive and inform the user
471        about the CMAS Child abduction emergency message when camped on 1x newtork
472
473        1. Make Sure Phone is camped on 1x network
474        2. Send CMAS Child abduction emergency message from Anritsu
475
476        Expected Result:
477        Phone receives CMAS Child abduction emergency message
478
479        Returns:
480            True if pass; False if fail
481        """
482        return self._send_receive_cmas_message(
483            set_system_model_1x_evdo, RAT_1XRTT, CMAS_C2K_CATEGORY_AMBER,
484            "1X CMAS Child abduction Alert", CMAS_C2K_RESPONSETYPE_MONITOR,
485            CMAS_C2K_SEVERITY_EXTREME, CMAS_C2K_URGENCY_IMMEDIATE,
486            CMAS_C2K_CERTIANTY_OBSERVED)
487
488    @test_tracker_info(uuid="7e4ab36b-4e9b-4bdf-bdb8-8356103a3e79")
489    @TelephonyBaseTest.tel_test_wrap
490    def test_cmas_presidential_alert_gsm(self):
491        """CMAS Presidential alert message reception on GSM
492
493        Tests the capability of device to receive and inform the user
494        about the CMAS presedential alert message when camped on GSM newtork
495
496        Steps:
497        1. Make Sure Phone is camped on GSM network
498        2. Send CMAS Presidential message from Anritsu
499
500        Expected Result:
501        Phone receives CMAS Presidential alert message
502
503        Returns:
504            True if pass; False if fail
505        """
506        return self._send_receive_cmas_message(
507            set_system_model_gsm, RAT_GSM, CMAS_MESSAGE_PRESIDENTIAL_ALERT,
508            "GSM CMAS Presidential Alert")
509
510    @test_tracker_info(uuid="c6d6b57b-c915-46e3-acbe-4d7f8cd6e52e")
511    @TelephonyBaseTest.tel_test_wrap
512    def test_cmas_extreme_immediate_likely_gsm(self):
513        """CMAS Extreme immediate likely message reception on GSM
514
515        Tests the capability of device to receive and inform the user
516        about the Extreme immediate likely message when camped on GSM newtork
517
518        1. Make Sure Phone is camped on GSM network
519        2. Send CMAS Extreme immediate likely message from Anritsu
520
521        Expected Result:
522        Phone receives CMAS Extreme immediate likely message
523
524        Returns:
525            True if pass; False if fail
526        """
527        return self._send_receive_cmas_message(
528            set_system_model_gsm, RAT_GSM,
529            CMAS_MESSAGE_EXTREME_IMMEDIATE_LIKELY,
530            "GSM CMAS Extreme Immediate Likely")
531
532    @test_tracker_info(uuid="eb0a51de-f5fa-4b66-b0c2-21320fca44ca")
533    @TelephonyBaseTest.tel_test_wrap
534    def test_cmas_child_abduction_emergency_gsm(self):
535        """CMAS Child abduction emergency message reception on GSM
536
537        Tests the capability of device to receive and inform the user
538        about the CMAS Child abduction emergency message when camped on GSM newtork
539
540        1. Make Sure Phone is camped on GSM network
541        2. Send CMAS Child abduction emergency message from Anritsu
542
543        Expected Result:
544        Phone receives CMAS Child abduction emergency message
545
546        Returns:
547            True if pass; False if fail
548        """
549        return self._send_receive_cmas_message(
550            set_system_model_gsm, RAT_GSM,
551            CMAS_MESSAGE_CHILD_ABDUCTION_EMERGENCY,
552            "GSM CMAS Child abduction Alert")
553
554    """ Tests End """
555