discourse/spec/lib/plugin/metadata_spec.rb
David Taylor 13b13a758c
Remove discourse-canned-replies from official list (#22932)
This plugin is no longer supported, and so we no longer need to run its tests in CI

(removing the comment and the 'Canned Replies' value from the array caused syntax_tree to change to the `%w` syntax)
2023-08-02 12:48:20 +01:00

52 lines
1.3 KiB
Ruby

# frozen_string_literal: true
RSpec.describe Plugin::Metadata do
describe "parse" do
it "correctly parses plugin info" do
metadata = Plugin::Metadata.parse <<TEXT
# name: plugin-name
# about: about: my plugin
# version: 0.1
# authors: Frank Zappa
# contact emails: frankz@example.com
# url: http://discourse.org
# required version: 1.3.0beta6+48
some_ruby
TEXT
expect(metadata.name).to eq("plugin-name")
expect(metadata.about).to eq("about: my plugin")
expect(metadata.version).to eq("0.1")
expect(metadata.authors).to eq("Frank Zappa")
expect(metadata.contact_emails).to eq("frankz@example.com")
expect(metadata.url).to eq("http://discourse.org")
expect(metadata.required_version).to eq("1.3.0beta6+48")
end
end
def official(name)
metadata = Plugin::Metadata.parse <<TEXT
# name: #{name}
TEXT
expect(metadata.official?).to eq(true)
end
def unofficial(name)
metadata = Plugin::Metadata.parse <<TEXT
# name: #{name}
TEXT
expect(metadata.official?).to eq(false)
end
it "correctly detects official vs unofficial plugins" do
official("discourse-adplugin")
official("discourse-akismet")
official("discourse-cakeday")
official("discourse-data-explorer")
unofficial("babble")
end
end