Files
Auto-GPT/tests/test_audio_text_read_audio_from_file.py
Nicholas Tindle acfd966aa4 Pass Configs to Commands and remove CFG = Config() in the commands/ folder (#4328)
* feat: pass config to call_ai_functions in coimmands

* feat: config for read_audio_from_file

* feat: file operations cfg

NOTE: we replaced the CFG in the command enable with TRUE b/c not sure how to handle this yet

* feat: git command conversion

* feat: google search

* feat: image generation

* feat: extract cfg from browser commands

* feat: remove cfg from execute code commands

* fix: file operation related tests

* fix: linting

* fix: tests for read_audio

* fix: test error

* feat: update cassettes

* fix: linting

* fix: test typechecking

* fix: google_search errors if unexpected kw arg is passed

* fix: pass config param to google search test

* fix: agent commands were broken + cassettes

* fix: agent test

* feat: cassettes

* feat: enable/disable logic for commands

* fix: some commands threw errors

* feat: fix tests

* Add new cassettes

* Add new cassettes

* ci: trigger ci

* Update autogpt/commands/execute_code.py

Co-authored-by: Reinier van der Leer <github@pwuts.nl>

* fix prompt

* fix prompt + rebase

* add config remove useless imports

* put back CFG just for download file

* lint

* The signature should be mandatory in the decorator

* black isort

* fix: remove the CFG

* fix: non typed arg

* lint: type some args

* lint: add types for libraries

* Add new cassettes

* fix: windows compatibility

* fix: add config access to decorator

* fix: remove twitter mention

* DDGS search works at 3.0.2 version

* ci: linting

---------

Co-authored-by: Auto-GPT-Bot <github-bot@agpt.co>
Co-authored-by: merwanehamadi <merwanehamadi@gmail.com>
Co-authored-by: Reinier van der Leer <github@pwuts.nl>
Co-authored-by: kinance <kinance@gmail.com>
2023-05-26 08:39:25 -07:00

56 lines
1.8 KiB
Python

# Date: 2023-5-13
# Author: Generated by GoCodeo.
from unittest.mock import mock_open, patch
import pytest
from autogpt.commands.audio_text import read_audio_from_file
from autogpt.config import Config
@pytest.fixture
def mock_read_audio(mocker):
return mocker.patch("autogpt.commands.audio_text.read_audio")
class TestReadAudioFromFile:
def test_positive_read_audio_from_file(self, mock_read_audio):
# Positive test
mock_read_audio.return_value = "This is a sample text."
mock_file_data = b"Audio data"
m = mock_open(read_data=mock_file_data)
with patch("builtins.open", m):
result = read_audio_from_file("test_audio.wav", Config())
assert result == "This is a sample text."
m.assert_called_once_with("test_audio.wav", "rb")
def test_negative_read_audio_from_file(self, mock_read_audio):
# Negative test
mock_read_audio.return_value = "This is a sample text."
mock_file_data = b"Audio data"
m = mock_open(read_data=mock_file_data)
with patch("builtins.open", m):
result = read_audio_from_file("test_audio.wav", Config())
assert result != "Incorrect text."
m.assert_called_once_with("test_audio.wav", "rb")
def test_error_read_audio_from_file(self):
# Error test
with pytest.raises(FileNotFoundError):
read_audio_from_file("non_existent_file.wav", Config())
def test_edge_empty_audio_file(self, mock_read_audio):
# Edge test
mock_read_audio.return_value = ""
mock_file_data = b""
m = mock_open(read_data=mock_file_data)
with patch("builtins.open", m):
result = read_audio_from_file("empty_audio.wav", Config())
assert result == ""
m.assert_called_once_with("empty_audio.wav", "rb")