Skip to content

Commit

Permalink
Merge branch 'develop' into feature/internal_endpoint_user
Browse files Browse the repository at this point in the history
  • Loading branch information
helllllllder committed May 23, 2022
2 parents ccb74aa + 911b9c9 commit 9f7bbcd
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 59 deletions.
23 changes: 3 additions & 20 deletions bothub/api/grpc/repository/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
from bothub.common.models import Repository
from weni.protobuf.intelligence import repository_pb2

from bothub.utils import internal_serializer_fields


class RepositoryProtoSerializer(proto_serializers.ModelProtoSerializer):
owner__nickname = serializers.SerializerMethodField()
Expand All @@ -15,26 +17,7 @@ class RepositoryProtoSerializer(proto_serializers.ModelProtoSerializer):
class Meta:
model = Repository
proto_class = repository_pb2.Repository
fields = [
"uuid",
"name",
"slug",
"description",
"is_private",
"created_at",
"language",
"owner",
"algorithm",
"use_competing_intents",
"use_name_entities",
"use_analyze_char",
"owner__nickname",
"intents",
"categories",
"available_languages",
"categories_list",
"repository_type",
]
fields = internal_serializer_fields

def get_owner__nickname(self, repository: Repository):
return repository.owner.nickname
Expand Down
33 changes: 14 additions & 19 deletions bothub/api/v2/internal/organization/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,19 @@ def setUp(self):
self.repository_auth = self.repositories[0].get_user_authorization(self.owner)


def auth_header(token):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header["content_type"] = "application/json"

return authorization_header


@tag("internal")
class InternalOrganizationListTestCase(InternalOrganizationTestCase):
def request(self, params, token=None):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header = auth_header(token)

request = self.factory.get(
"/v2/internal/organization/", params, **authorization_header
Expand Down Expand Up @@ -81,10 +88,7 @@ def test_not_ok(self):
@tag("internal")
class InternalOrganizationCreateTestCase(InternalOrganizationTestCase):
def request(self, data, token=None):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header["content_type"] = "application/json"
authorization_header = auth_header(token)

request = self.factory.post(
"/v2/internal/organization/", data, **authorization_header
Expand Down Expand Up @@ -123,10 +127,7 @@ def test_not_ok(self):
@tag("internal")
class InternalOrganizationDestroyTestCase(InternalOrganizationTestCase):
def request(self, email, id, token=None):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header["content_type"] = "application/json"
authorization_header = auth_header(token)

request = self.factory.delete(
f"/v2/internal/organization/?user_email={email}", **authorization_header
Expand Down Expand Up @@ -161,10 +162,7 @@ def test_not_ok(self):
@tag("internal")
class InternalOrganizationUpdateTestCase(InternalOrganizationTestCase):
def request(self, data, email, id, token=None):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header["content_type"] = "application/json"
authorization_header = auth_header(token)

request = self.factory.put(
f"/v2/internal/organization/?user_email={email}",
Expand Down Expand Up @@ -204,10 +202,7 @@ def test_not_ok(self):
@tag("internal")
class InternalOrganizationRetrieveTestCase(InternalOrganizationTestCase):
def request(self, email, id, token=None):
authorization_header = (
{"HTTP_AUTHORIZATION": "Token {}".format(token.key)} if token else {}
)
authorization_header["content_type"] = "application/json"
authorization_header = auth_header(token)

request = self.factory.get(
f"/v2/internal/organization/?user_email={email}", **authorization_header
Expand Down
23 changes: 3 additions & 20 deletions bothub/api/v2/internal/repository/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
from bothub.api.v2.repository.serializers import RepositoryCategorySerializer
from bothub.common.models import Repository

from bothub.utils import internal_serializer_fields


class InternalRepositorySerializer(serializers.ModelSerializer):
owner__nickname = serializers.SerializerMethodField()
Expand All @@ -12,26 +14,7 @@ class InternalRepositorySerializer(serializers.ModelSerializer):

class Meta:
model = Repository
fields = [
"uuid",
"name",
"slug",
"description",
"is_private",
"created_at",
"language",
"owner",
"algorithm",
"use_competing_intents",
"use_name_entities",
"use_analyze_char",
"owner__nickname",
"intents",
"categories",
"available_languages",
"categories_list",
"repository_type",
]
fields = internal_serializer_fields

def get_owner__nickname(self, repository: Repository):
return repository.owner.nickname
Expand Down
22 changes: 22 additions & 0 deletions bothub/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -492,3 +492,25 @@ def check_module_permission(claims, user):
user.user_permissions.add(permission)
return True
return False


internal_serializer_fields = [
"uuid",
"name",
"slug",
"description",
"is_private",
"created_at",
"language",
"owner",
"algorithm",
"use_competing_intents",
"use_name_entities",
"use_analyze_char",
"owner__nickname",
"intents",
"categories",
"available_languages",
"categories_list",
"repository_type",
]

0 comments on commit 9f7bbcd

Please sign in to comment.