-
Notifications
You must be signed in to change notification settings - Fork 1
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
Add method for saving PLC project as a library #4
Merged
ahuca
merged 28 commits into
main
from
3-add-method-for-saving-twincat-project-as-a-library
Feb 17, 2024
Merged
Add method for saving PLC project as a library #4
ahuca
merged 28 commits into
main
from
3-add-method-for-saving-twincat-project-as-a-library
Feb 17, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Build copy `TestTwincatProject` to binary - Added `DteInstanceIsNullException`
Added `Directory.CopyDirectory()`
During test setup, copy `TestTwincatProject` to a new temporary test directory. This helps isolate the test subjects between tests.
`FileNotFoundException` is a more appropriate exception to throw.
Added `TestProject` class for cleaner test setup and tear-down.
Also added more test TwinCAT projects.
This way when creating a source stream it can share access with other threads.
With classes for deserialize TwinCAT xml project files, including `.tsproj`, `.tspproj`, and `.plcproj`
Acting as wrapper classes for TwinCAT project and a PLC project, respectively.
- To avoid two classes having the same name `PlcProject` - Added more tests to `TwincatProjectTests` - Rearranged and added new files to `TestUtils` folder
…ng-twincat-project-as-a-library
This will make tests more lightweight as we don't need to use the whole `AutomationInterface` class everytime we setup.
Added usage guide regarding `TestProject` class
Added null check in case the cleanup is done simultaneously in different processes
- Added more test data to `PlcProjectDataTests` regarding unmanaged library project - Added test to `AutomationInterfaceTests` to save all managed library projects (as libraries) - Added `TestPlcProject3` to `TestTwincatProject2` which is an unmanaged project
Colho
reviewed
Jan 11, 2024
src/TwinGet.AutomationInterface/Exceptions/CouldNotCreateTwincatDteException.cs
Show resolved
Hide resolved
Colho
reviewed
Jan 11, 2024
Colho
reviewed
Jan 11, 2024
test/TwinGet.AutomationInterface.Test/TestUtils/TestTwincatProject.cs
Outdated
Show resolved
Hide resolved
Colho
reviewed
Jan 11, 2024
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.
Mainly the exception naming can be changed, other than that not much to comment
Colho
approved these changes
Feb 13, 2024
There was an issue created for the exception naming and creating a more sensible collection of the exceptions, so marking as approved |
ahuca
deleted the
3-add-method-for-saving-twincat-project-as-a-library
branch
February 17, 2024 19:07
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This can be considered done, because one can access the PLC projects in an
AutomationInterface
instance by, for example, doing this.