Skip to content

Commit a054d42

Browse files
Fixed clippy, refactored names and added doc comments
1 parent 711ce6c commit a054d42

6 files changed

Lines changed: 18 additions & 15 deletions

File tree

src/commands/command_util.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -507,8 +507,10 @@ static CONFIG_FILE_NAME: &str = "course_config.toml";
507507

508508
/// Checks if current directory or given path
509509
/// contains valid exercise (i.e config file)
510-
/// Returns Err(msg) if given invalid path (including root )
511-
pub fn find_submit_or_paste_config(
510+
/// Returns Err(msg) if given invalid path (including root)
511+
/// Returns Ok(()) if no path given, but if current dir is not
512+
/// an exercise, leaves course_config as None
513+
pub fn find_course_config_for_exercise(
512514
exercise_slug: &mut String,
513515
course_config: &mut Option<CourseConfig>,
514516
exercise_dir: &mut PathBuf,
@@ -581,7 +583,7 @@ pub fn read_new_course_config(course_config_path: &Path) -> Result<Option<Course
581583
}
582584
}
583585

584-
// retrieves exercise id for exercise from CourseConfig
586+
/// Retrieves exercise id for exercise from CourseConfig
585587
pub fn get_exercise_id_from_config(
586588
course_config: &CourseConfig,
587589
exercise_slug: &str,
@@ -593,7 +595,7 @@ pub fn get_exercise_id_from_config(
593595
}
594596
}
595597

596-
// generates return_url for submissions and pastes
598+
/// Generates return_url for submissions and pastes
597599
pub fn generate_return_url(exercise_id: usize) -> String {
598600
format!(
599601
"{}/api/v8/core/exercises/{}/submissions",
@@ -609,7 +611,8 @@ pub fn get_projects_dir() -> PathBuf {
609611
tmc_langs::get_projects_dir(PLUGIN).unwrap()
610612
}
611613

612-
/// Gives a list of all courses in projects-folder
614+
/// Choose course and then exercise interactively, return exercise path
615+
/// or Err(String) if either menu is interrupted or no items found
613616
pub fn choose_exercise() -> Result<PathBuf, String> {
614617
let mut courses: Vec<String> = Vec::new();
615618

src/commands/download_command.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::path::PathBuf;
22
use std::process::Command;
33

44
use super::command_util;
5-
use super::command_util::*;
5+
use super::command_util::{get_projects_dir, Client};
66
use crate::interactive;
77
use crate::io_module::{Io, PrintColor};
88
use crate::progress_reporting;

src/commands/exercises_command.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use super::command_util::*;
1+
use super::command_util::{get_course_id_by_name, Client};
22
use crate::io_module::{Io, PrintColor};
33

44
use tmc_client::CourseExercise;

src/commands/paste_command.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::command_util;
2-
use super::command_util::{ask_exercise_interactive, find_submit_or_paste_config, Client};
2+
use super::command_util::{ask_exercise_interactive, find_course_config_for_exercise, Client};
33
use crate::io_module::{Io, PrintColor};
44
use crate::progress_reporting;
55
use crate::progress_reporting::ProgressBarManager;
@@ -24,7 +24,7 @@ pub fn paste(io: &mut dyn Io, client: &mut dyn Client, path: &str) {
2424
let mut course_config = None;
2525
let mut exercise_dir = std::path::PathBuf::new();
2626

27-
if let Err(error) = find_submit_or_paste_config(
27+
if let Err(error) = find_course_config_for_exercise(
2828
&mut exercise_name,
2929
&mut course_config,
3030
&mut exercise_dir,

src/commands/submit_command.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::command_util;
2-
use super::command_util::*;
2+
use super::command_util::{ask_exercise_interactive, find_course_config_for_exercise, Client};
33
use crate::io_module::{Io, PrintColor};
44
use crate::progress_reporting;
55
use crate::progress_reporting::ProgressBarManager;
@@ -33,7 +33,7 @@ fn submit_logic(io: &mut dyn Io, client: &mut dyn Client, path: &str) {
3333
let mut course_config = None;
3434
let mut exercise_dir = std::path::PathBuf::new();
3535

36-
if let Err(error) = find_submit_or_paste_config(
36+
if let Err(error) = find_course_config_for_exercise(
3737
&mut exercise_name,
3838
&mut course_config,
3939
&mut exercise_dir,
@@ -205,8 +205,8 @@ fn into_locale(arg: &str) -> Result<Language> {
205205
#[cfg(test)]
206206
mod tests {
207207
use super::*;
208+
use command_util::MockClient;
208209
use std::slice::Iter;
209-
210210
pub struct IoTest<'a> {
211211
list: &'a mut Vec<String>,
212212
input: &'a mut Iter<'a, &'a str>,

src/commands/test_command.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use crate::commands::command_util;
2-
use crate::commands::command_util::{ask_exercise_interactive, find_submit_or_paste_config};
2+
use crate::commands::command_util::{ask_exercise_interactive, find_course_config_for_exercise};
33
use crate::io_module::{Io, PrintColor};
44
use std::path::Path;
55
use tmc_langs::RunResult;
@@ -17,13 +17,13 @@ pub fn test(io: &mut dyn Io, exercise_folder: Option<&str>) {
1717
path = folder;
1818
}
1919

20-
if let Err(error) = find_submit_or_paste_config(
20+
if let Err(error) = find_course_config_for_exercise(
2121
&mut exercise_name,
2222
&mut course_config,
2323
&mut exercise_dir,
2424
path,
2525
) {
26-
if !exercise_folder.is_none() {
26+
if exercise_folder.is_some() {
2727
io.println(&error, PrintColor::Failed);
2828
return;
2929
}

0 commit comments

Comments
 (0)