public static void AssertValidDataset([NotNull] TestParameter testParameter, [CanBeNull] Dataset dataset) { Assert.ArgumentNotNull(testParameter, nameof(testParameter)); if (dataset == null) { return; } TestParameterType parameterType = GetParameterType(testParameter.Type); Assert.True(IsValidDataset(parameterType, dataset), "Invalid dataset for test parameter type {0}: {1} ({2})", Enum.GetName(typeof(TestParameterType), parameterType), dataset, testParameter.Name); }
public static bool IsValidDataset(TestParameterType parameterType, [NotNull] Dataset dataset) { switch (parameterType) { case TestParameterType.Dataset: return(true); case TestParameterType.ObjectDataset: return(dataset is ObjectDataset); case TestParameterType.VectorDataset: return(dataset is VectorDataset); case TestParameterType.TableDataset: return(dataset is TableDataset); case TestParameterType.TopologyDataset: return(dataset.GeometryType is GeometryTypeTopology); case TestParameterType.TerrainDataset: return(dataset.GeometryType is GeometryTypeTerrain); case TestParameterType.GeometricNetworkDataset: return(dataset.GeometryType is GeometryTypeGeometricNetwork); case TestParameterType.RasterMosaicDataset: return(dataset.GeometryType is GeometryTypeRasterMosaic); case TestParameterType.RasterDataset: return(dataset.GeometryType is GeometryTypeRasterDataset); default: throw new ArgumentException( string.Format("Unsupported parameter type: {0}", Enum.GetName(typeof(TestParameterType), parameterType))); } }