Skip to content
GitLab
Explorer
Connexion
S'inscrire
Navigation principale
Rechercher ou aller à…
Projet
P
parlote-facil
Gestion
Activité
Membres
Labels
Programmation
Tickets
Tableaux des tickets
Jalons
Wiki
Code
Requêtes de fusion
Dépôt
Branches
Validations
Étiquettes
Graphe du dépôt
Comparer les révisions
Extraits de code
Compilation
Pipelines
Jobs
Planifications de pipeline
Artéfacts
Déploiement
Releases
Registre de paquets
Registre de conteneur
Registre de modèles
Opération
Environnements
Modules Terraform
Surveillance
Incidents
Analyse
Données d'analyse des chaînes de valeur
Analyse des contributeurs
Données d'analyse CI/CD
Données d'analyse du dépôt
Expériences du modèle
Aide
Aide
Support
Documentation de GitLab
Comparer les forfaits GitLab
Forum de la communauté
Contribuer à GitLab
Donner votre avis
Raccourcis clavier
?
Extraits de code
Groupes
Projets
Afficher davantage de fils d'Ariane
facil
parlote-facil
Validations
05e4c8dc
Valider
05e4c8dc
rédigé
il y a 9 ans
par
Benjamin Neff
Validation de
Dennis Schubert
il y a 9 ans
Parcourir les fichiers
Options
Téléchargements
Correctifs
Plain Diff
improve key specs in federation_callbacks_spec.rb
parent
5c8f0c16
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Modifications
1
Masquer les modifications d'espaces
En ligne
Côte à côte
Affichage de
1 fichier modifié
spec/federation_callbacks_spec.rb
+42
-48
42 ajouts, 48 suppressions
spec/federation_callbacks_spec.rb
avec
42 ajouts
et
48 suppressions
spec/federation_callbacks_spec.rb
+
42
−
48
Voir le fichier @
05e4c8dc
...
...
@@ -149,120 +149,114 @@ describe "diaspora federation callbacks" do
end
end
def
create_a_local_person
FactoryGirl
.
create
(
:user
).
person
end
def
create_a_remote_person
FactoryGirl
.
create
(
:person
)
end
let
(
:local_person
)
{
FactoryGirl
.
create
(
:user
).
person
}
let
(
:remote_person
)
{
FactoryGirl
.
create
(
:person
)
}
let
(
:post_by_a_local_person
)
{
FactoryGirl
.
create
(
:status_message
,
author:
local_person
)
}
let
(
:post_by_a_remote_person
)
{
FactoryGirl
.
create
(
:status_message
,
author:
remote_person
)
}
def
create_post_by_a_local_person
FactoryGirl
.
create
(
:status_message
,
author:
create_a_local_person
).
guid
end
def
create_post_by_a_remote_person
FactoryGirl
.
create
(
:status_message
,
author:
create_a_remote_person
).
guid
end
describe
:fetch_private_key_by_diaspora_id
do
describe
":fetch_private_key_by_diaspora_id"
do
it
"returns a private key for a local user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
create_a_local_person
.
diaspora_handle
)
).
not_to
be_nil
key
=
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_private_key_by_diaspora_id
,
local_person
.
diaspora_handle
)
expect
(
key
).
to
be_a
(
OpenSSL
::
PKey
::
RSA
)
expect
(
key
.
to_s
).
to
eq
(
local_person
.
owner
.
serialized_private_key
)
end
it
"returns nil for a remote user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
create_a_
remote_person
.
diaspora_handle
)
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_private_key_by_diaspora_id
,
remote_person
.
diaspora_handle
)
).
to
be_nil
end
it
"returns nil for an unknown id"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
FactoryGirl
.
generate
(
:diaspora_id
))
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_private_key_by_diaspora_id
,
FactoryGirl
.
generate
(
:diaspora_id
))
).
to
be_nil
end
end
describe
:fetch_author_private_key_by_entity_guid
do
describe
"
:fetch_author_private_key_by_entity_guid
"
do
it
"returns a private key for a post by a local user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_post_by_a_local_person
)
).
not_to
be_nil
key
=
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_author_private_key_by_entity_guid
,
"Post"
,
post_by_a_local_person
.
guid
)
expect
(
key
).
to
be_a
(
OpenSSL
::
PKey
::
RSA
)
expect
(
key
.
to_s
).
to
eq
(
post_by_a_local_person
.
author
.
owner
.
serialized_private_key
)
end
it
"returns nil for a post by a remote user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_post_by_a_remote_person
)
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_author_private_key_by_entity_guid
,
"Post"
,
post_by_a_remote_person
.
guid
)
).
to
be_nil
end
it
"returns nil for an unknown post"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_author_private_key_by_entity_guid
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
).
to
be_nil
end
end
describe
:fetch_public_key_by_diaspora_id
do
describe
"
:fetch_public_key_by_diaspora_id
"
do
it
"returns a public key for a person"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
create_a_remote_person
.
diaspora_handle
)
).
not_to
be_nil
key
=
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_public_key_by_diaspora_id
,
remote_person
.
diaspora_handle
)
expect
(
key
).
to
be_a
(
OpenSSL
::
PKey
::
RSA
)
expect
(
key
.
to_s
).
to
eq
(
remote_person
.
serialized_public_key
)
end
it
"returns nil for an unknown person"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
FactoryGirl
.
generate
(
:diaspora_id
))
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_public_key_by_diaspora_id
,
FactoryGirl
.
generate
(
:diaspora_id
))
).
to
be_nil
end
end
describe
:fetch_author_public_key_by_entity_guid
do
describe
"
:fetch_author_public_key_by_entity_guid
"
do
it
"returns a public key for a known post"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_post_by_a_remote_person
)
).
not_to
be_nil
key
=
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_author_public_key_by_entity_guid
,
"Post"
,
post_by_a_remote_person
.
guid
)
expect
(
key
).
to
be_a
(
OpenSSL
::
PKey
::
RSA
)
expect
(
key
.
to_s
).
to
eq
(
post_by_a_remote_person
.
author
.
serialized_public_key
)
end
it
"returns nil for an unknown post"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_author_public_key_by_entity_guid
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
).
to
be_nil
end
end
describe
:entity_author_is_local?
do
describe
"
:entity_author_is_local?
"
do
it
"returns true for a post by a local user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_
post_by_a_local_person
)
).
to
be
(
tru
e
)
DiasporaFederation
.
callbacks
.
trigger
(
:entity_author_is_local?
,
"Post"
,
post_by_a_local_person
.
guid
)
).
to
be
_
tru
thy
end
it
"returns false for a post by a remote user"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_
post_by_a_remote_person
)
).
to
be
(
false
)
DiasporaFederation
.
callbacks
.
trigger
(
:entity_author_is_local?
,
"Post"
,
post_by_a_remote_person
.
guid
)
).
to
be
_
false
y
end
it
"returns false for a unknown post"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
FactoryGirl
.
generate
(
:diaspora_id
))
).
to
be
(
false
)
DiasporaFederation
.
callbacks
.
trigger
(
:entity_author_is_local?
,
"Post"
,
FactoryGirl
.
generate
(
:diaspora_id
))
).
to
be
_
false
y
end
end
describe
:fetch_entity_author_id_by_guid
do
describe
"
:fetch_entity_author_id_by_guid
"
do
it
"returns id for a existing guid"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
create_
post_by_a_remote_person
)
).
not_to
be_nil
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_entity_author_id_by_guid
,
"Post"
,
post_by_a_remote_person
.
guid
)
).
not_to
eq
(
post_by_a_remote_person
.
author_id
)
end
it
"returns nil for a non-existing guid"
do
expect
(
DiasporaFederation
.
callbacks
.
trigger
(
described_class
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
DiasporaFederation
.
callbacks
.
trigger
(
:fetch_entity_author_id_by_guid
,
"Post"
,
FactoryGirl
.
generate
(
:guid
))
).
to
be_nil
end
end
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
Aperçu
0%
Chargement en cours
Veuillez réessayer
ou
joindre un nouveau fichier
.
Annuler
You are about to add
0
people
to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Enregistrer le commentaire
Annuler
Veuillez vous
inscrire
ou vous
se connecter
pour commenter