예제 #1
0
    def test_user_gesture_not_exist_fail(self):
        # Lock
        logger.info("[TESTING] test_user_gesture_not_exist_fail...")
        args = parseArgs([
            "-m", "-a", "create", "-p", "testuser", "-f",
            f"{TEST_IMAGE_DIR}/test_face.jpg", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/foobar.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_4.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 17

        # Unlock
        args = parseArgs([
            "-m", "-a", "create", "-p", "testuser", "-f",
            f"{TEST_IMAGE_DIR}/test_face.jpg", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_3.jpg",
            f"{TEST_IMAGE_DIR}/foobar.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 17
예제 #2
0
    def test_user_gesture_rule_broken_fail_on_create(self):
        logger.info(
            "[TESTING] test_user_gesture_rule_broken_fail_on_create...")
        args = parseArgs([
            "-m", "-a", "create", "-p", "testuser", "-f",
            f"{TEST_IMAGE_DIR}/test_face.jpg", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_4.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 20

        args = parseArgs([
            "-m", "-a", "create", "-p", "testuser", "-f",
            f"{TEST_IMAGE_DIR}/test_face.jpg", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 21

        args = parseArgs([
            "-m", "-a", "create", "-p", "testuser", "-f",
            f"{TEST_IMAGE_DIR}/test_face.jpg", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 22
예제 #3
0
 def test_user_edit_no_username_fail(self):
     logger.info("[TESTING] test_user_edit_no_username_fail...")
     args = parseArgs(
         ["-m", "-a", "edit", "-f", f"{TEST_IMAGE_DIR}/foobar.jpg"])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 13
예제 #4
0
 def test_user_edit_face_not_image_fail(self):
     logger.info("[TESTING] test_user_edit_face_not_image_fail...")
     args = parseArgs([
         "-m", "-a", "edit", "-p", "testuser", "-f",
         f"{TEST_IMAGE_DIR}/placeholder.txt"
     ])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 7
예제 #5
0
 def test_user_edit_face_success(self):
     logger.info("[TESTING] test_user_edit_face_success...")
     args = parseArgs([
         "-m", "-a", "edit", "-p", "testuser", "-f",
         f"{TEST_IMAGE_DIR}/test_face.jpg"
     ])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 0
예제 #6
0
    def test_user_edit_lock_success(self):
        logger.info("[TESTING] test_user_edit_lock_success...")
        # Lock Gesture
        args = parseArgs([
            "-m", "-a", "edit", "-p", "testuser", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 0

        # Unlock Gesture
        args = parseArgs([
            "-m", "-a", "edit", "-p", "testuser", "-u",
            f"{TEST_IMAGE_DIR}/test_unlock_4.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_3.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 0

        # All Gesture
        args = parseArgs([
            "-m", "-a", "edit", "-p", "testuser", "-l",
            f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_lock_4.jpg", "-u",
            f"{TEST_IMAGE_DIR}/test_unlock_3.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
            f"{TEST_IMAGE_DIR}/test_unlock_4.jpg"
        ])
        with pytest.raises(SystemExit):
            main(args)
        assert readResponseFile()['CODE'] == 0
예제 #7
0
 def test_user_profile_fail(self):
     logger.info("[TESTING] test_user_profile_fail...")
     args = parseArgs([
         "-m", "-a", "create", "-f", f"{TEST_IMAGE_DIR}/test_face.jpg",
         "-l", f"{TEST_IMAGE_DIR}/test_lock_1.jpg",
         f"{TEST_IMAGE_DIR}/test_lock_2.jpg",
         f"{TEST_IMAGE_DIR}/test_lock_3.jpg",
         f"{TEST_IMAGE_DIR}/test_lock_4.jpg", "-u",
         f"{TEST_IMAGE_DIR}/test_unlock_1.jpg",
         f"{TEST_IMAGE_DIR}/test_unlock_2.jpg",
         f"{TEST_IMAGE_DIR}/test_unlock_3.jpg",
         f"{TEST_IMAGE_DIR}/test_unlock_4.jpg"
     ])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 13
예제 #8
0
 def test_user_delete_user_succeeded(self):
     logger.info("[TESTING] test_user_delete_user_succeeded...")
     args = parseArgs(["-m", "-a", "delete", "-p", "testuser"])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 9
예제 #9
0
 def test_user_delete_user_not_exist_fail(self):
     logger.info("[TESTING] test_user_delete_user_not_exist_fail...")
     args = parseArgs(["-m", "-a", "delete", "-p", "foobar"])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 9
예제 #10
0
 def test_user_delete_username_omitted_fail(self):
     logger.info("[TESTING] test_user_delete_username_omitted_fail...")
     args = parseArgs(["-m", "-a", "delete"])
     with pytest.raises(SystemExit):
         main(args)
     assert readResponseFile()['CODE'] == 13