Пример #1
0
        // SendOptionsPolicy.DisableHideEmail check

        private void SaveSendAsync_DisableHideEmail_Setup(SendType sendType, bool canManagePolicies,
                                                          SutProvider <SendService> sutProvider, Send send, List <Policy> policies)
        {
            send.Id        = default;
            send.Type      = sendType;
            send.HideEmail = true;

            var dataObj = new SendOptionsPolicyData();

            dataObj.DisableHideEmail = true;

            policies.First().Type    = PolicyType.SendOptions;
            policies.First().Enabled = true;
            policies.First().Data    = JsonConvert.SerializeObject(dataObj);

            sutProvider.GetDependency <IPolicyRepository>().GetManyByUserIdAsync(send.UserId.Value).Returns(policies);
            sutProvider.GetDependency <ICurrentContext>().ManagePolicies(Arg.Any <Guid>()).Returns(canManagePolicies);
        }
Пример #2
0
        public async void SaveSendAsync_DisableHideEmail_CantManagePolicies_success(SendType sendType,
                                                                                    SutProvider <SendService> sutProvider, Send send, List <Policy> policies)
        {
            SaveSendAsync_DisableHideEmail_Setup(sendType, canManagePolicies: false, sutProvider, send, policies);

            var policyData = new SendOptionsPolicyData();

            policyData.DisableHideEmail = false;
            var policyDataSerialized = JsonConvert.SerializeObject(policyData);

            foreach (var policy in policies.Where(p => p.Type == PolicyType.SendOptions))
            {
                policies.First().Enabled = true;
                policies.First().Data    = policyDataSerialized;
            }

            await sutProvider.Sut.SaveSendAsync(send);

            await sutProvider.GetDependency <ISendRepository>().Received(1).CreateAsync(send);
        }
Пример #3
0
        // Send Options Policy - Disable Hide Email check

        private void SaveSendAsync_HideEmail_Setup(bool disableHideEmailAppliesToUser,
                                                   SutProvider <SendService> sutProvider, Send send, Policy policy)
        {
            send.HideEmail = true;

            var sendOptions = new SendOptionsPolicyData
            {
                DisableHideEmail = disableHideEmailAppliesToUser
            };

            policy.Data = JsonSerializer.Serialize(sendOptions, new JsonSerializerOptions
            {
                PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
            });

            sutProvider.GetDependency <IPolicyRepository>().GetManyByTypeApplicableToUserIdAsync(
                Arg.Any <Guid>(), PolicyType.SendOptions).Returns(new List <Policy>
            {
                policy,
            });
        }