Четвърто домашно

  1. Въпроси по условието на четвърто домашно пускайте тук. Както винаги, не пишете код, освен ако не става въпрос за споделяне на тест, който сте си написали, за доброто на колегите си.

  2. Edit: nevermind, зададох тъп въпрос...

    Edit 2: да не седи празен коментара, ето малко тестове, както винаги в последния момент:

    #[test]
    fn test_extract_words() {
        assert_eq!(extract_words(""), Vec::<String>::new());
        assert_eq!(extract_words(" "), Vec::<String>::new());
        assert_eq!(extract_words("   !!!  "), Vec::<String>::new());
        assert_eq!(extract_words("test"), vec!["test"]);
        assert_eq!(extract_words("  mest!!"), vec!["mest"]);
        assert_eq!(extract_words("zest   "), vec!["zest"]);
        assert_eq!(extract_words(" a! b? c&@#$&"), vec!["a", "b", "c"]);
        assert_eq!(
            extract_words("тест utf8 こんにちは!"),
            vec!["тест", "utf", "こんにちは"]
        );
    }
    
    #[test]
    fn test_search() {
        let mut index = TextIndex::new();
        let empty = HashSet::new();
        assert_eq!(empty, index.search("something"));
    
        index.push("one, two");
        assert_eq!(set!{"one, two"}, index.search("two"));
        assert_eq!(empty, index.search("three"));
        index.push("two again!");
        assert_eq!(set!{"one, two", "two again!"}, index.search("two"));
        assert_eq!(set!{"two again!"}, index.search("again"));
        assert_eq!(empty, index.search("three"));
    }
    

Трябва да сте влезли в системата, за да може да отговаряте на теми.