-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Command line parser #378
base: xml_converter
Are you sure you want to change the base?
Command line parser #378
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-19 03:52:55.356172701 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-19 03:52:55.364172747 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-19 03:52:55.372172793 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-19 03:52:55.378172827 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-19 03:52:55.385172867 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-19 03:52:55.392172907 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-19 03:52:55.399172948 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-19 03:52:55.406172988 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-19 03:52:55.412173023 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-19 03:52:55.419173063 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-19 04:50:55.013852956 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-19 04:50:55.020852949 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-19 04:50:55.028852940 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-19 04:50:55.035852932 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-19 04:50:55.042852924 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-19 04:50:55.049852917 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-19 04:50:55.055852910 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-19 04:50:55.062852902 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-19 04:50:55.069852895 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-19 04:50:55.076852887 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 169.81
+ y: 210.65
+ z: 215.83
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
<POI Type="mycategory" XPos="169.81" YPos="210.65" ZPos="215.83" MapID="0" /> | ||
<POI Type="mycategory" XPos="169.81" YPos="210.65" ZPos="215.83" MapID="1" /> | ||
<POI Type="mycategory" XPos="169.81" YPos="210.65" ZPos="215.83" MapID="5" /> | ||
<POI Type="mycategory" XPos="169.81" YPos="210.65" ZPos="215.83" MapID="2147483647" /> | ||
<POI Type="mycategory" XPos="169.81" YPos="210.65" ZPos="215.83" MapID="50" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lets add another variation into the attributes here so that more than just MapID is being used to validate that MapID is being split on properly. In general there is nothing wrong with having variation in the tests and the more variation the more that technically gets tested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you elaborate a bit? I thought we were trying to keep these tests simple so that each test checked for one thing so if it breaks we could isolate it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of having each field be XPos="169.81" YPos="210.65" ZPos="215.83"
have them contain distinguishing values. Right now the only distinguishing value is the map id, which is also the value that is being used to split the markers up.
Because if the map split code had a bug where it was not properly grabbing any attribute other than map id then we would never know.
for i in range(len(mapid)):
write_marker(xpos[0], ...., map_id[i])
Then this test would "pass" because xpos[0] == xpos[1] == xpos[2] etc.
Adding variation to the xpox ypos zpos values just cements the uniqueness of each POI and further reinforces the idea that we did in fact split the marker correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have changed it so each has a unique value.
if allow_duplicates: | ||
cmd += ["--allow-duplicates"] | ||
if split_by_map_id: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because of the ordering, does this mean that if split-by-map-id is specified then only the proto will be split by map id? If so that's fine for now but you should make a new issue detailing the problems that arise from this and how one might fix them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is correct for now. This would be the next step in adjusting the test harness so that each input and output can be configured. My thought was to make a dictionary of adjustments so that they can be processed as a group for each type.
example:
configurations:
"xml" : "split_by_category"
"proto" : "split_by_map_id"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is a good first thought, but assumes that all xml inputs want one argument, and the same argument. Instead just transform the inputs field from a Dict[str,str]
to a Dict[str, ConfigData]
where ConfigData is something like {"type": "xml", "split_by_category": true}
. This will allow the inputs to be specified in an intuitive manner to anyone reading the test config, and will also allow for test inputs to nearly mirror the new cli flags.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now that the new xml output is merged in this test is probably going to fail because it is not formatted correctly. Lets leave it as-is for now to prevent you from having to rebase this branch. But your very next PR should be fixing all of the remaining issues in these tests, such as the .guildpoint
changes. Ideally that could include a change to the CI to have these tests run automatically so that their failures dont go unnoticed in the future.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
understood
xml_converter/src/xml_converter.cpp
Outdated
@@ -32,6 +32,19 @@ | |||
|
|||
using namespace std; | |||
|
|||
struct PathConfig { | |||
string type; // "import" or "export" or "template" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What made you choose a string value over an enum, additionally what is the purpose of "template"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are correct an enum would have been a better choice since we expect those strings and no others. I had just not considered it. I added "template" as an example of another type of argument that could be added.
xml_converter/src/xml_converter.cpp
Outdated
@@ -32,6 +32,19 @@ | |||
|
|||
using namespace std; | |||
|
|||
struct PathConfig { | |||
string type; // "import" or "export" or "template" | |||
string format; // "xml" or "guildpoint" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What made you choose a string value over an enum here too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are correct an enum would be a better choice since there are fixed expected responses.
xml_converter/src/xml_converter.cpp
Outdated
PathConfig(const string& type, const string& format) | ||
: type(type), format(format) { | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given it has a constructor function, what are the reasons you chose to use a struct over a class for this object?
xml_converter/src/xml_converter.cpp
Outdated
PathConfig path_config, | ||
string output_path, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you explain why write_burrito_directory
needs to accept both output_path
and path_config.paths[n]
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Technically what it needs is the path_config.split_by_
information to know which function to call. I wanted to further explore if there would be a difference if we iterated over the path vector within this function instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A desire to further experiment with code options does not justify passing duplicate data into the function. That experimentation should have been done well before you attempt to publish the code. Otherwise it is just immediately technical debt.
xml_converter/src/xml_converter.cpp
Outdated
bool all_allow_duplicates_false = all_of(path_configs.begin(), path_configs.end(), [](const PathConfig p) { | ||
if (p.type == "export") { | ||
return p.allow_duplicates == false; | ||
} | ||
return true; | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a very convoluted block of code:
"We will not ignore duplicates if and only if the allow duplicates flag was not present after an export format"
When it probably should be:
"We will ignore duplicates if the allow duplicates flag was passed in"
The root cause is in the parser logic, only supporting flags by assigning them to PathConfig
s.
The current implementation also will intentionally silently consume and ignore the allow duplicates flag if it was passed in to an input file. I dont think the user interactions were considered here, please break out the different scenarios from a user perspective and what the user would expect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed the design for the output of the argument parser to a class that contains a vector of PathConfigs and the global variables and made --allow-duplicates
a global. This way it just needs to check for the one value.
xml_converter/src/xml_converter.cpp
Outdated
// --import_FORMAT_paths <path> --FLAGS [--import_FORMAT_paths <path> --FLAGS] | ||
// --export_FORMAT_paths <path> --filter "conditions" --FLAGS | ||
// [--export_FORMAT_paths <path> --filter "conditions" --FLAGS] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are these examples?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Its the template for the command line when we create new arguments. Would it make sense to label them correctly or do they not belong here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do they belong here? I think they would be better served if they were visible to the user. Perhaps in a --help
menu.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will move this to a help function in a future PR
xml_converter/src/xml_converter.cpp
Outdated
|
||
for (int i = 1; i < argc; i++) { | ||
if (!strcmp(argv[i], "--input-taco-path")) { | ||
arg_target = &input_taco_paths; | ||
path_configs.emplace_back("import", "xml"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you choose emplace_back
here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What I wanted to happen here in each if
statement was to create a PathConfig
object, populate it with the information provided by the argument so it could be sorted later, and use a reference to that object when looking at the next argument to see if it modifies the object further. Since the last part of that needs the correct location of the object, &path_configs.back()
was used to get a pointer to the location on the vector. So for the other 2 steps, I found that using emplace creates the object directly into the vector as opposed to using push which would create an object and then move it into the vector. Both would achieve the same effect. Emplace then had the pro of being one line of code versus four if using push_back.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is reasonable.
xml_converter/src/xml_converter.cpp
Outdated
vector<string> output_split_guildpoint_paths; | ||
|
||
vector<string>* arg_target = nullptr; | ||
vector<PathConfig> parse_arguments(int argc, char* argv[]) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This function is complex enough that should have unit tests. Look at other examples of the C++ unit tests, like those for the string hierarchy class.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-25 01:36:59.638725166 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-25 01:36:59.645725208 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-25 01:36:59.653725255 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-25 01:36:59.660725297 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-25 01:36:59.666725332 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-25 01:36:59.673725374 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-25 01:36:59.681725422 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-25 01:36:59.688725463 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-25 01:36:59.695725505 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-25 01:36:59.701725540 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-25 01:42:07.598797894 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-25 01:42:07.605797863 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-25 01:42:07.617797809 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-25 01:42:07.624797777 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-25 01:42:07.631797746 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-25 01:42:07.638797714 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-25 01:42:07.644797687 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-25 01:42:07.651797656 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-25 01:42:07.658797624 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-25 01:42:07.665797593 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-25 02:29:39.884471992 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-25 02:29:39.891471986 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-25 02:29:39.899471980 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-25 02:29:39.907471973 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-25 02:29:39.914471968 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-25 02:29:39.921471962 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-25 02:29:39.928471957 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-25 02:29:39.935471951 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-25 02:29:39.942471945 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-25 02:29:39.949471940 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-25 02:40:57.137576986 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-25 02:40:57.144576951 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-25 02:40:57.152576911 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-25 02:40:57.159576876 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-25 02:40:57.165576846 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-25 02:40:57.172576811 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-25 02:40:57.179576776 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-25 02:40:57.186576741 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-25 02:40:57.193576706 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-25 02:40:57.199576676 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-27 01:21:12.708476357 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-27 01:21:12.715476460 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-27 01:21:12.723476577 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-27 01:21:12.730476680 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-27 01:21:12.737476783 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-27 01:21:12.744476886 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-27 01:21:12.751476989 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-27 01:21:12.758477091 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-27 01:21:12.764477179 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-27 01:21:12.771477282 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._old 2025-01-27 01:27:17.508703275 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/0.guildpoint.textproto._new 2025-01-27 01:27:17.516703358 +0000
@@ -0,0 +1,11 @@
+category {
+ name: "My Category"
+ icon {
+ position {
+ x: 100
+ y: 200
+ z: 300
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._old 2025-01-27 01:27:17.523703430 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/1.guildpoint.textproto._new 2025-01-27 01:27:17.531703513 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 1
+ position {
+ x: 110
+ y: 210
+ z: 310
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._old 2025-01-27 01:27:17.538703586 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/2147483647.guildpoint.textproto._new 2025-01-27 01:27:17.545703659 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 2147483647
+ position {
+ x: 130
+ y: 230
+ z: 330
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._old 2025-01-27 01:27:17.552703731 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/5.guildpoint.textproto._new 2025-01-27 01:27:17.558703794 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 5
+ position {
+ x: 120
+ y: 220
+ z: 320
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Full Diff
--- xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._old 2025-01-27 01:27:17.565703866 +0000
+++ xml_converter/integration_tests/test_cases/xml_split_by_map_id/output_proto/50.guildpoint.textproto._new 2025-01-27 01:27:17.572703939 +0000
@@ -0,0 +1,12 @@
+category {
+ name: "My Category"
+ icon {
+ map_id: 50
+ position {
+ x: 140
+ y: 240
+ z: 340
+ }
+ }
+ id: "(\350\314\006\302\223^\226"
+}
Ignore #376 as it didn't make the comments on the proto files.
Changed the parser to create a vector of structs that contain the vector of paths but also information about the path's usage and changes to the way the converter uses it. This should facilitate the seamless addition of new arguments.