get_items_by_character takes character id not character entity
This commit is contained in:
		
							parent
							
								
									01fe0931b1
								
							
						
					
					
						commit
						cae89cd2ac
					
				| @ -85,7 +85,7 @@ pub trait EntityGateway: Send + Sync + Clone { | |||||||
|         unimplemented!(); |         unimplemented!(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     async fn get_items_by_character(&self, _char: &CharacterEntity) -> Result<Vec<ItemEntity>, GatewayError> { |     async fn get_items_by_character(&self, _char_id: &CharacterEntityId) -> Result<Vec<ItemEntity>, GatewayError> { | ||||||
|         unimplemented!(); |         unimplemented!(); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  | |||||||
| @ -205,14 +205,14 @@ impl EntityGateway for InMemoryGateway { | |||||||
|         Ok(()) |         Ok(()) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     async fn get_items_by_character(&self, character: &CharacterEntity) -> Result<Vec<ItemEntity>, GatewayError> { |     async fn get_items_by_character(&self, character_id: &CharacterEntityId) -> Result<Vec<ItemEntity>, GatewayError> { | ||||||
|         let items = self.items.lock().unwrap(); |         let items = self.items.lock().unwrap(); | ||||||
|         Ok(items |         Ok(items | ||||||
|             .iter() |             .iter() | ||||||
|             .filter(|(_, k)| { |             .filter(|(_, k)| { | ||||||
|                 match k.location { |                 match k.location { | ||||||
|                     ItemLocation::Inventory{character_id, ..} => character_id == character.id, |                     ItemLocation::Inventory{character_id, ..} => character_id == character_id, | ||||||
|                     ItemLocation::Bank{character_id, ..} => character_id == character.id, |                     ItemLocation::Bank{character_id, ..} => character_id == character_id, | ||||||
|                     _ => false |                     _ => false | ||||||
|                 } |                 } | ||||||
|             }) |             }) | ||||||
|  | |||||||
| @ -364,7 +364,7 @@ impl EntityGateway for PostgresGateway { | |||||||
|         Ok(()) |         Ok(()) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     async fn get_items_by_character(&self, char: &CharacterEntity) -> Result<Vec<ItemEntity>, GatewayError> { |     async fn get_items_by_character(&self, char_id: &CharacterEntityId) -> Result<Vec<ItemEntity>, GatewayError> { | ||||||
|         let q = r#"select * from (
 |         let q = r#"select * from (
 | ||||||
|                       select distinct on (item_location.item) |                       select distinct on (item_location.item) | ||||||
|                           item.id, |                           item.id, | ||||||
| @ -384,7 +384,7 @@ impl EntityGateway for PostgresGateway { | |||||||
|                      or cast (location -> 'Bank' ->> 'character_id' as integer) = $1 |                      or cast (location -> 'Bank' ->> 'character_id' as integer) = $1 | ||||||
|                    "#;
 |                    "#;
 | ||||||
|         let items = sqlx::query_as::<_, PgItemWithLocation>(q) |         let items = sqlx::query_as::<_, PgItemWithLocation>(q) | ||||||
|             .bind(char.id.0) |             .bind(char_id.0) | ||||||
|             .fetch(&self.pool); |             .fetch(&self.pool); | ||||||
|         Ok(join_all(items |         Ok(join_all(items | ||||||
|                     .filter_map(|item: Result<PgItemWithLocation, _>| { |                     .filter_map(|item: Result<PgItemWithLocation, _>| { | ||||||
|  | |||||||
| @ -116,7 +116,7 @@ impl ItemManager { | |||||||
| 
 | 
 | ||||||
|     // TODO: Result
 |     // TODO: Result
 | ||||||
|     pub async fn load_character<EG: EntityGateway>(&mut self, entity_gateway: &mut EG, character: &CharacterEntity) -> Result<(), ItemManagerError> { |     pub async fn load_character<EG: EntityGateway>(&mut self, entity_gateway: &mut EG, character: &CharacterEntity) -> Result<(), ItemManagerError> { | ||||||
|         let items = entity_gateway.get_items_by_character(&character).await?; |         let items = entity_gateway.get_items_by_character(&character.id).await?; | ||||||
|         let inventory_items = items.clone().into_iter() |         let inventory_items = items.clone().into_iter() | ||||||
|             .filter_map(|item| { |             .filter_map(|item| { | ||||||
|                 match item.location { |                 match item.location { | ||||||
|  | |||||||
| @ -295,7 +295,7 @@ async fn test_deposit_individual_item() { | |||||||
|                      && player_no_longer_has_item.amount == 0 |                      && player_no_longer_has_item.amount == 0 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -364,7 +364,7 @@ async fn test_deposit_stacked_item() { | |||||||
|                      && player_no_longer_has_item.amount == 3 |                      && player_no_longer_has_item.amount == 3 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -433,7 +433,7 @@ async fn test_deposit_partial_stacked_item() { | |||||||
|                      && player_no_longer_has_item.amount == 2 |                      && player_no_longer_has_item.amount == 2 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -528,7 +528,7 @@ async fn test_deposit_stacked_item_with_stack_already_in_bank() { | |||||||
|                      && player_no_longer_has_item.amount == 2 |                      && player_no_longer_has_item.amount == 2 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -604,7 +604,7 @@ async fn test_deposit_stacked_item_with_full_stack_in_bank() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -700,7 +700,7 @@ async fn test_deposit_individual_item_in_full_bank() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -793,7 +793,7 @@ async fn test_deposit_stacked_item_in_full_bank() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -899,7 +899,7 @@ async fn test_deposit_stacked_item_in_full_bank_with_partial_stack() { | |||||||
|         unknown: 0, |         unknown: 0, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -1096,7 +1096,7 @@ async fn test_withdraw_individual_item() { | |||||||
|                      if create_item.item_id == 0x20000 |                      if create_item.item_id == 0x20000 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let inventory_item_ids = items.iter() |     let inventory_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Inventory{..} = item.location { |             if let item::ItemLocation::Inventory{..} = item.location { | ||||||
| @ -1163,7 +1163,7 @@ async fn test_withdraw_stacked_item() { | |||||||
|                      if create_item.item_id == 0x10002 |                      if create_item.item_id == 0x10002 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let inventory_item_ids = items.iter() |     let inventory_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Inventory {..} = item.location { |             if let item::ItemLocation::Inventory {..} = item.location { | ||||||
| @ -1230,7 +1230,7 @@ async fn test_withdraw_partial_stacked_item() { | |||||||
|                      if create_item.item_id == 0x10002 |                      if create_item.item_id == 0x10002 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -1323,7 +1323,7 @@ async fn test_withdraw_stacked_item_with_stack_already_in_inventory() { | |||||||
|                      if create_item.item_id == 0x10000 |                      if create_item.item_id == 0x10000 | ||||||
|     )); |     )); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let inventory_item_ids = items.iter() |     let inventory_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Inventory {..} = item.location { |             if let item::ItemLocation::Inventory {..} = item.location { | ||||||
| @ -1399,7 +1399,7 @@ async fn test_withdraw_stacked_item_with_full_stack_in_inventory() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -1495,7 +1495,7 @@ async fn test_withdraw_individual_item_in_full_inventory() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -1588,7 +1588,7 @@ async fn test_withdraw_stacked_item_in_full_inventory() { | |||||||
| 
 | 
 | ||||||
|     assert!(packets.is_err()); |     assert!(packets.is_err()); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
| @ -1695,7 +1695,7 @@ async fn test_withdraw_stacked_item_in_full_inventory_with_partial_stack() { | |||||||
|         unknown: 0, |         unknown: 0, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let bank_item_ids = items.iter() |     let bank_item_ids = items.iter() | ||||||
|         .filter_map(|item| { |         .filter_map(|item| { | ||||||
|             if let item::ItemLocation::Bank {..} = item.location { |             if let item::ItemLocation::Bank {..} = item.location { | ||||||
|  | |||||||
| @ -80,7 +80,7 @@ async fn test_pick_up_item_stack_of_items_already_in_inventory() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 6); |     assert!(p1_items.len() == 6); | ||||||
| 
 | 
 | ||||||
|     let p1_item_ids = p1_items.iter().map(|item| { |     let p1_item_ids = p1_items.iter().map(|item| { | ||||||
| @ -149,7 +149,7 @@ async fn test_pick_up_item_stack_of_items_not_already_held() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 1); |     assert!(p1_items.len() == 1); | ||||||
| 
 | 
 | ||||||
|     let first_item = p1_items.get(0).unwrap(); |     let first_item = p1_items.get(0).unwrap(); | ||||||
| @ -227,7 +227,7 @@ async fn test_pick_up_meseta_when_inventory_full() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 30); |     assert!(p1_items.len() == 30); | ||||||
| 
 | 
 | ||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
| @ -324,7 +324,7 @@ async fn test_pick_up_partial_stacked_item_when_inventory_is_otherwise_full() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 31); |     assert!(p1_items.len() == 31); | ||||||
| 
 | 
 | ||||||
|     let monomate1 = p1_items.get(29).unwrap(); |     let monomate1 = p1_items.get(29).unwrap(); | ||||||
| @ -415,10 +415,10 @@ async fn test_can_not_pick_up_item_when_inventory_full() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 30); |     assert!(p1_items.len() == 30); | ||||||
| 
 | 
 | ||||||
|     let p2_items = entity_gateway.get_items_by_character(&char2).await.unwrap(); |     let p2_items = entity_gateway.get_items_by_character(&char2.id).await.unwrap(); | ||||||
|     assert!(p2_items.len() == 0); |     assert!(p2_items.len() == 0); | ||||||
| 
 | 
 | ||||||
|     ship.handle(ClientId(2), &RecvShipPacket::DirectMessage(DirectMessage::new(0, GameMessage::PickupItem(PickupItem { |     ship.handle(ClientId(2), &RecvShipPacket::DirectMessage(DirectMessage::new(0, GameMessage::PickupItem(PickupItem { | ||||||
| @ -429,7 +429,7 @@ async fn test_can_not_pick_up_item_when_inventory_full() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p2_items = entity_gateway.get_items_by_character(&char2).await.unwrap(); |     let p2_items = entity_gateway.get_items_by_character(&char2.id).await.unwrap(); | ||||||
|     assert!(p2_items.len() == 1); |     assert!(p2_items.len() == 1); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -544,10 +544,10 @@ async fn test_pick_up_stack_that_would_exceed_stack_limit() { | |||||||
|     })))).await.unwrap().collect::<Vec<_>>(); |     })))).await.unwrap().collect::<Vec<_>>(); | ||||||
|     assert!(packets.len() == 0); |     assert!(packets.len() == 0); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 6); |     assert!(p1_items.len() == 6); | ||||||
| 
 | 
 | ||||||
|     let p2_items = entity_gateway.get_items_by_character(&char2).await.unwrap(); |     let p2_items = entity_gateway.get_items_by_character(&char2.id).await.unwrap(); | ||||||
|     assert!(p2_items.len() == 0); |     assert!(p2_items.len() == 0); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -726,7 +726,7 @@ async fn test_player_drops_partial_stack_and_other_player_picks_it_up() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items.len() == 3); |     assert!(p1_items.len() == 3); | ||||||
| 
 | 
 | ||||||
|     let p1_item_ids = p1_items.iter().map(|item| { |     let p1_item_ids = p1_items.iter().map(|item| { | ||||||
| @ -742,7 +742,7 @@ async fn test_player_drops_partial_stack_and_other_player_picks_it_up() { | |||||||
|     }); |     }); | ||||||
|     assert!(all_items_are_monomates); |     assert!(all_items_are_monomates); | ||||||
| 
 | 
 | ||||||
|     let p2_items = entity_gateway.get_items_by_character(&char2).await.unwrap(); |     let p2_items = entity_gateway.get_items_by_character(&char2.id).await.unwrap(); | ||||||
|     assert!(p2_items.len() == 2); |     assert!(p2_items.len() == 2); | ||||||
| 
 | 
 | ||||||
|     let p2_item_ids = p2_items.iter().map(|item| { |     let p2_item_ids = p2_items.iter().map(|item| { | ||||||
|  | |||||||
| @ -49,7 +49,7 @@ async fn test_use_monomate() { | |||||||
|         item_id: 0x10000, |         item_id: 0x10000, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(items.iter().filter(|item| { |     assert!(items.iter().filter(|item| { | ||||||
|         if let item::ItemDetail::Tool(t) = item.item { |         if let item::ItemDetail::Tool(t) = item.item { | ||||||
|             t.tool == item::tool::ToolType::Monomate |             t.tool == item::tool::ToolType::Monomate | ||||||
| @ -110,7 +110,7 @@ async fn test_use_monomate_twice() { | |||||||
|         item_id: 0x10000, |         item_id: 0x10000, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(items.iter().filter(|item| { |     assert!(items.iter().filter(|item| { | ||||||
|         if let item::ItemDetail::Tool(t) = item.item { |         if let item::ItemDetail::Tool(t) = item.item { | ||||||
|             t.tool == item::tool::ToolType::Monomate |             t.tool == item::tool::ToolType::Monomate | ||||||
| @ -166,7 +166,7 @@ async fn test_use_last_monomate() { | |||||||
|         item_id: 0x10000, |         item_id: 0x10000, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(items.iter().filter(|item| { |     assert!(items.iter().filter(|item| { | ||||||
|         if let item::ItemDetail::Tool(t) = item.item { |         if let item::ItemDetail::Tool(t) = item.item { | ||||||
|             t.tool == item::tool::ToolType::Monomate |             t.tool == item::tool::ToolType::Monomate | ||||||
| @ -218,7 +218,7 @@ async fn test_use_nonstackable_tool() { | |||||||
|         item_id: 0x10000, |         item_id: 0x10000, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(items.len() == 0); |     assert!(items.len() == 0); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -269,7 +269,7 @@ async fn test_use_materials() { | |||||||
|         item_id: 0x10001, |         item_id: 0x10001, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(items.iter().filter(|item| { |     assert!(items.iter().filter(|item| { | ||||||
|         if let item::ItemDetail::Tool(t) = item.item { |         if let item::ItemDetail::Tool(t) = item.item { | ||||||
|             t.tool == item::tool::ToolType::PowerMaterial |             t.tool == item::tool::ToolType::PowerMaterial | ||||||
|  | |||||||
| @ -60,7 +60,7 @@ async fn test_mag_feed() { | |||||||
|         })))).await.unwrap().for_each(drop); |         })))).await.unwrap().for_each(drop); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let mag = p1_items.get(0).unwrap(); |     let mag = p1_items.get(0).unwrap(); | ||||||
|     match &mag.item { |     match &mag.item { | ||||||
|         item::ItemDetail::Mag(mag) => { |         item::ItemDetail::Mag(mag) => { | ||||||
| @ -128,7 +128,7 @@ async fn test_mag_change_owner() { | |||||||
|         unknown: [0; 3] |         unknown: [0; 3] | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p2_items = entity_gateway.get_items_by_character(&char2).await.unwrap(); |     let p2_items = entity_gateway.get_items_by_character(&char2.id).await.unwrap(); | ||||||
|     let mag = p2_items.get(0).unwrap(); |     let mag = p2_items.get(0).unwrap(); | ||||||
|     match &mag.item { |     match &mag.item { | ||||||
|         item::ItemDetail::Mag(mag) => { |         item::ItemDetail::Mag(mag) => { | ||||||
| @ -199,7 +199,7 @@ async fn test_mag_cell() { | |||||||
|         item_id: 0x10001, |         item_id: 0x10001, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     let mag = p1_items.get(0).unwrap(); |     let mag = p1_items.get(0).unwrap(); | ||||||
|     match &mag.item { |     match &mag.item { | ||||||
|         item::ItemDetail::Mag(mag) => { |         item::ItemDetail::Mag(mag) => { | ||||||
|  | |||||||
| @ -135,7 +135,7 @@ async fn test_player_buys_from_weapon_shop() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert!(c1.meseta < 999999); |     assert!(c1.meseta < 999999); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 1); |     assert_eq!(p1_items.len(), 1); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -173,7 +173,7 @@ async fn test_player_buys_from_tool_shop() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert!(c1.meseta < 999999); |     assert!(c1.meseta < 999999); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 1); |     assert_eq!(p1_items.len(), 1); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -211,7 +211,7 @@ async fn test_player_buys_multiple_from_tool_shop() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert!(c1.meseta < 999999); |     assert!(c1.meseta < 999999); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 5); |     assert_eq!(p1_items.len(), 5); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -249,7 +249,7 @@ async fn test_player_buys_from_armor_shop() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert!(c1.meseta < 999999); |     assert!(c1.meseta < 999999); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 1); |     assert_eq!(p1_items.len(), 1); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -388,7 +388,7 @@ async fn test_buying_item_without_enough_mseseta() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert_eq!(c1.meseta, 0); |     assert_eq!(c1.meseta, 0); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 0); |     assert_eq!(p1_items.len(), 0); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -444,7 +444,7 @@ async fn test_player_double_buys_from_tool_shop() { | |||||||
|     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); |     let characters1 = entity_gateway.get_characters_by_user(&user1).await.unwrap(); | ||||||
|     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); |     let c1 = characters1.get(0).as_ref().unwrap().as_ref().unwrap(); | ||||||
|     assert!(c1.meseta < 999999); |     assert!(c1.meseta < 999999); | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert_eq!(p1_items.len(), 9); |     assert_eq!(p1_items.len(), 9); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -502,7 +502,7 @@ async fn test_techs_disappear_from_shop_when_bought() { | |||||||
|         unknown1: 0, |         unknown1: 0, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items[0].item != p1_items[1].item); |     assert!(p1_items[0].item != p1_items[1].item); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -560,6 +560,6 @@ async fn test_units_disappear_from_shop_when_bought() { | |||||||
|         unknown1: 0, |         unknown1: 0, | ||||||
|     })))).await.unwrap().for_each(drop); |     })))).await.unwrap().for_each(drop); | ||||||
| 
 | 
 | ||||||
|     let p1_items = entity_gateway.get_items_by_character(&char1).await.unwrap(); |     let p1_items = entity_gateway.get_items_by_character(&char1.id).await.unwrap(); | ||||||
|     assert!(p1_items[0].item != p1_items[1].item); |     assert!(p1_items[0].item != p1_items[1].item); | ||||||
| } | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user