Пример #1
0
 def test_get_status_by_id_connect(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.return_value =\
             "Connection status: 'connected'"
         subprocess.call.return_value = True
         res = self.cellular.get_status_by_id(0)
         self.assertEqual(res, 1)
Пример #2
0
 def test_get_status_by_id_search_fail(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.return_value =\
             "xxxx"
         subprocess.call.return_value = None
         res = self.cellular.get_status_by_id(0)
         self.assertEqual(res, 2)
Пример #3
0
 def setUp(self, set_pincode_by_id):
     sh.echo("1234, 1234", _out="/run/shm/cellular.tmp")
     try:
         os.unlink(dirpath + "/../data/cellular.json")
     except Exception:
         pass
     set_pincode_by_id.return_value = True
     self.cellular = Cellular(connection=Mockup())
Пример #4
0
 def test_set_offline_by_id_with_no_cid(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.return_value = True
         self.cellular.cid = ""
         self.cellular.pdh = ""
         res = self.cellular.set_offline_by_id(0)
         self.assertEqual(res, True)
Пример #5
0
 def test_get_status_by_id_with_no_cid(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         self.cellular.cid = "1234"
         subprocess.check_output.return_value = True
         subprocess.call.return_value = True
         res = self.cellular.get_status_by_id(0)
         self.assertEqual(res, 2)
Пример #6
0
 def init_game(self):
     screen_size = self.video_driver.getScreenSize()
     self.brick_width = abs(screen_size.X / 11)
     self.brick_height = abs(screen_size.X / 32)
     self.paddle_width = 60
     self.paddle_height = 12
     self.max_paddle_x = screen_size.X - self.paddle_width
     self.max_ball_x = screen_size.X - BALL_DIAMETER
     self.max_ball_y = screen_size.Y - BALL_DIAMETER
     # Paddle X,Y coordinate
     self.paddle_x = (screen_size.X - self.paddle_width) / 2
     self.paddle_y = screen_size.Y - self.paddle_height - 10
     # ball X,Y coordinate
     self.ball_x = self.paddle_x
     self.ball_y = self.paddle_y - BALL_DIAMETER
     self.lives = 3
     self.score = 0
     self.state = STATE_BALL_IN_PADDLE
     self.paddle = recti(self.paddle_x, self.paddle_y,
                         self.paddle_x + self.paddle_width,
                         self.paddle_y + self.paddle_height)
     self.ball = recti(self.ball_x, self.ball_y,
                       self.ball_x + BALL_DIAMETER,
                       self.ball_y + BALL_DIAMETER)
     self.ball_vel = self.ball_vel_default
     #~ self.ball3d.setPosition(vector3df(self.ball_x, self.ball_y, 0))
     # cellular texture generator
     self.cell_paddle = Cellular(self.video_driver, self.paddle_width,
                                 self.paddle_height, 128)
     self.cell_brick = Cellular(self.video_driver, self.brick_width,
                                self.brick_height, 128)
     if not self.texture_paddle:
         self.texture_paddle = self.cell_paddle.get_texture()
     else:
         self.texture_paddle = self.cell_paddle.get_new_texture(
             cellSize=8, density=4.0, rand_range_count=25)
     if not self.texture_brick:
         self.texture_brick = self.cell_brick.get_texture()
     else:
         self.texture_brick = self.cell_brick.get_new_texture(mFact=.5,
                                                              lPower=.5)
     self.create_bricks()
Пример #7
0
 def testCountAliveNeighbours(self):
     cellular = Cellular((3, 3)).initialize(100)
     self.assertEqual(cellular.countLiveNeighbours((0, 0)), 3)
     self.assertEqual(cellular.countLiveNeighbours((1, 0)), 5)
     self.assertEqual(cellular.countLiveNeighbours((2, 0)), 3)
     self.assertEqual(cellular.countLiveNeighbours((0, 1)), 5)
     self.assertEqual(cellular.countLiveNeighbours((1, 1)), 8)
     self.assertEqual(cellular.countLiveNeighbours((2, 1)), 5)
     self.assertEqual(cellular.countLiveNeighbours((0, 2)), 3)
     self.assertEqual(cellular.countLiveNeighbours((1, 2)), 5)
     self.assertEqual(cellular.countLiveNeighbours((2, 2)), 3)
Пример #8
0
    def test_set_online_by_id(self):
        self.cellular = Cellular(connection=Mockup())
        self.cellular.model.db = [{
            'enable': 1,
            'name': 'wwan1',
            'modemPort': '/dev/ttyS0',
            'id': 0,
            'atPort': '/dev/ttyS0',
            'enableAuth': 1,
            'apn': 'internet',
            'authType': 'PAP',
            'username': '******',
            'password': '******'
        }]
        self.cellular.check_dhclient = Mock()
        with patch("cellular.subprocess") as subprocess:
            subprocess.check_output.\
                return_value = "\
                                Packet data handle: '123'\
                                CID: '23'"

            self.cellular.cid = "1234"
            res = self.cellular.set_online_by_id(0)
            self.assertEqual(res, True)
Пример #9
0
 def test_search_subnet(self):
     self.cellular = Cellular(connection=Mockup())
     self.cellular.dhclient_info = self.filetext
     res = self.cellular.search_subnet()
     self.assertEqual(res, '255.255.0.0')
Пример #10
0
 def test_search_ip_fail(self):
     self.cellular = Cellular(connection=Mockup())
     self.cellular.dhclient_info = self.filetext_fail
     res = self.cellular.search_ip()
     self.assertEqual(res, 'N/A')
Пример #11
0
 def test_search_ip(self):
     self.cellular = Cellular(connection=Mockup())
     self.cellular.dhclient_info = self.filetext
     res = self.cellular.search_ip()
     self.assertEqual(res, '192.168.10.26')
Пример #12
0
 def test_search_dns(self):
     self.cellular = Cellular(connection=Mockup())
     self.cellular.dhclient_info = self.filetext
     res = self.cellular.search_dns()
     self.assertEqual(res, ["8.8.8.58", "20.20.20.20", "40.40.4.1"])
Пример #13
0
 def test_search_name(self):
     self.cellular = Cellular(connection=Mockup())
     self.cellular.dhclient_info = self.filetext
     res = self.cellular.search_name()
     self.assertEqual(res, 'eth0')
Пример #14
0
 def test_set_offline_by_id_exception(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.side_effect = Exception
         res = self.cellular.set_offline_by_id(0)
         self.assertFalse(res)
Пример #15
0
 def test_get_signal_by_id_fail(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.return_value = ""
         res = self.cellular.get_signal_by_id(0)
         self.assertEqual(res, 99)
Пример #16
0
 def testInitializeAllDead(self):
     cellular = Cellular((3, 3)).initialize(0)
     self.assertEqual(len([alive for alive in cellular]), 0)
Пример #17
0
    def show(self):
        """Shows maze using pyirrlicht. Outer walls as optional"""
        #~ self.device = createDevice(driverType, dimension2du(800, 600))
        p = SIrrlichtCreationParameters()
        p.DriverType = driverType
        #~ p.Fullscreen = True
        p.WindowSize = dimension2du(800, 600)
        p.AntiAlias = True
        p.WithAlphaChannel = True
        self.device = createDeviceEx(p)
        if self.device:
            self.device.setWindowCaption(
                'Irrlicht Engine - 3D Maze generator, written Dolkar from http://www.python-forum.org'
            )
            self.video_driver = self.device.getVideoDriver()
            self.scene_manager = self.device.getSceneManager()
            self.gui_environment = self.device.getGUIEnvironment()

            gui_font = CGUITTFont(
                self.gui_environment,
                os.environ['SYSTEMROOT'] + '/Fonts/arial.ttf', 20)
            if gui_font:
                self.gui_environment.getSkin().setFont(gui_font)
                gui_font.drop()

            # meta triangle selector
            self.i_meta_triangle_selector = self.scene_manager.createMetaTriangleSelector(
            )

            # cellular texture generator
            self.cell = Cellular(self.video_driver, 128, 128, 128)

            #~ sky_node = self.scene_manager.addSkyDomeSceneNode(generate_texture(self.video_driver))
            m2d = maze2d(self.video_driver, 50, 50, (255, 255, 255),
                         (100, 100, 100))
            sky_node = self.scene_manager.addSkyBoxSceneNode(
                m2d, m2d, m2d, m2d, m2d, m2d)

            # create maze volume
            self.create_level()
            self.create_outer_walls()

            # START SPHERE
            self.sphere_start = self.scene_manager.addSphereSceneNode(
                0.25, position=vector3df(*self.start_cell))
            material1 = self.sphere_start.getMaterial(0)
            material1.EmissiveColor = SColor(255, 0, 255, 0)

            # FINISH SPHERE
            finish_position = vector3df(*self.end_cell)
            self.sphere_finish = self.scene_manager.addSphereSceneNode(
                0.3, id=ID_FINISH_NODE, position=finish_position)
            material2 = self.sphere_finish.getMaterial(0)
            material2.EmissiveColor = SColor(255, 255, 0, 0)
            self.finish_box = aabbox3df(finish_position - 0.5,
                                        finish_position + 0.5)

            keyMap = SKeyMap(10)
            keyMap.set(0, EKA_MOVE_FORWARD, KEY_UP)
            keyMap.set(1, EKA_MOVE_FORWARD, KEY_KEY_W)
            keyMap.set(2, EKA_MOVE_BACKWARD, KEY_DOWN)
            keyMap.set(3, EKA_MOVE_BACKWARD, KEY_KEY_S)
            keyMap.set(4, EKA_STRAFE_LEFT, KEY_LEFT)
            keyMap.set(5, EKA_STRAFE_LEFT, KEY_KEY_A)
            keyMap.set(6, EKA_STRAFE_RIGHT, KEY_RIGHT)
            keyMap.set(7, EKA_STRAFE_RIGHT, KEY_KEY_D)
            keyMap.set(8, EKA_JUMP_UP, KEY_KEY_J)
            keyMap.set(9, EKA_CROUCH, KEY_KEY_C)

            self.camera = self.scene_manager.addCameraSceneNodeFPS(
                moveSpeed=0.005,
                jumpSpeed=0.5,
                keyMapArray=keyMap,
                keyMapSize=keyMap.length)
            self.camera.setPosition(vector3df(*self.start_cell))
            self.camera.setNearValue(0.001)

            self.add_animator_to_camera()

            light_radius = 10.0
            if driverType in (EDT_DIRECT3D8, EDT_DIRECT3D9):
                light_radius = 1.5
            elif driverType == EDT_OPENGL:
                light_radius = 0.1
            light = self.scene_manager.addLightSceneNode(self.camera,
                                                         radius=light_radius)

            #~ collision_manager = self.scene_manager.getSceneCollisionManager()
            self.win_dialog = None

            scolor = SColor(255, 100, 100, 140)
            i_event_receiver = event_receiver()
            i_event_receiver.game = self
            self.device.setEventReceiver(i_event_receiver)
            while self.device.run():
                if self.device.isWindowActive():
                    if i_event_receiver.stop:
                        break
                    if self.video_driver.beginScene(True, True, scolor):
                        try:
                            self.win_dialog.getID()
                        except:
                            self.win_dialog = None
                            self.camera.setInputReceiverEnabled(True)
                        self.scene_manager.drawAll()
                        if self.finish_box.isPointInside(
                                self.camera.getPosition(
                                )) and not self.win_dialog:
                            self.camera.setInputReceiverEnabled(False)
                            self.win_dialog = self.gui_environment.addMessageBox(
                                'Warning', 'You is Winner!!!')
                            #~ self.finish_box.reset(0.1, 0.1, 0.1)
                            self.recreate_level()
                        #~ collision_node = collision_manager.getSceneNodeFromCameraBB(self.camera)
                        #~ if collision_node:
                        #~ if collision_node.getID() == ID_FINISH_NODE:
                        #~ self.gui_environment.addMessageBox('Warning', 'You is Winner!!!')
                        self.gui_environment.drawAll()
                        self.video_driver.endScene()
                    #~ self.device.sleep(10)
                else:
                    self.device.yield_self()
            self.device.drop()
            self.device.closeDevice()
        else:
            print('ERROR createDevice')
Пример #18
0
 def dig(self):
     self._space = Cellular(self._size).initialize(45).update(
         5, 3, 5).areas().biggestArea()
     if not self._space: self._space = set()
     return self
Пример #19
0
 def test_get_cops_by_id_exception(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.modemcmd") as modemcmd:
         modemcmd.side_effect = Exception
         res = self.cellular.get_cops_by_id(0)
         self.assertEqual(res, "Unknown Operator")
Пример #20
0
 def test_get_cops_by_id_fail(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.modemcmd") as modemcmd:
         modemcmd.return_value = ""
         res = self.cellular.get_cops_by_id(0)
         self.assertEqual(res, "Unknown Operator")
Пример #21
0
 def test_search_subnet_fail(self):
     self.cellular = Cellular(connection=Mockup())
     res = self.cellular.search_subnet()
     self.assertEqual(res, 'N/A')
Пример #22
0
 def testInitializeAllAlive(self):
     cellular = Cellular((3, 3)).initialize(100)
     self.assertEqual(len([alive for alive in cellular]), 9)
Пример #23
0
 def setUp(self):
     self.cellular = Cellular(connection=Mockup())
Пример #24
0
 def test_get_cops_by_id(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.modemcmd") as modemcmd:
         modemcmd.return_value = "+COPS: 0,0,\"Chunghwa Telecom\",2\r\nOK"
         res = self.cellular.get_cops_by_id(0)
         self.assertEqual(res, "Chunghwa Telecom")
Пример #25
0
 def dig(self):
     areas = Cellular(self._map.size).initialize(40).update(
         5, 3, 5).areas().connect()
     for c in areas:
         self._map.put(c, '.')
     return self
Пример #26
0
 def test_get_status_by_id_exception(self):
     self.cellular = Cellular(connection=Mockup())
     with patch("cellular.subprocess") as subprocess:
         subprocess.check_output.side_effect = Exception
         res = self.cellular.get_status_by_id(0)
         self.assertEqual(res, 2)