spec/policies/archangel/widget_policy_spec.rb in archangel-0.0.5 vs spec/policies/archangel/widget_policy_spec.rb in archangel-0.0.6
- old
+ new
@@ -4,17 +4,32 @@
module Archangel
RSpec.describe WidgetPolicy, type: :policy do
subject { described_class.new(user, record) }
- let(:user) { create(:user) }
let(:record) { create(:widget) }
- it { should permit(:index) }
- it { should permit(:show) }
- it { should permit(:create) }
- it { should permit(:new) }
- it { should permit(:update) }
- it { should permit(:edit) }
- it { should permit(:destroy) }
+ context "with `admin` role" do
+ let(:user) { create(:user, :admin) }
+
+ it { is_expected.to permit(:index) }
+ it { is_expected.to permit(:show) }
+ it { is_expected.to permit(:new) }
+ it { is_expected.to permit(:create) }
+ it { is_expected.to permit(:edit) }
+ it { is_expected.to permit(:update) }
+ it { is_expected.to permit(:destroy) }
+ end
+
+ context "with `editor` role" do
+ let(:user) { create(:user, :editor) }
+
+ it { is_expected.to permit(:index) }
+ it { is_expected.to permit(:show) }
+ it { is_expected.to permit(:new) }
+ it { is_expected.to permit(:create) }
+ it { is_expected.to permit(:edit) }
+ it { is_expected.to permit(:update) }
+ it { is_expected.to permit(:destroy) }
+ end
end
end