Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
tank
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
AURA
tank
Commits
7aebadbd
Verified
Commit
7aebadbd
authored
4 months ago
by
Ernesto Rico Schmidt
Browse files
Options
Downloads
Patches
Plain Diff
test: remove test for Playlists
parent
decc285f
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
store/store_test.go
+0
-195
0 additions, 195 deletions
store/store_test.go
with
0 additions
and
195 deletions
store/store_test.go
+
0
−
195
View file @
7aebadbd
...
...
@@ -27,7 +27,6 @@ import (
"reflect"
"strconv"
"testing"
"time"
//"github.com/jinzhu/gorm"
)
...
...
@@ -569,197 +568,3 @@ func TestFilesSourceHash(t *testing.T) {
t
.
Fatalf
(
"file should now have hash set to %q but has %q"
,
hash
,
file
.
Source
.
Hash
)
}
}
// Playlists
//
type
playlistTestEntry
struct
{
uri
string
duration
*
float64
}
func
generateTestPlaylist
(
entries
...
playlistTestEntry
)
(
p
Playlist
)
{
for
_
,
entry
:=
range
entries
{
e
:=
PlaylistEntry
{
URI
:
entry
.
uri
,
Duration
:
entry
.
duration
}
p
.
Entries
=
append
(
p
.
Entries
,
e
)
}
return
p
}
func
TestPlaylistsListCreateDelete
(
t
*
testing
.
T
)
{
store
:=
newTestStore
(
t
)
playlists
,
err
:=
store
.
ListPlaylists
(
testShowID
,
-
1
,
-
1
)
if
err
!=
nil
{
t
.
Fatalf
(
"listing playlists of test show failed: %v"
,
err
)
}
if
len
(
playlists
)
!=
0
{
t
.
Fatalf
(
"a newly created store should contain no playlists in test show but ListPlaylists returned: %v"
,
playlists
)
}
playlists
,
err
=
store
.
ListPlaylists
(
uint64
(
0
),
-
1
,
-
1
)
if
err
!=
nil
{
t
.
Fatalf
(
"listing playlists of not existing show shouldn't throw an error but returned: %v"
,
err
)
}
if
len
(
playlists
)
!=
0
{
t
.
Fatalf
(
"listing playlists of not existing show should return and empty list but ListPlaylists returned: %v"
,
playlists
)
}
in
:=
generateTestPlaylist
(
playlistTestEntry
{
"audioin://1"
,
nil
},
playlistTestEntry
{
"http://stream.example.com/live.mp"
,
nil
})
testPlaylist
,
err
:=
store
.
CreatePlaylist
(
testShowID
,
in
)
if
err
!=
ErrPlaylistHasMultipleNullDurationEntries
{
t
.
Fatalf
(
"creating playlist with more than one non-file entry without duration should fail with specific error but returned: %v"
,
err
)
}
testDuration
:=
time
.
Second
.
Seconds
()
in
=
generateTestPlaylist
(
playlistTestEntry
{
"audioin://1"
,
&
testDuration
},
playlistTestEntry
{
"http://stream.example.com/live.mp"
,
nil
})
testPlaylist
,
err
=
store
.
CreatePlaylist
(
testShowID
,
in
)
if
err
!=
nil
{
t
.
Fatalf
(
"creating playlist in test show failed: %v"
,
err
)
}
playlists
,
err
=
store
.
ListPlaylists
(
testShowID
,
-
1
,
-
1
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
len
(
playlists
)
!=
1
{
t
.
Fatalf
(
"ListPlaylists should return a single playlist but returned: %v"
,
playlists
)
}
in1
:=
generateTestPlaylist
(
playlistTestEntry
{
"audioin://1"
,
&
testDuration
},
playlistTestEntry
{
"http://stream.example.com/live.mp3"
,
nil
})
_
,
err
=
store
.
CreatePlaylist
(
testShow1
,
in1
)
if
err
!=
nil
{
t
.
Fatalf
(
"creating playlist in not existing show shouldn't throw an error but CreatePlaylist returned: %v"
,
err
)
}
in2
:=
generateTestPlaylist
(
playlistTestEntry
{
"https://stream.example.com/other.ogg"
,
&
testDuration
},
playlistTestEntry
{
"audioin://2"
,
nil
})
_
,
err
=
store
.
CreatePlaylist
(
testShow1
,
in2
)
if
err
!=
nil
{
t
.
Fatalf
(
"creating playlist in not existing show shouldn't throw an error but CreatePlaylist returned: %v"
,
err
)
}
shows
,
err
:=
store
.
ListShows
()
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
checkShows
(
t
,
shows
,
[]
uint64
{
testShowID
,
testShow1
})
playlists
,
err
=
store
.
ListPlaylists
(
testShow1
,
-
1
,
-
1
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
len
(
playlists
)
!=
2
{
t
.
Fatalf
(
"ListPlaylists should return two playlists but returned: %v"
,
playlists
)
}
// clean up so next test can run with a clean DB, TODO: remove as soon as newTestStore() can re-init the DB
if
err
=
store
.
DeleteShow
(
testShow1
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
err
=
store
.
DeletePlaylist
(
testShowID
,
testPlaylist
.
ID
);
err
!=
nil
{
t
.
Fatalf
(
"deleting playlist %d of show '%d' failed: %v"
,
testPlaylist
.
ID
,
testShowID
,
err
)
}
}
func
TestPlaylistsCreateAndGet
(
t
*
testing
.
T
)
{
store
:=
newTestStore
(
t
)
f
:=
File
{
Size
:
12345
}
f
.
Source
.
URI
=
testSourceURI1
f
.
Metadata
.
Artist
=
testFileArtist1
f
.
Metadata
.
Album
=
testFileAlbum1
f
.
Metadata
.
Title
=
testFileTitle1
file1
,
err
:=
store
.
CreateFile
(
testShow1
,
f
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
_
,
err
:=
store
.
GetPlaylist
(
testShow1
,
0
);
err
!=
ErrNotFound
{
t
.
Fatalf
(
"getting playlist in not-existing show should return ErrNotFound, but GetPlaylist returned: %v"
,
err
)
}
p
:=
generateTestPlaylist
(
playlistTestEntry
{
"http://stream.example.com/stream.mp3"
,
nil
})
p
.
Entries
=
append
(
p
.
Entries
,
PlaylistEntry
{
File
:
&
File
{
ShowID
:
file1
.
ShowID
,
ID
:
file1
.
ID
}})
list1
,
err
:=
store
.
CreatePlaylist
(
testShow1
,
p
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
_
,
err
:=
store
.
GetPlaylist
(
testShow1
,
list1
.
ID
);
err
!=
nil
{
t
.
Fatalf
(
"getting existing playlist from store shouldn't return an error, but GetPlaylist returned: %v"
,
err
)
}
// TODO: check if playlists are equal
p
=
generateTestPlaylist
(
playlistTestEntry
{
"http://stream.example.com/other.mp3"
,
nil
},
playlistTestEntry
{
fmt
.
Sprintf
(
"file://%d/%d"
,
file1
.
ShowID
,
file1
.
ID
),
nil
})
if
_
,
err
=
store
.
CreatePlaylist
(
testShow1
,
p
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
playlists
,
err
:=
store
.
ListPlaylists
(
testShow1
,
-
1
,
-
1
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
len
(
playlists
)
!=
2
{
t
.
Fatalf
(
"ListPlaylists should return two playlists but returned: %v"
,
playlists
)
}
// TODO: check playlists contains both lists
}
// TODO: add test for pagination in store.ListePlaylists()
// File usage
func
TestFileUsage
(
t
*
testing
.
T
)
{
store
:=
newTestStore
(
t
)
file
:=
&
File
{
Size
:
12345
}
file
.
Source
.
URI
=
testSourceURI1
file
.
Metadata
.
Artist
=
testFileArtist1
file
.
Metadata
.
Album
=
testFileAlbum1
file
.
Metadata
.
Title
=
testFileTitle1
file
,
err
:=
store
.
CreateFile
(
testShow1
,
*
file
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
lists
,
err
:=
store
.
GetFileUsage
(
file
.
ShowID
,
file
.
ID
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
len
(
lists
)
!=
0
{
t
.
Fatalf
(
"file should be in use by any playlist but got %d entries in usage list"
,
len
(
lists
))
}
p
:=
generateTestPlaylist
(
playlistTestEntry
{
"http://stream.example.com/stream.mp3"
,
nil
})
p
.
Entries
=
append
(
p
.
Entries
,
PlaylistEntry
{
File
:
&
File
{
ShowID
:
file
.
ShowID
,
ID
:
file
.
ID
}})
list
,
err
:=
store
.
CreatePlaylist
(
testShow1
,
p
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
lists
,
err
=
store
.
GetFileUsage
(
file
.
ShowID
,
file
.
ID
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
len
(
lists
)
!=
1
{
t
.
Fatalf
(
"file should be used by exactly one playlist but got %d entries in usage list"
,
len
(
lists
))
}
if
lists
[
0
]
.
ID
!=
list
.
ID
{
t
.
Fatalf
(
"file should be in use by playlist %d but entries of usage list only contains: %d"
,
list
.
ID
,
lists
[
0
]
.
ID
)
}
err
=
store
.
DeleteFile
(
file
.
ShowID
,
file
.
ID
)
errInUse
,
ok
:=
err
.
(
*
ErrFileInUse
)
if
!
ok
{
t
.
Fatalf
(
"deleting file that is in use should return an error of type ErrFileInUs, but returned: %v (type: %t)"
,
err
,
err
)
}
if
len
(
errInUse
.
Playlists
)
!=
1
||
errInUse
.
Playlists
[
0
]
.
ID
!=
list
.
ID
{
t
.
Fatalf
(
"usage reports invalid playlist-list: %+v"
,
errInUse
.
Playlists
)
}
if
err
=
store
.
DeletePlaylist
(
list
.
ShowID
,
list
.
ID
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
err
=
store
.
DeleteFile
(
file
.
ShowID
,
file
.
ID
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment