public void TestStaticRoomLifecycle() { const string roomName = "Room Lifecycle {0}"; const string roomDescription = "Description of the room lifecycle {0}"; var roomId = TestStaticCreateRoom(); TestStaticGetRoom(roomId); TestStaticPutRoom(roomId); TestStaticDeleteRoom(roomId); // [POST] /rooms. long TestStaticCreateRoom() { var identifier = "New"; var parameters = new NewRoomParameters { Description = string.Format(CultureInfo.InvariantCulture, roomDescription, identifier), IconPreset = IconPresetValue.Group, Link = false, LinkCode = "jlklqwes", LinkNeedAcceptance = true, MembersAdminIds = new[] { AccountId }, MembersMemberIds = null, MembersReadonlyIds = null, Name = string.Format(CultureInfo.InvariantCulture, roomName, identifier), }; var response = ChatworkClient.PostRoom(Token, parameters); AssertPostRoomsResponse(response); return(response.Data.RoomId); } // [GET] /rooms/{room_id}. void TestStaticGetRoom(long roomId) { var response = ChatworkClient.GetRoom(Token, roomId); AssertGetRoomResponse(response, roomId); } // [PUT] /rooms/{room_id}. void TestStaticPutRoom(long roomId) { var iconPresetList = Enum.GetValues(typeof(IconPresetValue)); foreach (IconPresetValue iconPreset in iconPresetList) { var identifier = string.Format( CultureInfo.InvariantCulture, "[{0}]", StringValueAttribute.GetStringValue(iconPreset)); var parameters = new UpdateRoomParameters { Description = string.Format(CultureInfo.InvariantCulture, roomDescription, identifier), IconPreset = iconPreset, Name = string.Format(CultureInfo.InvariantCulture, roomName, identifier), }; var response = ChatworkClient.PutRoom(Token, roomId, parameters); AssertPutRoomResponse(response, roomId); } } // [DELETE] /rooms/{room_id}. void TestStaticDeleteRoom(long roomId) { var parameters = new DeleteRoomParameters { ActionType = ActionTypeValue.Delete, }; var response = ChatworkClient.DeleteRoom(Token, roomId, parameters); AssertDeleteRoomResponse(response); } }