Comments (1)
Smoke tests aren't intended to test client serialization (or deserialization), they're intended to make connections to live services to be a sanity check that the service and client are interacting properly.
Additionally, clients shouldn't be doing validation of anything but types because client-side validation is forwards-incompatible. For an example of this, look to the difficulty around EC2's increased instance id size several years ago. A number of clients had been making assertions that instance ids were a particular size (which was modeled iirc), and they all broke when EC2 started returning ids that were longer. EC2 had to spend years warning people and migrating.
With regards to binary data, this is more of a limitation in Smithy itself, since there's no way in the IDL or the AST to indicate binary data. Unfortunately, changing the way nodes are parsed to expect binary data to be base64 or similarly encoded would be a breaking change.
from smithy.
Related Issues (20)
- Validation issue with `nestedProperties` and member elision. HOT 6
- Can't provide error examples for an erorr applied at service level, as opposed to operation level
- Update codegen documentation to show smithy-trait-codegen HOT 3
- add ability to apply trait to inline inputs/outputs HOT 1
- Question: turning on warnings as errors? HOT 6
- Typo in rules engine Tree Rule object specs
- How to deserialize optional `@httpPayload`-bound shapes?
- Trait codegen doesn't like Document in collections
- Add option to fail the build on formatting violations HOT 2
- Feature request: includeFor integration HOT 5
- Lack of coverage in RPC v2 CBOR protocol test suite HOT 2
- HTTP binding traits mistakenly allowed in RPC protocols HOT 5
- Server behavior in AWS JSON 1.x protocol with empty input HOT 3
- HTTP malformed response testing
- Allow multiple protocols for OpenAPI conversions HOT 2
- `@required` in `document` shapes violated over the wire HOT 1
- Parsing for `ParameterTypes` has unintuitive casing rules HOT 3
- Protocol tests for routing failures HOT 1
- Framework-level errors
- Generate components with zero paths in the service HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from smithy.