//----- method ----- public bool Load() { var iniFilePath = "./settings.ini"; if (!File.Exists(iniFilePath)) { return(false); } fileSettings = IniFile.Read <FileSettings>("File", iniFilePath); if (fileSettings == null) { return(false); } excelSettings = IniFile.Read <ExcelSettings>("Excel", iniFilePath); if (excelSettings == null) { return(false); } IgnoreSheetNames = excelSettings.ignoreSheetNames.Split(',').Select(x => x.Trim()).ToArray(); return(true); }
private void ImportExcelData(ExcelSettings excelSettings) { dataImport = new ExcelDataImport(excelSettings); Headers = dataImport.GetHeaders(); rows = dataImport.LoadAll(); RowsView = CreateDataView(); }
/// <summary>Create account setting asset file if it does not exist.</summary> public static ExcelSettings Create() { string filePath = CustomAssetUtility.GetUniqueAssetPathNameOrFallback(AssetFileName); s_Instance = (ExcelSettings)AssetDatabase.LoadAssetAtPath(filePath, typeof(ExcelSettings)); if (s_Instance == null) { s_Instance = CreateInstance<ExcelSettings>(); string path = CustomAssetUtility.GetUniqueAssetPathNameOrFallback(AssetFileName); AssetDatabase.CreateAsset(s_Instance, path); s_Instance.AssetPath = Path.GetDirectoryName(path); s_Instance.AssetPath += "/"; // saves file path of the created asset. EditorUtility.SetDirty(s_Instance); AssetDatabase.SaveAssets(); EditorUtility.DisplayDialog( "Validate Settings", "Default excel settings file has been created for accessing excel spreadsheet. Set valid runtime editor paths before proceeding.", "OK" ); } else { Debug.LogWarning("Already exist at " + filePath); } Selection.activeObject = s_Instance; return s_Instance; }
/// <summary> /// Create account setting asset file if it does not exist. /// </summary> public static ExcelSettings Create() { string filePath = CustomAssetUtility.GetUniqueAssetPathNameOrFallback(AssetFileName); s_Instance = (ExcelSettings)AssetDatabase.LoadAssetAtPath(filePath, typeof(ExcelSettings)); if (s_Instance == null) { s_Instance = CreateInstance <ExcelSettings> (); string path = CustomAssetUtility.GetUniqueAssetPathNameOrFallback(AssetFileName); AssetDatabase.CreateAsset(s_Instance, path); s_Instance.AssetPath = Path.GetDirectoryName(path); s_Instance.AssetPath += "/"; // saves file path of the created asset. EditorUtility.SetDirty(s_Instance); AssetDatabase.SaveAssets(); EditorUtility.DisplayDialog( "Validate Settings", "Default excel settings have been created for accessing excel spreadsheet. Set valid runtime editor paths before proceeding.", "OK" ); } else { Debug.LogWarning("Already exist at " + filePath); } Selection.activeObject = s_Instance; return(s_Instance); }
public static IServiceCollection AddExcelProvider(this IServiceCollection serviceCollection, Action <ExcelSettings> excelSettingsAction = null) { var excelSettings = new ExcelSettings(); excelSettingsAction?.Invoke(excelSettings); serviceCollection.AddSingleton <ExcelSettings>(excelSettings); serviceCollection.AddJsonProvider(); serviceCollection.TryAddSingleton <IContentTypeProvider, ExcelContentTypeProvider>(); return(serviceCollection); }
public void LoadAll_EmptyFile_ReturnEmptyRows(ExcelSettings settings, int rowsNum) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act var rows = importer.LoadAll(); // assert Assert.AreEqual(rowsNum, rows.Count()); }
public void GetHeaders_FileDoesNotExist_ThrowFileNotFoundException(ExcelSettings settings) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act TestDelegate action = () => importer.GetHeaders(); // assert Assert.Throws <FileNotFoundException>(action); }
public void GetHeaders_EmptyFile_ReturnEmptyFileHeaders(ExcelSettings settings, int headersNum) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act var headers = importer.GetHeaders(); // assert Assert.AreEqual(headersNum, headers.Count()); }
public void GetHeaders_NoHeaders_ReturnGenericHeaders(ExcelSettings settings, IEnumerable <object> validHeaders) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act var headers = importer.GetHeaders(); // assert CollectionAssert.AreEqual(validHeaders, headers); }
public void LoadAll_ValidFile_ReturnRows(ExcelSettings settings, IEnumerable <Row> validRows) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act var rows = importer.LoadAll(); // assert Assert.AreEqual(validRows.Count(), rows.Count()); var validRowsEnumerator = validRows.GetEnumerator(); var rowsEnumerator = rows.GetEnumerator(); while (validRowsEnumerator.MoveNext() && rowsEnumerator.MoveNext()) { Assert.AreEqual(validRowsEnumerator.Current.Timestamp, rowsEnumerator.Current.Timestamp); CollectionAssert.AreEqual(validRowsEnumerator.Current.Samples, rowsEnumerator.Current.Samples); } }
public void Load_ValidFile_ReturnSpecifiedRowsRange(ExcelSettings settings, IEnumerable <Row> validRows, int skip, int take) { // arrange ExcelDataImport importer = new ExcelDataImport(settings); // act var rows = importer.Load(skip, take); // assert Assert.AreEqual(validRows.Count(), rows.Count()); CollectionAssert.AreEqual(validRows, rows, new RowComparer()); var validRowsEnumerator = validRows.GetEnumerator(); var rowsEnumerator = rows.GetEnumerator(); while (validRowsEnumerator.MoveNext() && rowsEnumerator.MoveNext()) { Assert.AreEqual(validRowsEnumerator.Current.Timestamp, rowsEnumerator.Current.Timestamp); CollectionAssert.AreEqual(validRowsEnumerator.Current.Samples, rowsEnumerator.Current.Samples); } }
public ImportExcelDataDialogViewModel() { ExcelSettings = new ExcelSettings(); }
public void OnEnable() { setting = target as ExcelSettings; }
public static void CreateExcelSetting() { ExcelSettings.Create(); }