rust/hg-core/src/dirstate/dirs_multiset.rs
changeset 48022 f2a9db29cb2d
parent 47944 e02f9af7aed1
child 48068 bf8837e3d7ce
equal deleted inserted replaced
48021:627cd8f33db0 48022:f2a9db29cb2d
    47         for item in dirstate {
    47         for item in dirstate {
    48             let (filename, entry) = item?;
    48             let (filename, entry) = item?;
    49             let filename = filename.as_ref();
    49             let filename = filename.as_ref();
    50             // This `if` is optimized out of the loop
    50             // This `if` is optimized out of the loop
    51             if only_tracked {
    51             if only_tracked {
    52                 if entry.state != EntryState::Removed {
    52                 if entry.state() != EntryState::Removed {
    53                     multiset.add_path(filename)?;
    53                     multiset.add_path(filename)?;
    54                 }
    54                 }
    55             } else {
    55             } else {
    56                 multiset.add_path(filename)?;
    56                 multiset.add_path(filename)?;
    57             }
    57             }
   370         assert_eq!(expected, new);
   370         assert_eq!(expected, new);
   371 
   371 
   372         let input_map = ["b/x", "a/c", "a/d/x"].iter().map(|f| {
   372         let input_map = ["b/x", "a/c", "a/d/x"].iter().map(|f| {
   373             Ok((
   373             Ok((
   374                 HgPathBuf::from_bytes(f.as_bytes()),
   374                 HgPathBuf::from_bytes(f.as_bytes()),
   375                 DirstateEntry {
   375                 DirstateEntry::from_v1_data(EntryState::Normal, 0, 0, 0),
   376                     state: EntryState::Normal,
       
   377                     mode: 0,
       
   378                     mtime: 0,
       
   379                     size: 0,
       
   380                 },
       
   381             ))
   376             ))
   382         });
   377         });
   383         let expected_inner = [("", 2), ("a", 2), ("b", 1), ("a/d", 1)]
   378         let expected_inner = [("", 2), ("a", 2), ("b", 1), ("a/d", 1)]
   384             .iter()
   379             .iter()
   385             .map(|(k, v)| (HgPathBuf::from_bytes(k.as_bytes()), *v))
   380             .map(|(k, v)| (HgPathBuf::from_bytes(k.as_bytes()), *v))
   402         ]
   397         ]
   403         .iter()
   398         .iter()
   404         .map(|(f, state)| {
   399         .map(|(f, state)| {
   405             Ok((
   400             Ok((
   406                 HgPathBuf::from_bytes(f.as_bytes()),
   401                 HgPathBuf::from_bytes(f.as_bytes()),
   407                 DirstateEntry {
   402                 DirstateEntry::from_v1_data(*state, 0, 0, 0),
   408                     state: *state,
       
   409                     mode: 0,
       
   410                     mtime: 0,
       
   411                     size: 0,
       
   412                 },
       
   413             ))
   403             ))
   414         });
   404         });
   415 
   405 
   416         // "a" incremented with "a/c" and "a/d/"
   406         // "a" incremented with "a/c" and "a/d/"
   417         let expected_inner = [("", 1), ("a", 3)]
   407         let expected_inner = [("", 1), ("a", 3)]