Exemple #1
0
    def test_should_write_1_when_on(self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value

        drip_governor.start_dripping()

        my_mock_serial.write.assert_called_with("1")
Exemple #2
0
    def test_should_close_the_connection(self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value

        drip_governor.close()

        my_mock_serial.close.assert_called_with()
Exemple #3
0
    def test_should_be_able_to_toggle_on_and_off(self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value
        drip_governor.start_dripping()
        drip_governor.stop_dripping()

        drip_governor.start_dripping()

        my_mock_serial.write.assert_called_with("1")
Exemple #4
0
    def test_should_write_a_1_when_already_off_and_on_requested(
            self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value
        drip_governor.stop_dripping()

        drip_governor.start_dripping()

        my_mock_serial.write.assert_called_with("1")
Exemple #5
0
    def test_should_not_write_a_0_when_already_off(self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value
        drip_governor.stop_dripping()
        self.assertEqual(1, my_mock_serial.write.call_count, "Setup failed")

        drip_governor.stop_dripping()

        self.assertEqual(1, my_mock_serial.write.call_count)
Exemple #6
0
    def test_should_call_off_periodically(self, mock_Serial):
        drip_governor = DripGovernor('COM4', 10)
        my_mock_serial = mock_Serial.return_value

        drip_governor.stop_dripping()
        time.sleep(0.011)
        drip_governor.stop_dripping()

        self.assertEqual(2, my_mock_serial.write.call_count)
Exemple #7
0
    def test_should_write_a_0_when_already_on_and_off_requested(
            self, mock_Serial):
        drip_governor = DripGovernor('COM4')
        my_mock_serial = mock_Serial.return_value
        drip_governor.start_dripping()
        self.assertEqual(1, my_mock_serial.write.call_count, "Setup failed")

        drip_governor.stop_dripping()

        my_mock_serial.write.assert_called_with("0")
Exemple #8
0
drip_governor = None

if TRACE:
    log_level = 'TRACE'
else:
    log_level = 'INFO'

log = Logging(level=log_level)

# Parse command line arguments
if len(sys.argv) == 4:
    tuning_filename, wave_file_name, cue_file_name = sys.argv[1:]
elif len(sys.argv) == 5:
    from util.drip_governor import DripGovernor
    tuning_filename, wave_file_name, cue_file_name, port = sys.argv[1:]
    drip_governor = DripGovernor(port)
    print('importing drip gov')
else:
    print("Usage: %s <tuning.dat> <output.wav> <output.cue>" % sys.argv[0])
    sys.exit(1)

# Loading tuning parameters
tuning_collection = TuningParameterFileHandler.read_from_file(tuning_filename)

# Open the wave file
wave_file = wave.open(wave_file_name, 'rb')
if not wave_file.getnchannels() == 2:
    log.error("Error: wave file must be in stereo (2 channels)")
    sys.exit(1)
if not wave_file.getsampwidth() == 2:
    log.error("Error: wave file must be 16-bit")
Exemple #9
0
    def test_should_create_a_connection(self, mock_Serial):
        drip_governor = DripGovernor('COM4')

        self.assertTrue(mock_Serial.call_args[0] == ('COM4', 9600))