Skip to content

Commit 7c4cfb8

Browse files
authored
fix(eventually-postgres): flaky integration test for event_store.rs (#251)
* fix(event): remove trailing parenthesis from AppendError * fix(tests/event_store): use if-let-else for result assertion in case of concurrency
1 parent aa48949 commit 7c4cfb8

File tree

2 files changed

+7
-11
lines changed

2 files changed

+7
-11
lines changed

eventually-postgres/src/event.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ pub enum StreamError {
3535

3636
#[derive(Debug, thiserror::Error)]
3737
pub enum AppendError {
38-
#[error("conflict error detected: {0})")]
38+
#[error("conflict error detected: {0}")]
3939
Conflict(#[source] version::ConflictError),
40-
#[error("concurrent update detected, represented as a conflict error: {0})")]
40+
#[error("concurrent update detected, represented as a conflict error: {0}")]
4141
Concurrency(#[source] version::ConflictError),
4242
#[error("failed to begin transaction: {0}")]
4343
BeginTransaction(#[source] sqlx::Error),

eventually-postgres/tests/event_store.rs

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -182,15 +182,11 @@ async fn it_handles_concurrent_writes_to_the_same_stream() {
182182

183183
match result {
184184
(Ok(_), Err(err)) | (Err(err), Ok(_)) => {
185-
let expected_err = event::AppendError::Concurrency(version::ConflictError {
186-
expected: 0,
187-
actual: 1,
188-
});
189-
190-
let actual_err_msg = format!("{}", err);
191-
let expected_err_msg = format!("{}", expected_err);
192-
193-
assert_eq!(expected_err_msg, actual_err_msg);
185+
if let event::AppendError::Conflict(_) | event::AppendError::Concurrency(_) = err {
186+
// This is the expected scenario :)
187+
} else {
188+
panic!("unexpected error, {:?}", err);
189+
}
194190
}
195191
(first, second) => panic!(
196192
"invalid state detected, first: {:?}, second: {:?}",

0 commit comments

Comments
 (0)