diff --git a/spec/factories/hyrax_collection.rb b/spec/factories/hyrax_collection.rb
index <HASH>..<HASH> 100644
--- a/spec/factories/hyrax_collection.rb
+++ b/spec/factories/hyrax_collection.rb
@@ -8,11 +8,31 @@ FactoryBot.define do
     collection_type_gid { Hyrax::CollectionType.find_or_create_default_collection_type.to_global_id }
 
     transient do
+      edit_groups { [] }
+      edit_users { [] }
+      read_groups { [] }
+      read_users { [] }
       members { nil }
     end
 
     after(:build) do |collection, evaluator|
       collection.member_ids = evaluator.members.map(&:id) if evaluator.members
+      collection.permission_manager.edit_groups = evaluator.edit_groups
+      collection.permission_manager.edit_users = evaluator.edit_users
+      collection.permission_manager.read_groups = evaluator.read_groups
+      collection.permission_manager.read_users = evaluator.read_users
+    end
+
+    after(:create) do |collection, evaluator|
+      collection.permission_manager.edit_groups = evaluator.edit_groups
+      collection.permission_manager.edit_users = evaluator.edit_users
+      collection.permission_manager.read_groups = evaluator.read_groups
+      collection.permission_manager.read_users = evaluator.read_users
+      collection.permission_manager.acl.save
+    end
+
+    trait :public do
+      read_groups { ['public'] }
     end
 
     trait :with_member_works do
extend :hyrax_collection factory to handle ACLs