/// <summary> /// Creates article controller /// </summary> /// <param name="blogPostRepository">blogpost repository to use, leave null to use default mocked implementation</param> /// <param name="shouldBlogPostRepositoryAlwayReturnPost">if using default blogpost repository, if set to true then repository will always return BlogPost regardless of input. If however it is false posts titles are 0 to 19 and published date is current day</param> /// <param name="lookupRepository">repository to look things up, leave null for default mocked implementation</param> /// <param name="configurationReader">configuration reader to use, leave null for default mocked implementation</param> /// <param name="waneTransform">wane transform, leave null for default mocked implementaion</param> /// <param name="logger">Logger, leave null for default implementation</param> /// <param name="principal">principal used for security, leave null for default implementation</param> /// <returns></returns> public static BlogPostController CreateBlogPostController(IBlogPostRepository blogPostRepository = null, bool shouldBlogPostRepositoryAlwayReturnPost = true, ILookupRepository lookupRepository = null, IConfigurationReader configurationReader = null, IWaneTransform waneTransform = null, IJumbleblocksLogger logger = null, IJumbleblocksPrincipal principal = null) { if (blogPostRepository == null) blogPostRepository = CreateMockedBlogPostRepository(shouldBlogPostRepositoryAlwayReturnPost).Object; if (lookupRepository == null) lookupRepository = CreateMockedLookupRepository().Object; if (configurationReader == null) configurationReader = CreateMockedConfigurationReader().Object; if (waneTransform == null) waneTransform = CreateMockedWaneTransform().Object; if (logger == null) logger = new Mock<IJumbleblocksLogger>().Object; if (principal == null) principal = CreateMockedPrincipalAndAddBlogUserToLookUp(Mock.Get<ILookupRepository>(lookupRepository)).Object; var controller = new BlogPostController(blogPostRepository, lookupRepository, configurationReader, waneTransform, logger); controller.SetMockedControllerContext(); controller.SetPrincipal(principal); return controller; }
public ImageController(IImageReferenceRepository imageReferenceRepository, IJumbleblocksLogger logger) { if (imageReferenceRepository == null) throw new ArgumentNullException("imageReferenceRepository"); if (logger == null) throw new ArgumentNullException("logger"); ImageReferenceRepository = imageReferenceRepository; Logger = logger; }
public BlogPostController(IBlogPostRepository blogPostSummaryRepository, ILookupRepository lookupRepository, IConfigurationReader configurationReader, IWaneTransform waneTransformer, IJumbleblocksLogger logger) { if (blogPostSummaryRepository == null) throw new ArgumentNullException("blogPostSummaryRepository"); if (lookupRepository == null) throw new ArgumentNullException("lookupRepository"); if (configurationReader == null) throw new ArgumentNullException("configurationReader"); if (waneTransformer == null) throw new ArgumentNullException("waneTransformer"); if (logger == null) throw new ArgumentNullException("logger"); BlogPostRepository = blogPostSummaryRepository; LookupRepository = lookupRepository; ConfigurationReader = configurationReader; WaneTransformer = waneTransformer; Logger = logger; }