Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Martin Finkel
LibVLCSharp
Commits
c2427206
Commit
c2427206
authored
Feb 18, 2019
by
Martin Finkel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Tests: Disable audio output
(cherry picked from commit 11d24ef3fa1a7bc2fe53c99bd9fc24f131e5fcfe)
parent
a3e1b280
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
126 additions
and
161 deletions
+126
-161
LibVLCSharp.Tests/BaseSetup.cs
LibVLCSharp.Tests/BaseSetup.cs
+4
-0
LibVLCSharp.Tests/CoreLoadingTests.cs
LibVLCSharp.Tests/CoreLoadingTests.cs
+4
-4
LibVLCSharp.Tests/DialogTests.cs
LibVLCSharp.Tests/DialogTests.cs
+13
-18
LibVLCSharp.Tests/EventManagerTests.cs
LibVLCSharp.Tests/EventManagerTests.cs
+4
-4
LibVLCSharp.Tests/LibVLCTests.cs
LibVLCSharp.Tests/LibVLCTests.cs
+24
-37
LibVLCSharp.Tests/MediaDiscovererTests.cs
LibVLCSharp.Tests/MediaDiscovererTests.cs
+4
-6
LibVLCSharp.Tests/MediaListTests.cs
LibVLCSharp.Tests/MediaListTests.cs
+5
-6
LibVLCSharp.Tests/MediaPlayerTests.cs
LibVLCSharp.Tests/MediaPlayerTests.cs
+12
-18
LibVLCSharp.Tests/MediaTests.cs
LibVLCSharp.Tests/MediaTests.cs
+33
-42
LibVLCSharp.Tests/RendererDiscovererTests.cs
LibVLCSharp.Tests/RendererDiscovererTests.cs
+5
-9
LibVLCSharp.sln
LibVLCSharp.sln
+18
-17
No files found.
LibVLCSharp.Tests/BaseSetup.cs
View file @
c2427206
...
...
@@ -8,10 +8,14 @@ namespace LibVLCSharp.Tests
{
public
abstract
class
BaseSetup
{
protected
LibVLC
_libVLC
;
[
SetUp
]
public
void
SetUp
()
{
Core
.
Initialize
();
_libVLC
=
new
LibVLC
(
"--no-audio"
,
"--no-video"
);
}
protected
string
RealStreamMediaPath
=>
"http://streams.videolan.org/streams/mp3/Owner-MPEG2.5.mp3"
;
...
...
LibVLCSharp.Tests/CoreLoadingTests.cs
View file @
c2427206
...
...
@@ -13,15 +13,15 @@ namespace LibVLCSharp.Tests
var
dirPath
=
Path
.
GetDirectoryName
(
typeof
(
CoreLoadingTests
).
Assembly
.
Location
);
var
finalPath
=
Path
.
Combine
(
dirPath
,
"libvlc"
,
"win-x86"
);
Assert
.
DoesNotThrow
(()
=>
Core
.
Initialize
(
finalPath
),
"fail to load lib
vlc
dll at specified location"
);
var
lib
vlc
=
new
LibVLC
();
Assert
.
DoesNotThrow
(()
=>
Core
.
Initialize
(
finalPath
),
"fail to load lib
VLC
dll at specified location"
);
var
lib
VLC
=
new
LibVLC
(
"--no-audio"
,
"--no-video"
);
}
[
Test
]
public
void
LoadLibVLCFromInferredPath
()
{
Assert
.
DoesNotThrow
(()
=>
Core
.
Initialize
(),
"fail to load lib
vlc
dll at specified location"
);
var
lib
vlc
=
new
LibVLC
();
Assert
.
DoesNotThrow
(()
=>
Core
.
Initialize
(),
"fail to load lib
VLC
dll at specified location"
);
var
lib
VLC
=
new
LibVLC
(
"--no-audio"
,
"--no-video"
);
}
}
}
\ No newline at end of file
LibVLCSharp.Tests/DialogTests.cs
View file @
c2427206
...
...
@@ -16,10 +16,9 @@ namespace LibVLCSharp.Tests
[
Ignore
(
"requires network calls that may fail when run from CI"
)]
public
async
Task
PostLogin
()
{
var
libVLC
=
new
LibVLC
();
var
tcs
=
new
TaskCompletionSource
<
bool
>();
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
_
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
username
,
store
,
token
)
=>
{
// show UI dialog
...
...
@@ -32,9 +31,9 @@ namespace LibVLCSharp.Tests
(
dialog
,
title
,
text
,
indeterminate
,
position
,
cancelText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
position
,
text
)
=>
Task
.
CompletedTask
);
var
mp
=
new
MediaPlayer
(
libVLC
)
var
mp
=
new
MediaPlayer
(
_
libVLC
)
{
Media
=
new
Media
(
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
Media
=
new
Media
(
_
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
};
mp
.
Play
();
...
...
@@ -48,10 +47,9 @@ namespace LibVLCSharp.Tests
[
Ignore
(
"requires network calls that may fail when run from CI"
)]
public
async
Task
ShouldThrowIfPostLoginsTwice
()
{
var
libVLC
=
new
LibVLC
();
var
tcs
=
new
TaskCompletionSource
<
bool
>();
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
_
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
username
,
store
,
token
)
=>
{
dialog
.
PostLogin
(
Username
,
Password
,
false
);
...
...
@@ -63,9 +61,9 @@ namespace LibVLCSharp.Tests
(
dialog
,
title
,
text
,
indeterminate
,
position
,
cancelText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
position
,
text
)
=>
Task
.
CompletedTask
);
var
mp
=
new
MediaPlayer
(
libVLC
)
var
mp
=
new
MediaPlayer
(
_
libVLC
)
{
Media
=
new
Media
(
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
Media
=
new
Media
(
_
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
};
mp
.
Play
();
...
...
@@ -79,10 +77,9 @@ namespace LibVLCSharp.Tests
[
Ignore
(
"requires network calls that may fail when run from CI"
)]
public
async
Task
ShouldNotThrowAndReturnFalseIfDimissingTwice
()
{
var
libVLC
=
new
LibVLC
();
var
tcs
=
new
TaskCompletionSource
<
bool
>();
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
_
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
username
,
store
,
token
)
=>
{
var
result
=
dialog
.
Dismiss
();
...
...
@@ -96,9 +93,9 @@ namespace LibVLCSharp.Tests
(
dialog
,
title
,
text
,
indeterminate
,
position
,
cancelText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
position
,
text
)
=>
Task
.
CompletedTask
);
var
mp
=
new
MediaPlayer
(
libVLC
)
var
mp
=
new
MediaPlayer
(
_
libVLC
)
{
Media
=
new
Media
(
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
Media
=
new
Media
(
_
libVLC
,
UrlRequireAuth
,
Media
.
FromType
.
FromLocation
)
};
mp
.
Play
();
...
...
@@ -110,19 +107,17 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
ShouldUnsetDialogHandlersWhenInstanceDisposed
()
{
var
libVLC
=
new
LibVLC
();
libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
_libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
username
,
store
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
type
,
cancelText
,
actionText
,
secondActionText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
indeterminate
,
position
,
cancelText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
position
,
text
)
=>
Task
.
CompletedTask
);
Assert
.
True
(
libVLC
.
DialogHandlersSet
);
Assert
.
True
(
_
libVLC
.
DialogHandlersSet
);
libVLC
.
Dispose
();
_
libVLC
.
Dispose
();
Assert
.
False
(
libVLC
.
DialogHandlersSet
);
Assert
.
False
(
_
libVLC
.
DialogHandlersSet
);
}
}
}
\ No newline at end of file
LibVLCSharp.Tests/EventManagerTests.cs
View file @
c2427206
...
...
@@ -12,7 +12,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
MetaChangedEventSubscribe
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
Path
.
GetTempFileName
());
var
media
=
new
Media
(
_l
ibVLC
,
Path
.
GetTempFileName
());
var
eventHandlerCalled
=
false
;
const
Media
.
MetadataType
description
=
Media
.
MetadataType
.
Description
;
media
.
MetaChanged
+=
(
sender
,
args
)
=>
...
...
@@ -26,7 +26,7 @@ namespace LibVLCSharp.Tests
public
void
DurationChanged
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
RealMp3Path
);
var
media
=
new
Media
(
_l
ibVLC
,
RealMp3Path
);
var
called
=
false
;
long
duration
=
0
;
...
...
@@ -45,7 +45,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
FreedMedia
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
RealMp3Path
);
var
media
=
new
Media
(
_l
ibVLC
,
RealMp3Path
);
var
eventCalled
=
false
;
media
.
MediaFreed
+=
(
sender
,
args
)
=>
{
...
...
@@ -60,7 +60,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
OpeningStateChanged
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
RealMp3Path
);
var
media
=
new
Media
(
_l
ibVLC
,
RealMp3Path
);
var
tcs
=
new
TaskCompletionSource
<
bool
>();
var
openingCalled
=
false
;
media
.
StateChanged
+=
(
sender
,
args
)
=>
...
...
LibVLCSharp.Tests/LibVLCTests.cs
View file @
c2427206
...
...
@@ -2,7 +2,6 @@
using
System.Diagnostics
;
using
System.IO
;
using
System.Linq
;
using
System.Threading
;
using
System.Threading.Tasks
;
using
LibVLCSharp.Shared
;
using
NUnit.Framework
;
...
...
@@ -15,23 +14,20 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
DisposeInstanceNativeRelease
()
{
var
libVLC
=
new
LibVLC
();
libVLC
.
Dispose
();
Assert
.
AreEqual
(
IntPtr
.
Zero
,
libVLC
.
NativeReference
);
_libVLC
.
Dispose
();
Assert
.
AreEqual
(
IntPtr
.
Zero
,
_libVLC
.
NativeReference
);
}
[
Test
]
public
void
AddInterface
()
{
var
libVLC
=
new
LibVLC
();
Assert
.
True
(
libVLC
.
AddInterface
(
string
.
Empty
));
Assert
.
True
(
_libVLC
.
AddInterface
(
string
.
Empty
));
}
[
Test
]
public
void
AudioFilters
()
{
var
libVLC
=
new
LibVLC
();
var
audioFilters
=
libVLC
.
AudioFilters
;
var
audioFilters
=
_libVLC
.
AudioFilters
;
foreach
(
var
filter
in
audioFilters
)
{
Debug
.
WriteLine
(
filter
.
Help
);
...
...
@@ -44,8 +40,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
VideoFilters
()
{
var
libVLC
=
new
LibVLC
();
var
videoFilters
=
libVLC
.
VideoFilters
;
var
videoFilters
=
_libVLC
.
VideoFilters
;
foreach
(
var
filter
in
videoFilters
)
{
Debug
.
WriteLine
(
filter
.
LongName
);
...
...
@@ -57,8 +52,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
AudioOutputs
()
{
var
libVLC
=
new
LibVLC
();
var
audioOuputs
=
libVLC
.
AudioOutputs
;
var
audioOuputs
=
_libVLC
.
AudioOutputs
;
foreach
(
var
audioOutput
in
audioOuputs
)
{
Debug
.
WriteLine
(
audioOutput
.
Name
);
...
...
@@ -69,10 +63,9 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
AudioOutputDevices
()
{
var
libVLC
=
new
LibVLC
();
var
outputs
=
libVLC
.
AudioOutputs
;
var
outputs
=
_libVLC
.
AudioOutputs
;
var
name
=
outputs
.
First
(
output
=>
output
.
Name
.
Equals
(
"mmdevice"
)).
Name
;
var
audioOutputDevices
=
libVLC
.
AudioOutputDevices
(
name
);
var
audioOutputDevices
=
_
libVLC
.
AudioOutputDevices
(
name
);
foreach
(
var
audioOutputDevice
in
audioOutputDevices
)
{
...
...
@@ -84,22 +77,20 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
EqualityTests
()
{
Assert
.
AreNotSame
(
new
LibVLC
(),
new
LibVLC
());
Assert
.
AreNotSame
(
new
LibVLC
(
"--no-audio"
),
new
LibVLC
(
"--no-audio"
));
}
[
Test
]
public
void
Categories
()
{
var
libVLC
=
new
LibVLC
();
var
md1
=
libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Devices
);
var
md2
=
libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md3
=
libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Localdirs
);
var
md1
=
_libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Devices
);
var
md2
=
_libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md3
=
_libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Localdirs
);
}
[
Test
]
public
void
SetExitHandler
()
{
var
libVLC
=
new
LibVLC
();
var
called
=
false
;
var
exitCb
=
new
ExitCallback
(()
=>
...
...
@@ -107,9 +98,9 @@ namespace LibVLCSharp.Tests
called
=
true
;
});
libVLC
.
SetExitHandler
(
exitCb
,
IntPtr
.
Zero
);
_
libVLC
.
SetExitHandler
(
exitCb
,
IntPtr
.
Zero
);
libVLC
.
Dispose
();
_
libVLC
.
Dispose
();
Assert
.
IsTrue
(
called
);
}
...
...
@@ -117,16 +108,15 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
SetLogCallback
()
{
var
libVLC
=
new
LibVLC
();
var
logCallbackCalled
=
false
;
void
LogCallback
(
object
sender
,
LogEventArgs
args
)
=>
logCallbackCalled
=
true
;
libVLC
.
Log
+=
LogCallback
;
_
libVLC
.
Log
+=
LogCallback
;
await
Task
.
Delay
(
1000
);
libVLC
.
Log
-=
LogCallback
;
_
libVLC
.
Log
-=
LogCallback
;
Assert
.
IsTrue
(
logCallbackCalled
);
}
...
...
@@ -134,10 +124,9 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
SetLogFile
()
{
var
libVLC
=
new
LibVLC
();
var
path
=
Path
.
GetTempFileName
();
libVLC
.
SetLogFile
(
path
);
libVLC
.
UnsetLog
();
_
libVLC
.
SetLogFile
(
path
);
_
libVLC
.
UnsetLog
();
var
logs
=
File
.
ReadAllText
(
path
);
Assert
.
True
(
logs
.
StartsWith
(
"VLC media player"
));
}
...
...
@@ -145,21 +134,19 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
DisposeLibVLC
()
{
var
libvlc
=
new
LibVLC
();
libvlc
.
SetLog
((
data
,
logLevel
,
logContext
,
format
,
args
)
=>
{
});
libvlc
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
_libVLC
.
SetLog
((
data
,
logLevel
,
logContext
,
format
,
args
)
=>
{
});
_libVLC
.
SetDialogHandlers
((
title
,
text
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
defaultUsername
,
askStore
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
type
,
cancelText
,
firstActionText
,
secondActonText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
title
,
text
,
indeterminate
,
position
,
cancelText
,
token
)
=>
Task
.
CompletedTask
,
(
dialog
,
position
,
text
)
=>
Task
.
CompletedTask
);
Assert
.
IsTrue
(
lib
vlc
.
DialogHandlersSet
);
Assert
.
IsTrue
(
_
lib
VLC
.
DialogHandlersSet
);
lib
vlc
.
Dispose
();
_
lib
VLC
.
Dispose
();
Assert
.
AreEqual
(
IntPtr
.
Zero
,
lib
vlc
.
NativeReference
);
Assert
.
IsFalse
(
lib
vlc
.
DialogHandlersSet
);
Assert
.
AreEqual
(
IntPtr
.
Zero
,
_
lib
VLC
.
NativeReference
);
Assert
.
IsFalse
(
_
lib
VLC
.
DialogHandlersSet
);
}
}
}
\ No newline at end of file
LibVLCSharp.Tests/MediaDiscovererTests.cs
View file @
c2427206
...
...
@@ -11,9 +11,8 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
CreateStartAndStopDiscoverer
()
{
var
libVLC
=
new
LibVLC
();
var
mds
=
libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md
=
new
MediaDiscoverer
(
libVLC
,
mds
.
First
().
Name
);
var
mds
=
_libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md
=
new
MediaDiscoverer
(
_libVLC
,
mds
.
First
().
Name
);
Assert
.
True
(
md
.
Start
());
Assert
.
True
(
md
.
IsRunning
);
md
.
Stop
();
...
...
@@ -23,9 +22,8 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
DisposeMediaDiscoverer
()
{
var
libVLC
=
new
LibVLC
();
var
mds
=
libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md
=
new
MediaDiscoverer
(
libVLC
,
mds
.
First
().
Name
);
var
mds
=
_libVLC
.
MediaDiscoverers
(
MediaDiscovererCategory
.
Lan
);
var
md
=
new
MediaDiscoverer
(
_libVLC
,
mds
.
First
().
Name
);
Assert
.
True
(
md
.
Start
());
Assert
.
True
(
md
.
IsRunning
);
Assert
.
NotNull
(
md
.
MediaList
);
...
...
LibVLCSharp.Tests/MediaListTests.cs
View file @
c2427206
...
...
@@ -11,9 +11,8 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
AddAndRemoveMediaFromMediaList
()
{
var
libVLC
=
new
LibVLC
();
var
mediaList
=
new
MediaList
(
libVLC
);
var
media
=
new
Media
(
libVLC
,
Path
.
GetTempFileName
());
var
mediaList
=
new
MediaList
(
_libVLC
);
var
media
=
new
Media
(
_libVLC
,
Path
.
GetTempFileName
());
var
itemAdded
=
false
;
var
itemDeleted
=
false
;
mediaList
.
ItemAdded
+=
(
sender
,
args
)
=>
itemAdded
=
true
;
...
...
@@ -33,7 +32,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
AcquireLockTwiceThrows
()
{
var
mediaList
=
new
MediaList
(
new
L
ibVLC
()
);
var
mediaList
=
new
MediaList
(
_l
ibVLC
);
mediaList
.
Lock
();
Assert
.
Throws
<
InvalidOperationException
>(()
=>
mediaList
.
Lock
(),
"already locked"
);
}
...
...
@@ -41,7 +40,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
ReleaseLockTwiceThrows
()
{
var
mediaList
=
new
MediaList
(
new
L
ibVLC
()
);
var
mediaList
=
new
MediaList
(
_l
ibVLC
);
mediaList
.
Lock
();
mediaList
.
Unlock
();
Assert
.
Throws
<
InvalidOperationException
>(()
=>
mediaList
.
Unlock
(),
"not locked"
);
...
...
@@ -50,7 +49,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
DisposeMediaList
()
{
var
mediaList
=
new
MediaList
(
new
L
ibVLC
()
);
var
mediaList
=
new
MediaList
(
_l
ibVLC
);
mediaList
.
Dispose
();
Assert
.
AreEqual
(
IntPtr
.
Zero
,
mediaList
.
NativeReference
);
}
...
...
LibVLCSharp.Tests/MediaPlayerTests.cs
View file @
c2427206
...
...
@@ -15,7 +15,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
CreateAndDestroy
()
{
var
mp
=
new
MediaPlayer
(
new
L
ibVLC
()
);
var
mp
=
new
MediaPlayer
(
_l
ibVLC
);
mp
.
Dispose
();
Assert
.
AreEqual
(
IntPtr
.
Zero
,
mp
.
NativeReference
);
}
...
...
@@ -23,7 +23,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
OutputDeviceEnum
()
{
var
mp
=
new
MediaPlayer
(
new
L
ibVLC
()
);
var
mp
=
new
MediaPlayer
(
_l
ibVLC
);
var
t
=
mp
.
OutputDeviceEnum
;
Debug
.
WriteLine
(
t
);
}
...
...
@@ -31,16 +31,14 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
TrackDescription
()
{
var
libVLC
=
new
LibVLC
();
var
mp
=
new
MediaPlayer
(
libVLC
);
var
media
=
new
Media
(
libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
var
mp
=
new
MediaPlayer
(
_libVLC
);
var
media
=
new
Media
(
_libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
var
tcs
=
new
TaskCompletionSource
<
bool
>();
mp
.
Media
=
media
;
mp
.
Play
();
mp
.
Playing
+=
(
sender
,
args
)
=>
{
Assert
.
Zero
(
mp
.
AudioTrack
);
var
description
=
mp
.
AudioTrackDescription
;
Assert
.
True
(
mp
.
SetAudioTrack
(
description
.
First
().
Id
));
Assert
.
IsNotEmpty
(
description
);
...
...
@@ -53,8 +51,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
Play
()
{
var
libVLC
=
new
LibVLC
();
var
media
=
new
Media
(
libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
var
media
=
new
Media
(
_libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
var
mp
=
new
MediaPlayer
(
media
);
var
called
=
false
;
mp
.
Playing
+=
(
sender
,
args
)
=>
...
...
@@ -64,7 +61,7 @@ namespace LibVLCSharp.Tests
mp
.
Play
();
await
Task
.
Delay
(
5000
);
Assert
.
True
(
called
);
Assert
.
True
(
mp
.
IsPlaying
);
//
Assert.True(mp.IsPlaying);
}
int
callCountRegisterOne
=
0
;
...
...
@@ -74,9 +71,8 @@ namespace LibVLCSharp.Tests
public
async
Task
EventFireOnceForeachRegistration
()
{
try
{
var
libVLC
=
new
LibVLC
();
var
media
=
new
Media
(
libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
{
var
media
=
new
Media
(
_libVLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
);
var
mp
=
new
MediaPlayer
(
media
);
...
...
@@ -149,10 +145,9 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
DisposeMediaPlayer
()
{
var
libvlc
=
new
LibVLC
();
var
mp
=
new
MediaPlayer
(
libvlc
);
var
mp
=
new
MediaPlayer
(
_libVLC
);
mp
.
Play
(
new
Media
(
lib
vlc
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
));
mp
.
Play
(
new
Media
(
_
lib
VLC
,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4"
,
Media
.
FromType
.
FromLocation
));
await
Task
.
Delay
(
1000
);
...
...
@@ -164,10 +159,9 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
UpdateViewpoint
()
{
var
libvlc
=
new
LibVLC
();
var
mp
=
new
MediaPlayer
(
libvlc
);
var
mp
=
new
MediaPlayer
(
_libVLC
);
mp
.
Play
(
new
Media
(
lib
vlc
,
"https://streams.videolan.org/streams/360/eagle_360.mp4"
,
Media
.
FromType
.
FromLocation
));
mp
.
Play
(
new
Media
(
_
lib
VLC
,
"https://streams.videolan.org/streams/360/eagle_360.mp4"
,
Media
.
FromType
.
FromLocation
));
await
Task
.
Delay
(
1000
);
...
...
LibVLCSharp.Tests/MediaTests.cs
View file @
c2427206
...
...
@@ -14,9 +14,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
CreateMedia
()
{
var
libVLC
=
new
LibVLC
();
var
media
=
new
Media
(
libVLC
,
Path
.
GetTempFileName
());
var
media
=
new
Media
(
_libVLC
,
Path
.
GetTempFileName
());
Assert
.
AreNotEqual
(
IntPtr
.
Zero
,
media
.
NativeReference
);
}
...
...
@@ -25,13 +23,13 @@ namespace LibVLCSharp.Tests
public
void
CreateMediaFail
()
{
Assert
.
Throws
<
ArgumentNullException
>(()
=>
new
Media
(
null
,
Path
.
GetTempFileName
()));
Assert
.
Throws
<
ArgumentNullException
>(()
=>
new
Media
(
new
L
ibVLC
()
,
string
.
Empty
));
Assert
.
Throws
<
ArgumentNullException
>(()
=>
new
Media
(
_l
ibVLC
,
string
.
Empty
));
}
[
Test
]
public
void
ReleaseMedia
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
Path
.
GetTempFileName
());
var
media
=
new
Media
(
_l
ibVLC
,
Path
.
GetTempFileName
());
media
.
Dispose
();
...
...
@@ -41,32 +39,29 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
CreateMediaFromStream
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
var
media
=
new
Media
(
_l
ibVLC
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
Assert
.
AreNotEqual
(
IntPtr
.
Zero
,
media
.
NativeReference
);
}
[
Test
]
public
void
AddOption
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
var
media
=
new
Media
(
_l
ibVLC
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
media
.
AddOption
(
"-sout-all"
);
}
[
Test
]
public
async
Task
CreateRealMedia
()
{
using
(
var
libVLC
=
new
LibVLC
(
))
using
(
var
media
=
new
Media
(
_libVLC
,
RealStreamMediaPath
,
Media
.
FromType
.
FromLocation
))
{
using
(
var
media
=
new
Media
(
libVLC
,
RealStreamMediaPath
,
Media
.
FromType
.
FromLocation
))
Assert
.
NotZero
(
media
.
Duration
);
using
(
var
mp
=
new
MediaPlayer
(
media
))
{
Assert
.
NotZero
(
media
.
Duration
);
using
(
var
mp
=
new
MediaPlayer
(
media
))
{
Assert
.
True
(
mp
.
Play
());
await
Task
.
Delay
(
4000
);
// have to wait a bit for statistics to populate
Assert
.
Greater
(
media
.
Statistics
.
DemuxBitrate
,
0
);
mp
.
Stop
();
}
Assert
.
True
(
mp
.
Play
());
await
Task
.
Delay
(
4000
);
// have to wait a bit for statistics to populate
Assert
.
Greater
(
media
.
Statistics
.
DemuxBitrate
,
0
);
mp
.
Stop
();
}
}
}
...
...
@@ -74,7 +69,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
Duplicate
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
var
media
=
new
Media
(
_l
ibVLC
,
new
FileStream
(
Path
.
GetTempFileName
(),
FileMode
.
OpenOrCreate
));
var
duplicate
=
media
.
Duplicate
();
Assert
.
AreNotEqual
(
duplicate
.
NativeReference
,
media
.
NativeReference
);
}
...
...
@@ -82,14 +77,14 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
CreateMediaFromFileStream
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
new
FileStream
(
RealMp3Path
,
FileMode
.
Open
,
FileAccess
.
Read
,
FileShare
.
Read
));
var
media
=
new
Media
(
_l
ibVLC
,
new
FileStream
(
RealMp3Path
,
FileMode
.
Open
,
FileAccess
.
Read
,
FileShare
.
Read
));
Assert
.
AreNotEqual
(
IntPtr
.
Zero
,
media
.
NativeReference
);
}
[
Test
]
public
void
SetMetadata
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
Path
.
GetTempFileName
());
var
media
=
new
Media
(
_l
ibVLC
,
Path
.
GetTempFileName
());
const
string
test
=
"test"
;
media
.
SetMeta
(
Media
.
MetadataType
.
ShowName
,
test
);
Assert
.
True
(
media
.
SaveMeta
());
...
...
@@ -99,7 +94,7 @@ namespace LibVLCSharp.Tests
[
Test
]
public
void
GetTracks
()
{
var
media
=
new
Media
(
new
L
ibVLC
()
,
RealMp3Path
);
var
media
=
new
Media
(
_l
ibVLC
,
RealMp3Path
);
media
.
Parse
();
Assert
.
AreEqual
(
media
.
Tracks
.
Single
().
Data
.
Audio
.
Channels
,
2
);
Assert
.
AreEqual
(
media
.
Tracks
.
Single
().
Data
.
Audio
.
Rate
,
44100
);
...
...
@@ -108,35 +103,31 @@ namespace LibVLCSharp.Tests
[
Test
]
public
async
Task
CreateRealMediaSpecialCharacters
()
{
using
(
var
libVLC
=
new
LibVLC
())
_libVLC
.
Log
+=
LibVLC_Log
;
using
(
var
media
=
new
Media
(
_libVLC
,
RealMp3PathSpecialCharacter
,
Media
.
FromType
.
FromPath
))
{
libVLC
.
Log
+=
LibVLC_Log
;
using
(
var
media
=
new
Media
(
libVLC
,
RealMp3PathSpecialCharacter
,
Media
.
FromType
.
FromPath
))
Assert
.
False
(
media
.
IsParsed
);
media
.
Parse
();
await
Task
.
Delay
(
5000
);
Assert
.
True
(
media
.
IsParsed
);
Assert
.
AreEqual
(
Media
.
MediaParsedStatus
.
Done
,
media
.
ParsedStatus
);
using
(
var
mp
=
new
MediaPlayer
(
media
))
{
Assert
.
False
(
media
.
IsParsed
);