Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Erin
mopidy
Commits
aab99430
Commit
aab99430
authored
May 11, 2020
by
Agate
💬
Browse files
Merge branch 'issue-6' into 'master'
Make Plugin with with mopidy 3 Closes #6 See merge request
funkwhale/mopidy!5
parents
28c2b561
3a1868f6
Changes
7
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
aab99430
...
...
@@ -3,7 +3,7 @@ stages:
test
:
stage
:
test
image
:
python:
2
image
:
python:
3
before_script
:
-
apt-get update
-
apt-get install libgirepository1.0-dev -y
...
...
README.rst
View file @
aab99430
...
...
@@ -22,9 +22,7 @@ Features
Installation
------------
We assume you have a Mopidy server available. **Because of `a bug in recent mopidy versions <https://github.com/mopidy/mopidy/issues/1528>`_,
if you face any playback issues, you should use at least Mopidy 2.2.3 which is currently unreleased, or install the development version with
``pip install --user git+https://github.com/mopidy/mopidy.git``**.
We assume you have a Mopidy server available (version 3 or greater required).
We don't have any package for this extension yet, so you may install
from the repository:
...
...
mopidy_funkwhale/commands.py
View file @
aab99430
from
mopidy
import
commands
,
compat
,
exceptions
from
mopidy
import
commands
,
exceptions
import
requests_oauthlib
...
...
@@ -77,7 +77,7 @@ class LoginCommand(commands.Command):
prompt
=
"
\n
Enter the token:"
authorization_code
=
compat
.
input
(
prompt
)
authorization_code
=
input
(
prompt
)
token
=
oauth
.
fetch_token
(
url
+
token_endpoint
,
code
=
authorization_code
,
...
...
mopidy_funkwhale/library.py
View file @
aab99430
...
...
@@ -99,7 +99,7 @@ class FunkwhaleLibraryProvider(backend.LibraryProvider):
return
result
# root directory
return
self
.
vfs
.
get
(
uri
,
{}).
values
()
return
list
(
self
.
vfs
.
get
(
uri
,
{}).
values
()
)
def
browse_favorites
(
self
,
remaining
):
if
remaining
==
[]:
...
...
@@ -292,7 +292,6 @@ def convert_to_album(payload, uri_prefix="funkwhale:albums"):
uri
=
uri_prefix
+
":%s"
%
payload
[
"id"
],
name
=
payload
[
"title"
],
musicbrainz_id
=
payload
[
"mbid"
],
images
=
[
image
]
if
image
else
[],
artists
=
[
artist
],
date
=
payload
[
"release_date"
],
num_tracks
=
len
(
payload
.
get
(
"tracks"
,
[])),
...
...
@@ -314,7 +313,7 @@ def convert_to_track(payload, uri_prefix="funkwhale:tracks"):
artists
=
[
artist
],
album
=
album
,
date
=
payload
[
"album"
][
"release_date"
],
bitrate
=
(
upload
.
get
(
"bitrate"
)
or
0
)
/
1000
,
bitrate
=
int
(
(
upload
.
get
(
"bitrate"
)
or
0
)
/
1000
)
,
length
=
(
upload
.
get
(
"duration"
)
or
0
)
*
1000
,
track_no
=
payload
[
"position"
],
)
...
...
setup.cfg
View file @
aab99430
...
...
@@ -9,8 +9,6 @@ long_description = file: README.rst
license = GLP-3
keywords = code, diff, copy-paste, linter, DRY
classifiers =
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
...
...
@@ -19,7 +17,7 @@ zip_safe = True
include_package_data = True
packages = find:
install_requires =
mopidy
mopidy
>=3,<3.1
requests
requests_oauthlib
pygobject
...
...
tests/factories.py
View file @
aab99430
...
...
@@ -25,7 +25,7 @@ class AlbumJSONFactory(factory.Factory):
id
=
factory
.
Sequence
(
int
)
mbid
=
factory
.
Faker
(
"uuid4"
)
title
=
factory
.
Faker
(
"name"
)
tracks
=
factory
.
Iterator
([
range
(
i
)
for
i
in
range
(
1
,
30
)])
tracks
=
factory
.
Iterator
([
list
(
range
(
i
)
)
for
i
in
range
(
1
,
30
)])
artist
=
factory
.
SubFactory
(
ArtistJSONFactory
)
release_date
=
factory
.
Faker
(
"date"
)
cover
=
factory
.
SubFactory
(
CoverJSONFactory
)
...
...
tests/test_library.py
View file @
aab99430
...
...
@@ -44,7 +44,6 @@ def test_convert_album_to_model():
assert
result
.
artists
==
frozenset
(
[
mopidy_funkwhale
.
library
.
convert_to_artist
(
payload
[
"artist"
])]
)
assert
result
.
images
==
frozenset
([
payload
[
"cover"
][
"original"
]])
def
test_convert_track_to_model
():
...
...
@@ -193,7 +192,7 @@ def test_browse_artists_albums(client, library, requests_mock):
album2
=
factories
.
AlbumJSONFactory
(
artist
=
album1
[
"artist"
])
url
=
(
client
.
session
.
url_base
+
"albums/?
page_size=50&
ordering=title&playable=true&artist%s"
+
"albums/?ordering=title&
page_size=50&
playable=true&artist
=
%s"
%
album1
[
"artist"
][
"id"
]
)
requests_mock
.
get
(
url
,
json
=
{
"results"
:
[
album1
,
album2
]})
...
...
Write
Preview
Supports
Markdown
0%
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!
Cancel
Please
register
or
sign in
to comment