1
1
import struct
2
2
3
- from whombat .api .audio import HEADER_FORMAT , CHUNK_SIZE , load_clip_bytes
3
+ from whombat .api .audio import CHUNK_SIZE , HEADER_FORMAT , load_clip_bytes
4
4
5
5
6
6
def test_load_clip_bytes (random_wav_factory ):
@@ -35,7 +35,7 @@ def test_load_clip_bytes(random_wav_factory):
35
35
assert len (loaded_bytes ) == len (read_bytes )
36
36
assert loaded_bytes == read_bytes
37
37
assert start_ == start
38
- assert end_ == end
38
+ assert end_ == end - 1
39
39
assert filesize == path .stat ().st_size
40
40
41
41
@@ -66,7 +66,7 @@ def test_load_clip_bytes_with_header(random_wav_factory):
66
66
67
67
assert len (loaded_bytes ) == len (read_bytes )
68
68
assert start_ == start
69
- assert end_ == end
69
+ assert end_ == end - 1
70
70
assert filesize == path .stat ().st_size
71
71
72
72
@@ -87,25 +87,21 @@ def test_stream_a_whole_audio_file(random_wav_factory):
87
87
filesize = None
88
88
parts = []
89
89
while True :
90
- end = start + 1024 * 1024
91
-
92
- if filesize is not None and end > filesize :
93
- end = filesize
94
-
95
- part , start , end , filesize = load_clip_bytes (
90
+ part , start , _ , filesize = load_clip_bytes (
96
91
path = path ,
97
92
start = start ,
98
- end = end ,
99
93
)
100
94
parts .append (part )
101
- start = end
95
+ start = start + len ( part )
102
96
103
97
assert filesize == true_filesize
104
98
105
99
if not part or start >= filesize :
106
100
break
107
101
108
- assert b"" .join (parts ) == full_bytes
102
+ streamed = b"" .join (parts )
103
+ assert len (streamed ) == len (full_bytes )
104
+ assert streamed == full_bytes
109
105
110
106
111
107
def test_stream_a_whole_audio_file_with_non_1_speed (random_wav_factory ):
@@ -127,19 +123,13 @@ def test_stream_a_whole_audio_file_with_non_1_speed(random_wav_factory):
127
123
filesize = None
128
124
parts = []
129
125
while True :
130
- end = start + CHUNK_SIZE
131
-
132
- if filesize is not None and end > filesize :
133
- end = filesize
134
-
135
- part , start , end , filesize = load_clip_bytes (
126
+ part , start , _ , filesize = load_clip_bytes (
136
127
path = path ,
137
128
start = start ,
138
- end = end ,
139
129
speed = speed ,
140
130
)
141
131
parts .append (part )
142
- start = end
132
+ start = start + len ( part )
143
133
144
134
assert filesize == true_filesize
145
135
@@ -169,7 +159,7 @@ def test_stream_a_whole_audio_file_with_non_1_speed(random_wav_factory):
169
159
orig_header = struct .unpack (HEADER_FORMAT , full_bytes [:44 ])
170
160
streamed_header = struct .unpack (HEADER_FORMAT , streamed [:44 ])
171
161
172
- for ( field , h1 , h2 ) in zip (fields , orig_header , streamed_header ):
162
+ for field , h1 , h2 in zip (fields , orig_header , streamed_header ):
173
163
if field == "samplerate" :
174
164
assert int (h1 * speed ) == h2
175
165
continue
0 commit comments