[GH-ISSUE #1181] [Test] Implement unit test in rust when switching from a Single-select to a Multi-select property type #471

Closed
opened 2026-03-23 20:36:56 +00:00 by mirror · 11 comments
Owner

Originally created by @appflowy on GitHub (Sep 27, 2022).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/1181

Originally assigned to: @ENsu on GitHub.

Originally created by @appflowy on GitHub (Sep 27, 2022). Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/1181 Originally assigned to: @ENsu on GitHub.
Author
Owner

@TomerPacific commented on GitHub (Oct 9, 2022):

Hi @appflowy , I'd like to help out. Seeing as this will be my first contribution here, anything I should know in advance (apart from the contributing file)?

<!-- gh-comment-id:1272619852 --> @TomerPacific commented on GitHub (Oct 9, 2022): Hi @appflowy , I'd like to help out. Seeing as this will be my first contribution here, anything I should know in advance (apart from the contributing file)?
Author
Owner

@appflowy commented on GitHub (Oct 11, 2022):

Hi, @TomerPacific. There are resources you can take a look

I am writing new documentation about Type switching. I will let you know after I finish it.

<!-- gh-comment-id:1274125067 --> @appflowy commented on GitHub (Oct 11, 2022): Hi, @TomerPacific. There are resources you can take a look * [Commit message guide](https://appflowy.gitbook.io/docs/essential-documentation/contribute-to-appflowy/software-contributions/submitting-code/code-submission-guidelines) * [Some concepts about the grid](https://appflowy.gitbook.io/docs/essential-documentation/contribute-to-appflowy/architecture/frontend/grid) I am writing new documentation about Type switching. I will let you know after I finish it.
Author
Owner

@TomerPacific commented on GitHub (Oct 11, 2022):

@appflowy - Thanks. I'll check those out and post back here if I have any more questions/clarifications.

<!-- gh-comment-id:1275179485 --> @TomerPacific commented on GitHub (Oct 11, 2022): @appflowy - Thanks. I'll check those out and post back here if I have any more questions/clarifications.
Author
Owner

@appflowy commented on GitHub (Oct 13, 2022):

@TomerPacific I added some documentation. Check out the transform method of the TypeOptionBuilder trait. You can handle the logic during the transform when switching from/to a different type.

Both MultiSelectTypeOptionBuilder and SingleSelectTypeOptionBuilder implement the TypeOptionBuidler trait. FYI, there are some unit tests written in multi_select_type_option.rs and single_select_type_option.rs

  1. MultiSelectTypeOptionBuilder
  2. SingleSelectTypeOptionBuilder
<!-- gh-comment-id:1276931883 --> @appflowy commented on GitHub (Oct 13, 2022): @TomerPacific I added some documentation. Check out the transform method of the [TypeOptionBuilder](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/rust-lib/flowy-grid/src/services/field/type_option_builder.rs) trait. You can handle the logic during the `transform` when switching from/to a different type. Both MultiSelectTypeOptionBuilder and SingleSelectTypeOptionBuilder implement the `TypeOptionBuidler` trait. FYI, there are some unit tests written in [multi_select_type_option.rs](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/rust-lib/flowy-grid/src/services/field/type_options/selection_type_option/multi_select_type_option.rs) and [single_select_type_option.rs](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/rust-lib/flowy-grid/src/services/field/type_options/selection_type_option/single_select_type_option.rs) 1. [MultiSelectTypeOptionBuilder](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/rust-lib/flowy-grid/src/services/field/type_options/selection_type_option/multi_select_type_option.rs) 2. [SingleSelectTypeOptionBuilder](https://github.com/AppFlowy-IO/AppFlowy/blob/main/frontend/rust-lib/flowy-grid/src/services/field/type_options/selection_type_option/single_select_type_option.rs)
Author
Owner

@TomerPacific commented on GitHub (Oct 17, 2022):

@appflowy - Currently stuck with a local development issue (discussed at the discord channel). Might be worthwhile to assign this to someone else.
I'll update if I can overcome this issue.

<!-- gh-comment-id:1281118849 --> @TomerPacific commented on GitHub (Oct 17, 2022): @appflowy - Currently stuck with a local development issue (discussed at the discord channel). Might be worthwhile to assign this to someone else. I'll update if I can overcome this issue.
Author
Owner

@annieappflowy commented on GitHub (Oct 18, 2022):

@TomerPacific
reposting here in case other Windows devs can help:
image

<!-- gh-comment-id:1282022585 --> @annieappflowy commented on GitHub (Oct 18, 2022): @TomerPacific reposting here in case other Windows devs can help: <img width="860" alt="image" src="https://user-images.githubusercontent.com/12026239/196380816-9843d78e-9582-47ae-889f-3b5afe177358.png">
Author
Owner

@ENsu commented on GitHub (Nov 15, 2022):

@annieappflowy @appflowy Do you think I can try this one?

<!-- gh-comment-id:1314791756 --> @ENsu commented on GitHub (Nov 15, 2022): @annieappflowy @appflowy Do you think I can try this one?
Author
Owner

@annieappflowy commented on GitHub (Nov 15, 2022):

Yes! I think this is a good place to start practicing Rust. I've assigned the issue to you. If you need help, please don't hesitate to reach out on Discord.

<!-- gh-comment-id:1314849055 --> @annieappflowy commented on GitHub (Nov 15, 2022): Yes! I think this is a good place to start practicing Rust. I've assigned the issue to you. If you need help, please don't hesitate to reach out on Discord.
Author
Owner

@ENsu commented on GitHub (Nov 17, 2022):

Hello, @annieappflowy. I tried the main branch version.

Currently, switching from SingleSelectType to MultiSelectType (or vice versa) removes the data from the frontend.

Is this something I should be concerned about, or is it a separate issue? (I am happy to deal with it; I just want to be certain.)

<!-- gh-comment-id:1317904109 --> @ENsu commented on GitHub (Nov 17, 2022): Hello, @annieappflowy. I tried the `main` branch version. Currently, switching from SingleSelectType to MultiSelectType (or vice versa) removes the data from the frontend. Is this something I should be concerned about, or is it a separate issue? (I am happy to deal with it; I just want to be certain.)
Author
Owner

@ENsu commented on GitHub (Dec 5, 2022):

@appflowy Could you please check to see if this work has been completed as a result of this merge? I've added the relative features as well as the unit test.
https://github.com/AppFlowy-IO/AppFlowy/pull/1493

<!-- gh-comment-id:1336600527 --> @ENsu commented on GitHub (Dec 5, 2022): @appflowy Could you please check to see if this work has been completed as a result of this merge? I've added the relative features as well as the unit test. https://github.com/AppFlowy-IO/AppFlowy/pull/1493
Author
Owner

@appflowy commented on GitHub (Dec 6, 2022):

@appflowy Could you please check to see if this work has been completed as a result of this merge? I've added the relative features as well as the unit test. #1493

Yes, it is.

<!-- gh-comment-id:1338884379 --> @appflowy commented on GitHub (Dec 6, 2022): > @appflowy Could you please check to see if this work has been completed as a result of this merge? I've added the relative features as well as the unit test. #1493 Yes, it is.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#471
No description provided.