public void IotSecuritySolution_CreateOrUpdate()
        {
            string IotHubResourceId =
                $"/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Devices/IotHubs/{IotHubName}";

            string WorkspaceResourceId =
                $"/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{WorkspaceName}";

            var udrp = new UserDefinedResourcesProperties("where type != \"microsoft.devices/iothubs\" | where name contains \"v2\"", new[] { SubscriptionId });

            var iotSecuritySolutionData = new IoTSecuritySolutionModel()
            {
                Workspace            = WorkspaceResourceId,
                DisplayName          = $"{SolutionName}-{WorkspaceName}",
                IotHubs              = new[] { IotHubResourceId },
                Location             = AscLocation,
                UserDefinedResources = udrp,
            };

            using (var context = MockContext.Start(this.GetType()))
            {
                var securityCenterClient = GetSecurityCenterClient(context);
                var ret = securityCenterClient.IotSecuritySolution.CreateOrUpdate(ResourceGroupName, SolutionName, iotSecuritySolutionData);
                ret.Validate();
            }
        }
 public static PSUserDefinedResources ConvertToPSType(this UserDefinedResourcesProperties value)
 {
     return(new PSUserDefinedResources()
     {
         Query = value.Query,
         QuerySubscriptions = value.QuerySubscriptions
     });
 }
        public void IotSecuritySolution_Update()
        {
            var udrp = new UserDefinedResourcesProperties("where type != \"microsoft.devices/iothubs\" | where name contains \"v2\"", new[] { SubscriptionId });
            var rcp  = new RecommendationConfigurationProperties("IoT_OpenPorts", "Disabled");
            UpdateIotSecuritySolutionData updateIotSecuritySolutionData = new UpdateIotSecuritySolutionData(null, udrp, new[] { rcp });

            updateIotSecuritySolutionData.Validate();

            using (var context = MockContext.Start(this.GetType()))
            {
                var securityCenterClient = GetSecurityCenterClient(context);
                var ret = securityCenterClient.IotSecuritySolution.Update(ResourceGroupName, SolutionName, updateIotSecuritySolutionData);
                ret.Validate();
            }
        }