MCPcopy Index your code
hub / github.com/battlecode/battlecode-2018 / test_rocket_landings

Function test_rocket_landings

battlecode-engine/src/rockets.rs:111–146  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

109
110 #[test]
111 fn test_rocket_landings() {
112 let mut landings = RocketLandingInfo::new();
113
114 // Add a few landings.
115 let loc = MapLocation::new(Planet::Mars, 0, 0);
116 let landing = RocketLanding::new(1, loc);
117 landings.add_landing(1, landing);
118 landings.add_landing(2, landing);
119 landings.add_landing(2, landing);
120 assert_eq!(landings.landings_on(1).len(), 1);
121 assert_eq!(landings.landings_on(2).len(), 2);
122 assert_eq!(landings.landings_on(3).len(), 0);
123
124 landings.add_landings(3, vec![landing, landing]);
125 assert_eq!(landings.landings_on(3).len(), 2);
126
127 landings.add_landing(3, landing);
128 assert_eq!(landings.landings_on(3).len(), 3);
129
130 landings.add_landings(2, vec![landing, landing, landing]);
131 assert_eq!(landings.landings_on(2).len(), 5);
132
133 // Check when all landings are returned, they are ordered by round.
134 let all = landings.all();
135 assert_eq!(all.len(), 9);
136 for i in 0..all.len() - 1 {
137 assert_lte!(all[i].0, all[i + 1].0);
138 }
139
140 // Check all grouped.
141 let all_grouped = landings.all_grouped();
142 assert_eq!(all_grouped.keys().len(), 3);
143 assert_eq!(all_grouped.get(&1).expect("key should exist").len(), 1);
144 assert_eq!(all_grouped.get(&2).expect("key should exist").len(), 5);
145 assert_eq!(all_grouped.get(&3).expect("key should exist").len(), 3);
146 }
147}

Callers

nothing calls this directly

Calls 4

add_landingMethod · 0.80
add_landingsMethod · 0.80
all_groupedMethod · 0.80
allMethod · 0.45

Tested by

no test coverage detected