Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
01458e1
integration: merge batch tests into a single file
wprzytula May 10, 2025
798cae9
integration: move test_shard_out_of_range to shards.rs
wprzytula May 10, 2025
7ebdc4c
integration: rename load_balancing.rs -> latency_awareness.rs
wprzytula May 10, 2025
8bb526e
integration: move vector tests to cql_collections.rs
wprzytula May 10, 2025
91c04a2
integration: move test_deserialize_empty_collections to cql_collectio…
wprzytula May 10, 2025
985ed9f
integration: extract simple_strategy_test
wprzytula May 10, 2025
cbb0a7b
integration: introduce metadata/configuration.rs
wprzytula May 26, 2025
4a6e5f8
integration: move test_refresh_metadata_after_schema_agreement
wprzytula May 10, 2025
8775a77
integration: extract metadata/contents.rs
wprzytula May 10, 2025
d03d4b4
integration: move test_views_in_schema_info() into contents.rs
wprzytula May 10, 2025
34e2bc4
integration: move batch LWT tests to batch.rs
wprzytula May 10, 2025
3a3f248
integration: move batch prepare tests to batch.rs
wprzytula May 10, 2025
6a1989a
integration: move turn_off_schema_fetching test
wprzytula May 10, 2025
9f32dfa
integration: extract tracing.rs
wprzytula May 10, 2025
8d16098
integration: extract use_keyspace.rs
wprzytula May 10, 2025
2012f82
integration: extract token_awareness.rs
wprzytula May 10, 2025
74528ab
integration: move test_fetch_system_keyspace to metadata/contents
wprzytula May 10, 2025
c455d22
integration: fix test_fetch_system_keyspace()
wprzytula May 10, 2025
a3b4802
integration: extract test_unusual_valuelists
wprzytula May 10, 2025
7dd382c
integration: move test_get_keyspace_name() to use_keyspace.rs
wprzytula May 10, 2025
520d5c0
integration: move keyspace_filtering test
wprzytula May 10, 2025
904e1d7
integration: extract timestamps.rs
wprzytula May 10, 2025
beb82aa
integration: extract transparent_reprepare.rs
wprzytula May 10, 2025
02cb460
integration: extract test_unprepared_statement
wprzytula May 10, 2025
7f5e970
integration: extract test_prepared_statement
wprzytula May 10, 2025
a6b8648
integration: extract macros/complex_pk
wprzytula May 26, 2025
6b58c09
integration: move test_batch to batch.rs
wprzytula May 10, 2025
2a908ed
integration: move test_counter_batch() to batch.rs
wprzytula May 10, 2025
119ef4f
integration: extract test_batch_to_multiple_tables()
wprzytula May 10, 2025
10b490d
integration: extract test_prepared_config()
wprzytula May 10, 2025
f4c4234
integration: move test_connection_failure to new_session.rs
wprzytula May 10, 2025
b8a89ff
integration: extract pager.rs tests
wprzytula May 10, 2025
f2cf33e
integration: extract test_prepared_partitioner()
wprzytula May 10, 2025
189f4b8
integration: extract test_token_calculation()
wprzytula May 10, 2025
6b022b4
integration: extract test_request_timeout()
wprzytula May 10, 2025
98d0b41
integration: delete test_await_schema_agreement()
wprzytula May 10, 2025
1423fe9
integration: extract test_named_bind_markers()
wprzytula May 10, 2025
f191efd
integration: rename session.rs -> db_errors.rs
wprzytula May 10, 2025
b5f4101
integration: extract test_prepared_statement_col_specs()
wprzytula May 10, 2025
8ef8b57
integration: statement.rs -> enforce_coordinator.rs
wprzytula May 10, 2025
12ed9f0
integration: move silent_prepare_query() to unprepared.rs
wprzytula May 26, 2025
7b4dadb
integration: move skip_metadata_optimization to prepared
wprzytula May 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
integration: extract macros/complex_pk
There was a test case in test_prepared_statement() that actually had
nothing to do with prepared statements, but was testing the ser/de
macros. It was extracted to a separate file.
  • Loading branch information
wprzytula committed May 26, 2025
commit a6b864887641b3c6cad4dac0b08c72e6ac9a853c
55 changes: 55 additions & 0 deletions scylla/tests/integration/macros/complex_pk.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
use crate::utils::{
create_new_session_builder, setup_tracing, unique_keyspace_name, PerformDDL as _,
};

#[tokio::test]
async fn test_macros_complex_pk() {
setup_tracing();
let session = create_new_session_builder().build().await.unwrap();
let ks = unique_keyspace_name();

session.ddl(format!("CREATE KEYSPACE IF NOT EXISTS {} WITH REPLICATION = {{'class' : 'NetworkTopologyStrategy', 'replication_factor' : 1}}", ks)).await.unwrap();
session.use_keyspace(ks, true).await.unwrap();
session
.ddl("CREATE TABLE IF NOT EXISTS complex_pk (a int, b int, c text, d int, e int, primary key ((a,b,c),d))")
.await
.unwrap();

// Check that SerializeRow and DeserializeRow macros work
{
#[derive(scylla::SerializeRow, scylla::DeserializeRow, PartialEq, Debug, Clone)]
struct ComplexPk {
a: i32,
b: i32,
c: Option<String>,
d: i32,
e: i32,
}
let input: ComplexPk = ComplexPk {
a: 9,
b: 8,
c: Some("seven".into()),
d: 6,
e: 5,
};
session
.query_unpaged(
"INSERT INTO complex_pk (a,b,c,d,e) VALUES (?,?,?,?,?)",
input.clone(),
)
.await
.unwrap();
let output: ComplexPk = session
.query_unpaged(
"SELECT * FROM complex_pk WHERE a = 9 and b = 8 and c = 'seven'",
&[],
)
.await
.unwrap()
.into_rows_result()
.unwrap()
.single_row()
.unwrap();
assert_eq!(input, output)
}
}
1 change: 1 addition & 0 deletions scylla/tests/integration/macros/mod.rs
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
mod complex_pk;
mod hygiene;
43 changes: 0 additions & 43 deletions scylla/tests/integration/statements/prepared.rs
Original file line number Diff line number Diff line change
Expand Up @@ -169,47 +169,4 @@ async fn test_prepared_statement() {
(17, 16, "I'm prepared!!!", 7, None)
);
}
// Check that SerializeRow and DeserializeRow macros work
{
#[derive(scylla::SerializeRow, scylla::DeserializeRow, PartialEq, Debug, Clone)]
struct ComplexPk {
a: i32,
b: i32,
c: Option<String>,
d: i32,
e: i32,
}
let input: ComplexPk = ComplexPk {
a: 9,
b: 8,
c: Some("seven".into()),
d: 6,
e: 5,
};
session
.query_unpaged(
format!(
"INSERT INTO {}.complex_pk (a,b,c,d,e) VALUES (?,?,?,?,?)",
ks
),
input.clone(),
)
.await
.unwrap();
let output: ComplexPk = session
.query_unpaged(
format!(
"SELECT * FROM {}.complex_pk WHERE a = 9 and b = 8 and c = 'seven'",
ks
),
&[],
)
.await
.unwrap()
.into_rows_result()
.unwrap()
.single_row()
.unwrap();
assert_eq!(input, output)
}
}