def run_loop(base, pause, config): am = config["am"] pm = config["pm"] exposureCalc1 = exposureCalc(am, pm) current_milli_time = lambda: int(round(time.time() * 1000)) print("Pause : " + str(pause)) while True: hoursMinutes = int(time.strftime("%H%M")) exposureMode = exposureCalc1.get_exposure(hoursMinutes) take_shot = exposureCalc1.take_shot(hoursMinutes) if (take_shot == True): now = datetime.now() path = prepare_dir(base, now) mili = str(current_milli_time()) name = path.replace("/", "_") + "_" + mili + ".jpg" print("Capturing " + name + " in " + exposureMode + " mode") file_name = base + "/" + path + "/" + name os_command = make_os_command(config, exposureMode, file_name) os.system(os_command) print("Written: " + file_name) else: print("Shot cancelled during hours of darkness") time.sleep(pause)
def run_loop(base, pause, config): am = config["am"] pm = config["pm"] exposureCalc1= exposureCalc(am, pm) current_milli_time = lambda: int(round(time.time() * 1000)) print("Pause : " + str(pause)) while True: hoursMinutes = int(time.strftime("%H%M")) exposureMode = exposureCalc1.get_exposure(hoursMinutes) take_shot = exposureCalc1.take_shot(hoursMinutes) if (take_shot == True): now = datetime.now() path = prepare_dir(base, now) mili = str(current_milli_time()) name=path.replace("/", "_") + "_" + mili + ".jpg" print("Capturing " + name + " in " + exposureMode + " mode") file_name = base + "/" + path + "/" + name os_command = make_os_command(config, exposureMode, file_name) os.system(os_command) print("Written: " + file_name) else: print("Shot cancelled during hours of darkness") time.sleep(pause)
def test_exposureCalc_lowerBounds_noshot(self): am = 500 pm = 2000 exposureCalc1= exposureCalc(am, pm) hoursMinutes = 400 take_shot = exposureCalc1.take_shot(hoursMinutes) self.assertEquals(False, take_shot)
def test_take_shot_rangetest(self): exp=exposureCalc(700, 1700) for x in range(0,2300): val = exp.take_shot(x) # print(str(x) + " = (x) = " + str(val)) if(x >= 700 and x <= 1700): self.assertTrue(val) else: self.assertFalse(val)
def test_take_shot(self): exp=exposureCalc(700,1700) self.assertEqual(exp.take_shot(1700), True) self.assertEqual(exp.take_shot(1245), True) self.assertEqual(exp.take_shot(700), True) self.assertEqual(exp.take_shot(699), False) self.assertEqual(exp.take_shot(0), False) self.assertEqual(exp.take_shot(500), False) self.assertEqual(exp.take_shot(2100), False)
def run_loop(base, pause, config): am = config["am"] pm = config["pm"] exposureCalc1 = exposureCalc(am, pm) current_milli_time = lambda: int(round(time.time() * 1000)) print("Pause : " + str(pause)) while True: hoursMinutes = int(time.strftime("%H%M")) exposureMode = exposureCalc1.get_exposure(hoursMinutes) take_shot = exposureCalc1.take_shot(hoursMinutes) if (take_shot == True): now = datetime.now() path = prepare_dir(base, now) mili = str(current_milli_time()) name = path.replace("/", "_") + "_" + mili + ".jpg" print("Capturing " + name + " in " + exposureMode + " mode") file_name = base + "/" + path + "/" + name os_command = make_os_command(config, exposureMode, file_name) os.system(os_command) print("Written: " + file_name) try: ''' additional lines for dropbox ''' access_token = dropbox_token file_from = file_name file_to = dropbox_app + path + "/" + name upload.DboxUploader(access_token, file_from, file_to).upload_file() except: print("Dropbox is struggling") pass else: print("Shot cancelled during hours of darkness") time.sleep(pause)
def run_loop(base, pause, config, usbPath): am = config["am"] pm = config["pm"] only_use_usb_camera = config["only_use_usb_camera"] exposureCalc1 = exposureCalc(am, pm) current_milli_time = lambda: int(round(time.time() * 1000)) print("Pause : " + str(pause)) while True: hoursMinutes = int(time.strftime("%H%M")) exposureMode = exposureCalc1.get_exposure(hoursMinutes) take_shot = exposureCalc1.take_shot(hoursMinutes) usb_cam_connected = os.path.exists("/dev/video0") if (take_shot == True): now = datetime.now() path = prepare_dir(base, now) if (only_use_usb_camera == 0): mili = str(current_milli_time()) name = path.replace("/", "_") + "_" + mili + ".jpg" print("Capturing " + name + " in " + exposureMode + " mode") file_name = base + "/" + path + "/" + name os_command = make_os_command(config, exposureMode, file_name) os.system(os_command) print("Written: " + file_name) if (usb_cam_connected == True): path = prepare_dir(usbPath, now) name = usbPath.replace("/", "_") + "_" + mili + ".jpg" file_name = usbPath + "/" + path + "/" + name os_command = "fswebcam -r 1920x1080 --no-banner " + file_name os.system(os_command) else: print("Shot cancelled during hours of darkness") time.sleep(pause)
def test_exposureCalc_upperBounds(self): exposureCalc1=exposureCalc(700,1700) self.assertEqual(exposureCalc1.get_exposure(1700), "auto")
def test_exposureCalc_rangetest(self): exp=exposureCalc(700, 1700) for x in range(0,2300): value = exp.get_exposure(x) self.assertTrue(value in ('auto','night'), 'value: ' + str(value) + ' not in collection')
def test_exposureCalc_outsideLowerBounds(self): exposureCalc1=exposureCalc(700,1700) self.assertEqual(exposureCalc1.get_exposure(600), "night")
def test_exposureCalc_middleBounds(self): exposureCalc1=exposureCalc(700,1700) self.assertEqual(exposureCalc1.get_exposure(1245), "auto")