Skip to content

Commit a5b3530

Browse files
Removed collation from constants module
Removed UTF8 and UTF8MB4 collation from the constants module and used the collation module instead.
1 parent f15612b commit a5b3530

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

src/binlog/mod.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,7 @@ mod tests {
323323

324324
use crate::{
325325
binlog::{events::RowsEventData, value::BinlogValue},
326+
collations::CollationID,
326327
constants::ColumnFlags,
327328
proto::MySerialize,
328329
value::Value,
@@ -784,9 +785,14 @@ mod tests {
784785
assert_eq!(col.flags(), f);
785786
}
786787

787-
for (col, charset) in columns.iter().zip([0, 45, 45, 63, 0])
788-
{
789-
assert_eq!(col.character_set(), charset);
788+
for (col, charset) in columns.iter().zip([
789+
CollationID::UNKNOWN_COLLATION_ID,
790+
CollationID::UTF8MB4_GENERAL_CI,
791+
CollationID::UTF8MB4_GENERAL_CI,
792+
CollationID::BINARY,
793+
CollationID::UNKNOWN_COLLATION_ID,
794+
]) {
795+
assert_eq!(col.character_set(), charset as u16);
790796
}
791797
}
792798
}

src/packets/mod.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ use std::{
1717
borrow::Cow, cmp::max, collections::HashMap, convert::TryFrom, fmt, io, marker::PhantomData,
1818
};
1919

20+
use crate::collations::CollationID;
2021
use crate::{
2122
constants::{
2223
CapabilityFlags, ColumnFlags, ColumnType, Command, CursorType, SessionStateType,
2324
StatusFlags, StmtExecuteParamFlags, StmtExecuteParamsFlags, MAX_PAYLOAD_LEN,
24-
UTF8MB4_GENERAL_CI, UTF8_GENERAL_CI,
2525
},
2626
io::{BufMutExt, ParseBuf},
2727
misc::{
@@ -2030,9 +2030,9 @@ impl<'a> HandshakeResponse<'a> {
20302030
Self {
20312031
scramble_buf,
20322032
collation: if server_version >= (5, 5, 3) {
2033-
RawInt::new(UTF8MB4_GENERAL_CI as u8)
2033+
RawInt::new(CollationID::UTF8MB4_GENERAL_CI as u8)
20342034
} else {
2035-
RawInt::new(UTF8_GENERAL_CI as u8)
2035+
RawInt::new(CollationID::UTF8MB3_GENERAL_CI as u8)
20362036
},
20372037
user: user.map(RawBytes::new).unwrap_or_default(),
20382038
db_name: db_name.map(RawBytes::new),
@@ -3414,7 +3414,7 @@ impl<'de> MyDeserialize<'de> for SemiSyncAckPacket<'de> {
34143414
mod test {
34153415
use super::*;
34163416
use crate::{
3417-
constants::{CapabilityFlags, ColumnFlags, ColumnType, StatusFlags, UTF8_GENERAL_CI},
3417+
constants::{CapabilityFlags, ColumnFlags, ColumnType, StatusFlags},
34183418
proto::{MyDeserialize, MySerialize},
34193419
};
34203420

@@ -3670,7 +3670,10 @@ mod test {
36703670
assert_eq!(column.org_table_str(), "org_table");
36713671
assert_eq!(column.name_str(), "name");
36723672
assert_eq!(column.org_name_str(), "org_name");
3673-
assert_eq!(column.character_set(), UTF8_GENERAL_CI);
3673+
assert_eq!(
3674+
column.character_set(),
3675+
CollationID::UTF8MB3_GENERAL_CI as u16
3676+
);
36743677
assert_eq!(column.column_length(), 15);
36753678
assert_eq!(column.column_type(), ColumnType::MYSQL_TYPE_DECIMAL);
36763679
assert_eq!(column.flags(), ColumnFlags::NOT_NULL_FLAG);

0 commit comments

Comments
 (0)