闭社主体 forked from https://github.com/tootsuite/mastodon
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
979 B

  1. require 'rails_helper'
  2. describe WellKnown::NodeInfoController, type: :controller do
  3. render_views
  4. describe 'GET #index' do
  5. it 'returns json document pointing to node info' do
  6. get :index
  7. expect(response).to have_http_status(200)
  8. expect(response.content_type).to eq 'application/json'
  9. json = body_as_json
  10. expect(json[:links]).to be_an Array
  11. expect(json[:links][0][:rel]).to eq 'http://nodeinfo.diaspora.software/ns/schema/2.0'
  12. expect(json[:links][0][:href]).to include 'nodeinfo/2.0'
  13. end
  14. end
  15. describe 'GET #show' do
  16. it 'returns json document with node info properties' do
  17. get :show
  18. expect(response).to have_http_status(200)
  19. expect(response.content_type).to eq 'application/json'
  20. json = body_as_json
  21. expect(json[:version]).to eq '2.0'
  22. expect(json[:usage]).to be_a Hash
  23. expect(json[:software]).to be_a Hash
  24. expect(json[:protocols]).to be_an Array
  25. end
  26. end
  27. end