public void CheckIfNumberOfTypesIsCorrect() { Assert.All(CatalogTypeFiles.Where(f => f.StartsWith(PathToValidFiles, StringComparison.InvariantCulture)), catalogTypeFilePath => { var catalogTypeFile = new TypeCatalogFile(catalogTypeFilePath); var catalogTypeFileText = File.ReadAllLines(catalogTypeFilePath); Assert.Equal(catalogTypeFile.Types.Count, catalogTypeFileText?.Count(l => !string.IsNullOrWhiteSpace(l)) - 1); } ); }
public void CheckIfNumberOfParametersIsCorrect() { Assert.All(CatalogTypeFiles.Where(f => f.StartsWith(PathToValidFiles, StringComparison.InvariantCulture)), catalogTypeFilePath => { var catalogTypeFile = new TypeCatalogFile(catalogTypeFilePath); var catalogTypeFileText = File.ReadAllLines(catalogTypeFilePath); var catalogTypeFileHeader = catalogTypeFileText.FirstOrDefault(); Assert.Equal(catalogTypeFile.parameterDefinitions.Count, catalogTypeFileHeader?.Count(f => f == ',') ?? 0); } ); }
/// <summary> /// is the phone type catalog instance. /// </summary> /// <returns></returns> private static TypeCatalogFile AppleTypeCatalogInstance() { var catalogTypeFile = new TypeCatalogFile(); var commonParams = new List <IParameterWithValue> { new TypeCatalogFile.Parameter <string>("Manufacturer", ParameterType.Text, "Apple"), new TypeCatalogFile.Parameter <string>("Model", ParameterType.Text, "A1549"), new TypeCatalogFile.Parameter <double>("Width", ParameterType.Length, 77.8, DisplayUnitType.DUT_MILLIMETERS), new TypeCatalogFile.Parameter <double>("Depth", ParameterType.Length, 6.9, DisplayUnitType.DUT_MILLIMETERS), new TypeCatalogFile.Parameter <double>("Height", ParameterType.Length, 158.1, DisplayUnitType.DUT_MILLIMETERS), }; catalogTypeFile.Add("MG562LL/A", commonParams.Concat(new List <IParameterWithValue> { new TypeCatalogFile.Parameter <string>("AssemblyCode", ParameterType.Text, "MG562LL/A"), new TypeCatalogFile.Parameter <string>("Description", ParameterType.Text, "iPhone 6 16GB Gold (GSM) T-Mobile"), new TypeCatalogFile.Parameter <double>("Price", ParameterType.Currency, 299.90), new TypeCatalogFile.Parameter <string>("Currency", ParameterType.Text, "$"), new TypeCatalogFile.Parameter <int>("Storage GB", 16), new TypeCatalogFile.Parameter <bool>("Unlocked", ParameterType.YesNo, false), }).ToArray()); catalogTypeFile.Add("MG5D2LL/A", commonParams.Concat(new List <IParameterWithValue> { new TypeCatalogFile.Parameter <string>("AssemblyCode", ParameterType.Text, "MG5D2LL/A"), new TypeCatalogFile.Parameter <string>("Description", ParameterType.Text, "iPhone 6 64GB Gold (GSM) T-Mobile"), new TypeCatalogFile.Parameter <double>("Price", ParameterType.Currency, 380.0), new TypeCatalogFile.Parameter <string>("Currency", ParameterType.Text, "$"), new TypeCatalogFile.Parameter <int>("Storage GB", 32), new TypeCatalogFile.Parameter <bool>("Unlocked", ParameterType.YesNo, false), }).ToArray()); catalogTypeFile.Add("MG3A2CL/A", commonParams.Concat(new List <IParameterWithValue> { new TypeCatalogFile.Parameter <string>("AssemblyCode", ParameterType.Text, "MG3A2CL/A"), new TypeCatalogFile.Parameter <string>("Description", ParameterType.Text, "iPhone 6 16GB Space Grey Unlocked"), new TypeCatalogFile.Parameter <double>("Price", ParameterType.Currency, 600.0), new TypeCatalogFile.Parameter <string>("Currency", ParameterType.Text, "CAD"), new TypeCatalogFile.Parameter <int>("Storage GB", 16), new TypeCatalogFile.Parameter <bool>("Unlocked", ParameterType.YesNo, true), }).ToArray()); return(catalogTypeFile); }