Skip to content

Commit 64c0ed4

Browse files
authored
expo-av to expo-video and expo-audio (#1029)
* Migrate from expo-av * test fix * mocks to fix tests
1 parent 87fb5fe commit 64c0ed4

11 files changed

Lines changed: 419 additions & 621 deletions

File tree

example/src/VideoPlayerExample.tsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,15 @@ const VideoPlayerExample: React.FC = () => {
1919
resizeMode="cover"
2020
/>
2121
</Section>
22-
<Section style={{}} title="VideoPlayer (Silent mode)">
22+
<Section style={{}} title="VideoPlayer (plays silent mode, low volume)">
2323
<VideoPlayer
2424
style={{ width: 350, height: 250 }}
2525
source={{
2626
uri: "http://static.draftbit.com/videos/intro-to-draftbit.mp4",
2727
}}
2828
useNativeControls
2929
resizeMode="cover"
30+
volume={0.3}
3031
playsInSilentModeIOS={true}
3132
/>
3233
</Section>
@@ -35,11 +36,11 @@ const VideoPlayerExample: React.FC = () => {
3536
ref={videoPlayerRef}
3637
style={{ width: 350, height: 250 }}
3738
source={{
38-
uri: "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4",
39+
uri: "https://ia601903.us.archive.org/32/items/BigBuckBunny_328/BigBuckBunny_512kb.mp4",
3940
}}
4041
useNativeControls={false}
4142
posterSource={{
42-
uri: "https://commondatastorage.googleapis.com/gtv-videos-bucket/sample/images/BigBuckBunny.jpg",
43+
uri: "https://upload.wikimedia.org/wikipedia/commons/7/70/Big.Buck.Bunny.-.Opening.Screen.png",
4344
}}
4445
usePoster
4546
onPlaybackStatusUpdate={(status) => setPlayerState(status)}

packages/core/jest-setup.js

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,42 @@ jest.mock("expo-font", () => ({
3030
isLoaded: jest.fn(() => true),
3131
isLoading: jest.fn(() => false),
3232
}));
33+
34+
jest.mock("expo-audio", () => ({
35+
useAudioPlayer: jest.fn(() => ({
36+
loop: false,
37+
volume: 1.0,
38+
playing: false,
39+
paused: true,
40+
muted: false,
41+
isLoaded: false,
42+
isBuffering: false,
43+
currentTime: 0,
44+
duration: 0,
45+
play: jest.fn(),
46+
pause: jest.fn(),
47+
seekTo: jest.fn(),
48+
replace: jest.fn(),
49+
addListener: jest.fn(() => ({ remove: jest.fn() })),
50+
})),
51+
setAudioModeAsync: jest.fn(() => Promise.resolve()),
52+
}));
53+
54+
jest.mock("expo-video", () => ({
55+
useVideoPlayer: jest.fn(() => ({
56+
loop: false,
57+
muted: false,
58+
volume: 1.0,
59+
playbackRate: 1.0,
60+
playing: false,
61+
status: "idle",
62+
currentTime: 0,
63+
duration: 0,
64+
bufferedPosition: 0,
65+
play: jest.fn(),
66+
pause: jest.fn(),
67+
replace: jest.fn(),
68+
addListener: jest.fn(() => ({ remove: jest.fn() })),
69+
})),
70+
VideoView: "VideoView",
71+
}));

packages/core/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@
5757
"color": "^4.2.3",
5858
"date-fns": "^4.1.0",
5959
"dateformat": "^5.0.3",
60-
"expo-av": "~16.0.8",
60+
"expo-video": "~3.0.16",
61+
"expo-audio": "~1.1.1",
6162
"expo-image": "~3.0.11",
6263
"lodash.isequal": "^4.5.0",
6364
"lodash.isnumber": "^3.0.3",

packages/core/src/__tests__/components/AudioPlayer.test.skip.tsx

Lines changed: 0 additions & 220 deletions
This file was deleted.

0 commit comments

Comments
 (0)