/// <summary>
        /// Converts the response from the service to a powershell database object
        /// </summary>
        /// <param name="pool">The service response</param>
        /// <returns>The converted model</returns>
        private UpgradeRecommendedElasticPoolProperties CreateRecommendedElasticPoolPropertiesFromResponse(RecommendedElasticPool pool)
        {
            var model = new UpgradeRecommendedElasticPoolProperties();

            model.DatabaseCollection = pool.Properties.Databases.Select(database => database.Name).ToList();
            model.DatabaseDtuMax = (int)pool.Properties.DatabaseDtuMax;
            model.DatabaseDtuMin = (int)pool.Properties.DatabaseDtuMin;
            model.Dtu = (int)pool.Properties.Dtu;
            model.Edition = pool.Properties.DatabaseEdition;
            model.IncludeAllDatabases = false;
            model.Name = pool.Name;
            return model;
        }
 /// <summary>
 /// Validate recommended elastic pool properties
 /// </summary>
 /// <param name="recommendedElasticPool">Recommended elastic pool object</param>
 /// <param name="name">Name</param>
 /// <param name="type">Type</param>
 /// <param name="edition">Edition</param>
 /// <param name="dtu">Dtu</param>
 /// <param name="databaseDtuMin">Dtu min</param>
 /// <param name="databaseDtuMax">Dtu max</param>
 /// <param name="storageMB">Storage MB</param>
 /// <param name="observationPeriodStart">Observation start</param>
 /// <param name="observationPeriodEnd">Observation end</param>
 /// <param name="maxObservedDtu">Max observed Dtu</param>
 /// <param name="maxObservedStorageMB">Max observed storage MB</param>
 private void ValidateRecommendedElasticPool(RecommendedElasticPool recommendedElasticPool, string name, string type, string edition, float dtu, float databaseDtuMin, float databaseDtuMax, float storageMB, DateTime observationPeriodStart, DateTime observationPeriodEnd, float maxObservedDtu, float maxObservedStorageMB)
 {
     Assert.Equal(recommendedElasticPool.Name, name);
     Assert.Equal(recommendedElasticPool.Type, type);
     Assert.Equal(recommendedElasticPool.Properties.DatabaseEdition, edition);
     Assert.Equal(recommendedElasticPool.Properties.Dtu, dtu, 2);
     Assert.Equal(recommendedElasticPool.Properties.DatabaseDtuMin, databaseDtuMin, 2);
     Assert.Equal(recommendedElasticPool.Properties.DatabaseDtuMax, databaseDtuMax, 2);
     Assert.Equal(recommendedElasticPool.Properties.StorageMB, storageMB, 2);
     Assert.Equal(recommendedElasticPool.Properties.ObservationPeriodStart, observationPeriodStart);
     Assert.Equal(recommendedElasticPool.Properties.ObservationPeriodEnd, observationPeriodEnd);
     Assert.Equal(recommendedElasticPool.Properties.MaxObservedDtu, maxObservedDtu, 2);
     Assert.Equal(recommendedElasticPool.Properties.MaxObservedStorageMB, maxObservedStorageMB, 2);
 }