public void Test1() { var ApplicationName = "MyApp"; var credentialDirPath = Environment.GetEnvironmentVariable("GoogleApiCredentials"); var credentialPath = credentialDirPath + "\\client_secrets.json"; var url = "https://docs.google.com/spreadsheets/d/1ncJ77JJJapPJpTeDpvWIsmuavStz5aXwQLs7fc89Rgo/edit#gid=0"; var repo = new GSRepository(ApplicationName, credentialPath, url); repo.ChangeTable(url); var readed = repo.ReadCell(repo.CurrentSheetInfo.Sheets.Keys.First(), (1, 1)); var dataToWrite = new List <List <string> >() { new List <string>() { "11", "12" }, new List <string>() { "21", "22" }, new List <string>() { "31", "32" }, }; repo.ModifySpreadSheet(repo.CurrentSheetInfo.Sheets.Keys.First()) .WriteRange((1, 2), dataToWrite) .Execute(); var valRange = repo.ReadCellRange(repo.CurrentSheetInfo.Sheets.Keys.First(), (1, 2), (3, 4)); for (int r = 0; r < valRange.Count; r++) { for (int c = 0; c < valRange[r].Count; c++) { Assert.AreEqual(dataToWrite[r][c], valRange[r][c]); } } }
public void SetUpHeadersOnClearSheet() { var credentialDirPath = Environment.GetEnvironmentVariable(CredentialsEnvVar); var credentialPath = credentialDirPath + "\\client_secrets.json"; var repo = new GSRepository(ApplicationName, credentialPath, url); var headers = new List <string>() { "Преподавател", "Предмет", "Тип занятия", "Количество повторений каждого занятия", "Приоритеты групп, в которых назначать занятия", "Время", "Четность" }; var comments = new List <string>() { "Имя преподавателя", "Название предмета (например Матанализ)", "Лекция/Семинар/КомпПрактика", "Количество подряд идущих занятий с той же группой", @"через + объединяются группы в один поток. Через запятую те группы, в которые можно назначать. В разных строках можно задавать предпочтения - чем ниже, тем менее предпочтительно. Например: ФИИТ-101, ФИИТ-102 ФИИТ-103 означает, что хочу вести в 101 или 102, если не получится, то 103 тоже подойдет. 104 не предлагать.", @"варианты в строчках, по уменьшению желаемости. Список дней недели, список номеров пар. Например: пн-чт, 1-3 пара пт, 3-4 пара означает, что желательно пару не в пятницу поставить в диапазон 1-3. Если не получится, то поставить в пятницу 3 или 4.", "четная/нечетная (можно не указывать)" }; HeaderPatternCreator.SetUpHeaders(repo, sheetName, (5, 1), headers, comments); var actualHeaders = repo.ReadCellRange(sheetName, (5, 1), (5, 8))[0];