Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add ImageSequenceClip tests #456

Merged
50 commits merged into from Mar 2, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
66bac76
add coveralls to travis.yml
bearney74 Feb 27, 2017
a79a9d2
add coveralls python module
bearney74 Feb 27, 2017
7fd06d8
add pytest-cov python module
bearney74 Feb 27, 2017
0b8c918
add pytest-cov python module
bearney74 Feb 27, 2017
ebbe115
add pytest-cov python module
bearney74 Feb 27, 2017
d8dd159
add coverage
bearney74 Feb 27, 2017
d4c63c8
modify .coverage
bearney74 Feb 27, 2017
06bb874
travis
bearney74 Feb 27, 2017
c3834c6
remove coverage
bearney74 Feb 27, 2017
58d79d6
remove coverage
bearney74 Feb 27, 2017
132ae40
remove coverage
bearney74 Feb 27, 2017
d42e6e0
remove coverage
bearney74 Feb 27, 2017
9681d26
remove coverage
bearney74 Feb 27, 2017
f516d94
remove coverage
bearney74 Feb 27, 2017
5321235
remove coverage
bearney74 Feb 27, 2017
f417b85
remove coverage
bearney74 Feb 27, 2017
b56d21a
remove coverage
bearney74 Feb 27, 2017
cb40ca9
remove coverage
bearney74 Feb 27, 2017
943f33a
remove coverage
bearney74 Feb 27, 2017
73f986e
remove coverage
bearney74 Feb 27, 2017
e481f81
__init__.py needed for pytest-cov and coverage to play nicely
bearney74 Feb 27, 2017
e9b7940
change concatenation to concatenate_videoclips
bearney74 Feb 27, 2017
a97dba9
test tools
bearney74 Feb 28, 2017
cc91442
add test for tools (#450)
bearney74 Feb 28, 2017
3ef911b
fix issue 448; AudioFileClip 90k tbr error (#449)
bearney74 Feb 28, 2017
a5f142b
add test for clips_array
bearney74 Feb 28, 2017
902256f
update travis to use Trusty
bearney74 Feb 28, 2017
4040ba4
add ffmpeg repo
bearney74 Feb 28, 2017
9230a57
fix typo
bearney74 Feb 28, 2017
d2f706f
add another repo
bearney74 Feb 28, 2017
e3106fe
add -y flag to add-apt-repository
bearney74 Feb 28, 2017
d3a0c24
install ppa-purge
bearney74 Feb 28, 2017
b512261
try another ffmpeg repo
bearney74 Feb 28, 2017
c32cf85
add -y flag
bearney74 Feb 28, 2017
a662e4f
add -qq flag
bearney74 Feb 28, 2017
56a362c
add -qq flag
bearney74 Feb 28, 2017
02fea19
resolve merge issues in test_tools.py
bearney74 Feb 28, 2017
1594b30
add VideoFileClip tests
bearney74 Feb 28, 2017
45e86d4
fix merge
bearney74 Feb 28, 2017
ecd4090
Merge branch 'master' of github.com:earney/moviepy into tests
bearney74 Feb 28, 2017
c1b097b
put media download logic into its own file
bearney74 Mar 2, 2017
2466574
put media download logic into its own file
bearney74 Mar 2, 2017
77f455e
add download_media.py
bearney74 Mar 2, 2017
95ee94e
update search path
bearney74 Mar 2, 2017
64a2e33
update search path
bearney74 Mar 2, 2017
b073a7a
update search path
bearney74 Mar 2, 2017
7b7cb43
update search path
bearney74 Mar 2, 2017
3fe39cb
update search path
bearney74 Mar 2, 2017
f60bf65
remove undescore from local variables
bearney74 Mar 2, 2017
31144db
Merge branch 'master' into tests
bearney74 Mar 2, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions tests/download_media.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import os

from moviepy.editor import *

def download_url(url, filename):
if not os.path.exists(filename):
print("\nDownloading %s\n" % filename)
download_webfile(url, filename)
print("Downloading complete...\n")

def download_youtube_video(youtube_id, filename):
# FYI.. travis-ci doesn't like youtube-dl
download_url(youtube_id, filename)


def download():
if not os.path.exists("media"):
os.mkdir("media")

download_url("https://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Python_logo_and_wordmark.svg/260px-Python_logo_and_wordmark.svg.png",
"media/python_logo.png")

download_url("http://matplotlib.org/_images/barh_demo.png",
"media/matplotlib_demo1.png")
27 changes: 27 additions & 0 deletions tests/test_ImageSequenceClip.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import pytest
from moviepy.editor import *

# must have to work on travis-ci
import sys
sys.path.append("tests")
import download_media

def test_download_media(capsys):
with capsys.disabled():
download_media.download()

def test_1():
images=[]
durations=[]
for i in range(5):
durations.append(i)
images.append("media/python_logo.png")
durations.append(i)
images.append("media/matplotlib_demo1.png")

clip=ImageSequenceClip(images, durations=durations)
assert clip.duration == sum(durations)
clip.write_videofile("/tmp/ImageSequenceClip1.mp4", fps=30)

if __name__ == '__main__':
pytest.main()
22 changes: 11 additions & 11 deletions tests/test_VideoFileClip.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
import os

def test_setup():
_red = ColorClip((1024,800), col=(255,0,0))
_green = ColorClip((1024,800), col=(0,255,0))
_blue = ColorClip((1024,800), col=(0,0,255))
red = ColorClip((1024,800), col=(255,0,0))
green = ColorClip((1024,800), col=(0,255,0))
blue = ColorClip((1024,800), col=(0,0,255))

_red.fps=_green.fps=_blue.fps=30
_video = clips_array([[_red, _green, _blue]]).set_duration(5)
_video.write_videofile("/tmp/test.mp4")
red.fps=green.fps=blue.fps=30
video = clips_array([[red, green, blue]]).set_duration(5)
video.write_videofile("/tmp/test.mp4")

assert os.path.exists("/tmp/test.mp4")

_clip = VideoFileClip("/tmp/test.mp4")
assert _clip.duration == 5
assert _clip.fps == 30
assert _clip.size == [1024*3, 800]
clip = VideoFileClip("/tmp/test.mp4")
assert clip.duration == 5
assert clip.fps == 30
assert clip.size == [1024*3, 800]

if __name__ == '__main__':
pytest.main()
pytest.main()
26 changes: 13 additions & 13 deletions tests/test_compositing.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,33 @@
from moviepy.editor import *

def test_clips_array():
_red = ColorClip((1024,800), col=(255,0,0))
_green = ColorClip((1024,800), col=(0,255,0))
_blue = ColorClip((1024,800), col=(0,0,255))
red = ColorClip((1024,800), col=(255,0,0))
green = ColorClip((1024,800), col=(0,255,0))
blue = ColorClip((1024,800), col=(0,0,255))

_video = clips_array([[_red, _green, _blue]])
video = clips_array([[red, green, blue]])

with pytest.raises(ValueError,
message="Expecting ValueError (duration not set)"):
_video.resize(width=480).write_videofile("/tmp/test_clips_array.mp4")
video.resize(width=480).write_videofile("/tmp/test_clips_array.mp4")


def test_clips_array():
_red = ColorClip((1024,800), col=(255,0,0))
_green = ColorClip((1024,800), col=(0,255,0))
_blue = ColorClip((1024,800), col=(0,0,255))
red = ColorClip((1024,800), col=(255,0,0))
green = ColorClip((1024,800), col=(0,255,0))
blue = ColorClip((1024,800), col=(0,0,255))

_video = clips_array([[_red, _green, _blue]]).set_duration(5)
video = clips_array([[red, green, blue]]).set_duration(5)

with pytest.raises(AttributeError,
message="Expecting ValueError (fps not set)"):
_video.write_videofile("/tmp/test_clips_array.mp4")
video.write_videofile("/tmp/test_clips_array.mp4")


#this one should work correctly
_red.fps=_green.fps=_blue.fps=30
_video = clips_array([[_red, _green, _blue]]).set_duration(5)
_video.write_videofile("/tmp/test_clips_array.mp4")
red.fps=green.fps=blue.fps=30
video = clips_array([[red, green, blue]]).set_duration(5)
video.write_videofile("/tmp/test_clips_array.mp4")


if __name__ == '__main__':
Expand Down
45 changes: 17 additions & 28 deletions tests/test_issues.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,46 +7,35 @@

from moviepy.editor import *

def download_url(url, filename):
if not os.path.exists(filename):
print("\nDownloading %s\n" % filename)
download_webfile(url, filename)
print("Downloading complete...\n")

def download_youtube_video(youtube_id, filename):
# FYI.. travis-ci doesn't like youtube-dl
download_url(youtube_id, filename)
# must have to work on travis-ci
import sys
sys.path.append("tests")
import download_media

def test_download_media(capsys):
with capsys.disabled():
#download_youtube_video("zvCvOC2VwDc", "media/knights.mp4")
download_url("https://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Python_logo_and_wordmark.svg/260px-Python_logo_and_wordmark.svg.png",
"media/python_logo.png")

#knights=VideoFileClip("media/knights.mp4")
#knights10 = knights.subclip(60,70)

download_media.download()

def test_issue_145():
_video = ColorClip((800, 600), col=(255,0,0)).set_duration(5)
video = ColorClip((800, 600), col=(255,0,0)).set_duration(5)
with pytest.raises(Exception, message="Expecting Exception"):
_final = concatenate_videoclips([_video], method = 'composite')
final = concatenate_videoclips([_video], method = 'composite')

def test_issue_407():
_red = ColorClip((800, 600), col=(255,0,0)).set_duration(5)
_red.fps=30
assert round(_red.fps) == 30
red = ColorClip((800, 600), col=(255,0,0)).set_duration(5)
red.fps=30
assert round(red.fps) == 30

_green=ColorClip((640, 480), col=(0,255,0)).set_duration(2) #ColorClip has no fps attribute
_blue=ColorClip((640, 480), col=(0,0,255)).set_duration(2) #ColorClip has no fps attribute
green=ColorClip((640, 480), col=(0,255,0)).set_duration(2) #ColorClip has no fps attribute
blue=ColorClip((640, 480), col=(0,0,255)).set_duration(2) #ColorClip has no fps attribute

_video=concatenate_videoclips([_red, _green, _blue])
assert _video.fps == _red.fps
video=concatenate_videoclips([red, green, blue])
assert video.fps == red.fps

def test_issue_416():
_green=ColorClip((640, 480), col=(0,255,0)).set_duration(2) #ColorClip has no fps attribute
_video1=concatenate_videoclips([_green])
assert _video1.fps == None
green=ColorClip((640, 480), col=(0,255,0)).set_duration(2) #ColorClip has no fps attribute
video1=concatenate_videoclips([green])
assert video1.fps == None

def test_issue_417():
# failed in python2
Expand Down