-
Notifications
You must be signed in to change notification settings - Fork 56
Add a smoke test in build pipeline #355
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
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.
Left some small suggestions. I'll defer to @ejizba to for the final approval here, but I'd love to hear your thought son my suggestions below.
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.
LGTM!
3af0d7e
to
38d568f
Compare
@hossam-nasr: please let us know if this is ready for a re-review by requesting a new review through the UI from eric and me. Thanks |
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.
LGTM! Waiting for @ejizba for the final word.
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.
Looks good!
…nctions-durable-js into hossamnasr/build-pipeline
Resolves #353 (per suggestion in additional info), related to #354 and #356.
I've never used Azure Pipelines (or even YAML files at all) before, so I'm not sure if this is the right or the most efficient way to do this, but at least it works 😛
Description
This new build job essentially replicates the repro steps in #353:
durable-functions
into a.tgz
filesamples/UnitTesting
directory into atest-app
directory, outside the durable SDK directory.samples/UnitTesting
directory, but if we make the whole directory runnable (see discussions here: Metadata generation failed #334 (comment) -- I've also created an issue here to track this: Make the samples directory easily runnable #356), then we could instead copy the whole samples directory:.tgz
file from step 1 in the test appnpm run build
on the test appValidation
Before merging #354 into this branch, the build pipeline failed (as expected) with this error (see here):
After merging, the build pipeline succeeds (see here)
Benefits
Besides checking for these kinds of type exporting mistakes in the future, while testing out this new pipeline, I realized there are other kinds of errors that can also be detected by this addition! I have fixed some of them in this PR too:
DummyOrchestrationContext
were supposed to be optional, but I didn't realize that I broke this contract with Support Long Timers ⏳📈🚀🚀🚀 #340. It didn't cause any errors because none of our own code relied on the fact that those arguments are optional. Meanwhile, thesamples/UnitTesting
directory inside the durable directory referenced types from the npmdurable-functions
module, not from the local build. So this was only revealed when doing this kind of test.samples/UnitTesting
app didn't import themocha
module, even though it referenced it. This also wasn't detected before, becausemocha
is imported by the root durable SDK directory.