mirror of
https://github.com/manyfold3d/manyfold.git
synced 2026-10-22 03:32:18 -05:00
84 lines
2.5 KiB
Ruby
84 lines
2.5 KiB
Ruby
# spec/requests/blogs_spec.rb
|
|
require "swagger_helper"
|
|
|
|
describe "NodeInfo" do # rubocop:disable RSpec/EmptyExampleGroup
|
|
path "/.well-known/nodeinfo" do
|
|
get "Discovery URL for NodeInfo protocol" do
|
|
tags "NodeInfo"
|
|
produces "application/json; profile=\"http://nodeinfo.diaspora.software/ns/schema/2.0#\""
|
|
|
|
response "200", "Success" do
|
|
schema type: :object,
|
|
properties: {
|
|
links: {
|
|
type: :array,
|
|
items: {
|
|
type: :object,
|
|
properties: {
|
|
rel: {type: :string, example: "https://nodeinfo.diaspora.software/ns/schema/2.0"},
|
|
href: {type: :string, example: "/nodeinfo/2.0", description: "The URL to the full NodeInfo document"}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
required: ["links"]
|
|
|
|
run_test!
|
|
end
|
|
end
|
|
end
|
|
|
|
path "/nodeinfo/2.0" do
|
|
get "Get server metadata in NodeInfo 2.0 format" do
|
|
tags "NodeInfo"
|
|
produces "application/json; profile=\"http://nodeinfo.diaspora.software/ns/schema/2.0#\""
|
|
|
|
response "200", "Success" do
|
|
schema type: :object,
|
|
properties: {
|
|
version: {type: :string, example: "2.0"},
|
|
software: {
|
|
type: :object,
|
|
properties: {
|
|
name: {type: :string, example: "Manyfold"},
|
|
version: {type: :string, example: "v0.103.0"}
|
|
}
|
|
},
|
|
protocols: {
|
|
type: :array,
|
|
items: {
|
|
type: :string,
|
|
example: "activitypub"
|
|
}
|
|
},
|
|
services: {
|
|
type: :object,
|
|
properties: {
|
|
inbound: {type: :array, items: {type: :string}, example: []},
|
|
outbound: {type: :array, items: {type: :string}, example: []}
|
|
}
|
|
},
|
|
openRegistrations: {type: :boolean},
|
|
usage: {
|
|
type: :object,
|
|
properties: {
|
|
users: {
|
|
type: :object,
|
|
properties: {
|
|
total: {type: :integer},
|
|
activeMonth: {type: :integer},
|
|
activeHalfyear: {type: :integer}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
metadata: {type: :object}
|
|
},
|
|
required: ["version", "software", "protocols", "openRegistrations"]
|
|
|
|
run_test!
|
|
end
|
|
end
|
|
end
|
|
end
|