Ejemplo n.º 1
0
 def testUpdateMocaDict(self):
     techui = diagui.main.TechUI(None)
     techui.root = dm_root.DeviceModelRoot(None, 'fakecpe', None)
     interface_list = techui.root.Device.MoCA.InterfaceList
     snr = {}
     bitloading = {}
     corrected_cw = {}
     uncorrected_cw = {}
     nbas = {}
     for unused_i, inter in interface_list.iteritems():
         for unused_j, dev in inter.AssociatedDeviceList.iteritems():
             snr[dev.MACAddress] = dev.X_CATAWAMPUS_ORG_RxSNR_dB
             bitloading[dev.MACAddress] = dev.X_CATAWAMPUS_ORG_RxBitloading
             nbas[dev.MACAddress] = dev.X_CATAWAMPUS_ORG_RxNBAS
             corrected = (dev.X_CATAWAMPUS_ORG_RxPrimaryCwCorrected +
                          dev.X_CATAWAMPUS_ORG_RxSecondaryCwCorrected)
             uncorrected = (dev.X_CATAWAMPUS_ORG_RxPrimaryCwUncorrected +
                            dev.X_CATAWAMPUS_ORG_RxSecondaryCwUncorrected)
             no_errors = (dev.X_CATAWAMPUS_ORG_RxPrimaryCwNoErrors +
                          dev.X_CATAWAMPUS_ORG_RxSecondaryCwNoErrors)
             total = corrected + uncorrected + no_errors
             if total > 0:
                 corrected_cw[dev.MACAddress] = corrected / total
                 uncorrected_cw[dev.MACAddress] = uncorrected / total
             else:
                 corrected_cw[dev.MACAddress] = 0
                 uncorrected_cw[dev.MACAddress] = 0
     techui.UpdateMocaDict()
     self.assertEqual(snr, techui.data['moca_signal_strength'])
     self.assertEqual(bitloading, techui.data['moca_bitloading'])
     self.assertEqual(corrected_cw, techui.data['moca_corrected_codewords'])
     self.assertEqual(uncorrected_cw,
                      techui.data['moca_uncorrected_codewords'])
     self.assertEqual(nbas, techui.data['moca_nbas'])
Ejemplo n.º 2
0
    def testNoSignals(self):
        techui = diagui.main.TechUI(None)
        wlan0 = dm.fakewifi.FakeWifiWlanConfiguration()
        wlan1 = object()
        techui.root = dm_root.DeviceModelRoot(None, 'fakecpe', None)
        lans = techui.root.InternetGatewayDevice.LANDeviceList
        lans['1'].WLANConfigurationList = {
            '1': wlan0,
            '2': wlan1,
        }
        wlan0.signals = {'11:22:33:44:55:66': -66}

        techui.UpdateWifiDict()
        self.assertEquals(techui.data['wifi_signal_strength'],
                          {'11:22:33:44:55:66': -66})
Ejemplo n.º 3
0
 def getCpe(self):
   dm_root.PLATFORMDIR = '../platform'
   root = dm_root.DeviceModelRoot(self.io_loop, 'fakecpe')
   cpe = api.CPE(root)
   dldir = tempfile.mkdtemp()
   self.removedirs.append(dldir)
   cfdir = tempfile.mkdtemp()
   self.removedirs.append(cfdir)
   cpe.download_manager.SetDirectories(config_dir=cfdir, download_dir=dldir)
   cpe_machine = http.Listen(ip=None, port=0,
                             ping_path='/ping/http_test',
                             acs=None, cpe=cpe, cpe_listener=False,
                             platform_config=MockPlatformConfig(),
                             ioloop=self.io_loop)
   return cpe_machine
Ejemplo n.º 4
0
  def testAddManagementServer(self):
    root = dm_root.DeviceModelRoot(loop=None, platform=None)
    mgmt = MockManagement()
    root.add_management_server(mgmt)  # should do nothing.

    root.Device = MockTr181()
    root.InternetGatewayDevice = MockTr98()
    root.Export(objects=['Device', 'InternetGatewayDevice'])
    self.assertFalse(isinstance(root.InternetGatewayDevice.ManagementServer,
                                BASE98.ManagementServer))
    self.assertFalse(isinstance(root.Device.ManagementServer,
                                BASE181.ManagementServer))
    root.add_management_server(mgmt)  # should do nothing.
    self.assertTrue(isinstance(root.InternetGatewayDevice.ManagementServer,
                               BASE98.ManagementServer))
    self.assertTrue(isinstance(root.Device.ManagementServer,
                               BASE181.ManagementServer))
Ejemplo n.º 5
0
    def testAddManagementServer(self):
        root = dm_root.DeviceModelRoot(loop=None,
                                       platform=None,
                                       ext_dir='ext_test')
        mgmt = MockManagement()
        root.add_management_server(mgmt)  # should do nothing.

        root.device = MockDevice()
        root.Device = MockTr181()
        root.InternetGatewayDevice = MockTr98()
        root.Export(objects=['Device', 'InternetGatewayDevice'])
        root.add_cwmp_extensions()
        self.assertFalse(
            isinstance(root.InternetGatewayDevice.ManagementServer,
                       BASE98.ManagementServer))
        self.assertFalse(
            isinstance(root.Device.ManagementServer, BASE181.ManagementServer))
        root.add_management_server(mgmt)  # should actually work now
        print type(root.InternetGatewayDevice.ManagementServer)
        self.assertTrue(
            isinstance(root.InternetGatewayDevice.ManagementServer,
                       BASE98.ManagementServer))
        print type(root.Device.ManagementServer)
        self.assertTrue(
            isinstance(root.Device.ManagementServer, BASE181.ManagementServer))
        self.assertEqual(root.TestBaseExt, True)
        self.assertEqual(root.TestSubExt, 97)  # auto-rounded to int

        # Make sure aliasing is working as expected
        root.X_CATAWAMPUS_ORG_CATAWAMPUS.Experiments.Requested = 'test1'
        self.assertEqual(
            root.X_CATAWAMPUS_ORG_CATAWAMPUS.Experiments.Requested, 'test1')
        self.assertEqual(root.Device.X_CATAWAMPUS_ORG.Experiments.Requested,
                         'test1')
        self.assertTrue(
            os.path.exists(
                os.path.join(tr.experiment.ACTIVEDIR, 'test1.requested')))
Ejemplo n.º 6
0
    def testExperiments(self):
        # Test that isostream experiments don't raise exceptions when set;
        # this is a regression test for b/26829780.
        #
        # TODO(willangley): I see this as analogous to tr.handle.ValidateExports.
        # It's currently one-off for dm.isostream, but my hope is that we can
        # graduate this to something that lives in tr.experiment in a later CL, and
        # make this available to tests for all modules that declare experiments.

        root = dm_root.DeviceModelRoot(loop=None,
                                       platform=None,
                                       ext_dir='ext_test')
        mgmt = MockManagement()
        root.device = MockDevice()
        root.Device = MockTr181()
        root.InternetGatewayDevice = MockTr98()
        root.Export(objects=['Device', 'InternetGatewayDevice'])
        root.add_cwmp_extensions()
        root.add_management_server(mgmt)

        # Make sure we've only imported the isostream module once.
        self.assertEqual(type(root.Device.X_CATAWAMPUS_ORG.Isostream),
                         dm.isostream.Isostream)

        avail = root.X_CATAWAMPUS_ORG_CATAWAMPUS.Experiments.Available
        isostream_experiments = [
            ex for ex in avail.split(',') if 'Isostream' in ex
        ]
        try:
            old_is_storage_box = dm.isostream.IS_STORAGE_BOX[0]
            for cmd in ['true', 'false']:
                dm.isostream.IS_STORAGE_BOX[0] = cmd
                for exp in isostream_experiments:
                    root.X_CATAWAMPUS_ORG_CATAWAMPUS.Experiments.Requested = exp
        finally:
            dm.isostream.IS_STORAGE_BOX[0] = old_is_storage_box
Ejemplo n.º 7
0
 def testValidateExports(self):
     r = dm_root.DeviceModelRoot(None, None, None)
     tr.handle.ValidateExports(r)