using ServerCore; using ServerBase; namespace BrokerTest; public class EntityBaseTests { private readonly DynamoDbClient m_dynamo_db_client; public EntityBaseTests() { m_dynamo_db_client = new DynamoDbClient(); (var error_code, var table_names) = ServerConfigHelper.getDynamoDbTableNamesWithServiceType("Dev"); ConditionValidCheckHelper.throwIfFalseWithCondition(() => ServerErrorCode.Success == error_code , () => $"Failed to ServerConfigHelper.getDynamoDbTableNamesWithServiceType() !!! : errorCode:{error_code}"); var result = m_dynamo_db_client.connectToDb(table_names, true, "http://localhost:8000", "local", "local"); if (result.isFail()) { Log.getLogger().error($"Failed to connectToDb !!! "); return; } Log.getLogger().info($"Success connectToDb !!!"); } internal async Task initDynamoDbClient() { if (false == await m_dynamo_db_client.createDBIfNotExists(false)) { // err_msg = $"Failed to create DB Table !!! - {toBasicString()}"; // result.setFail(ServerErrorCode.DynamoDbTableCreateFailed, err_msg); Log.getLogger().fatal("Failed to create DB Table !!!"); // return result; } } [Fact] public async Task entityInsertActionTest() { await initDynamoDbClient(); var user_entity = new UserTestEntity(); await user_entity.onInit(); user_entity.getEntityAction(); var user_id = Guid.NewGuid().ToString(); var name = $"name_{user_id}"; } [Fact] public async Task EntityFindOneActionTest() { await initDynamoDbClient(); var user_entity = new UserTestEntity(); await user_entity.onInit(); user_entity.getEntityAction(); // var example = new DynamoDbExample(m_dynamo_db_client); var user_id = Guid.NewGuid().ToString(); } [Fact] public async Task entityBaseTest() { await initDynamoDbClient(); var example = new DynamoDbExample(m_dynamo_db_client); var user_id = Guid.NewGuid().ToString(); var name = $"name_{user_id}"; //===================================================================================== // Insert //===================================================================================== var (result, user_test_doc) = await example.insertUser(user_id, name); Assert.True(result.isSuccess()); var user_test_attrib = user_test_doc?.getAttrib(); Assert.NotNull(user_test_attrib); Assert.True(user_test_attrib.UserId == user_id); Assert.True(user_test_attrib.Name == name); var (find_result, user_test_find_doc) = await example.findUserOne(user_id); Assert.True(find_result.isSuccess()); Assert.NotNull(find_result); Assert.NotNull(user_test_find_doc); Assert.True(user_test_find_doc.getAttrib()?.UserId == user_id); Assert.True(user_test_find_doc.getAttrib()?.Name == name); var new_name = $"name_{user_id}_2"; var (update_result, user_test_update_doc) = await example.updateUser(user_id, new_name); Assert.True(update_result.isSuccess()); var (find_result2, user_test_update_doc2) = await example.findUserOne(user_id); Assert.True(find_result2.isSuccess()); Assert.NotNull(user_test_update_doc2); Assert.True(user_test_update_doc2.getAttrib()?.UserId == user_id); Assert.True(user_test_update_doc2.getAttrib()?.Name == new_name); var delete_result = await example.DeleteUserOne(user_id); Assert.True(delete_result.isSuccess()); var (find_result3, user_test_delete_doc) = await example.findUserOne(user_id); Assert.Null(user_test_delete_doc); Assert.True(find_result3.isFail()); } }