-
Notifications
You must be signed in to change notification settings - Fork 7
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
feat: merge Lorem Fitsum features into Reference Implementation feeds #215
Changes from 6 commits
40bcc70
fc0ed33
bcaab68
9744042
a025713
9040df2
8971395
b3fb02d
1bf5b10
1434c67
02b005d
6d2b682
f413b6d
ead80b2
f6740c9
416b9cf
4a26fcb
368d785
d88cc7f
e831d3a
729c67a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Large diffs are not rendered by default.
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -15,3 +15,26 @@ This implementation is also used as a reference implementation for the [Test Sui | |
|
||
`ApplicationHostBaseUrl: http://localhost:{PORT}` | ||
3. Now, re-run the project. You're good to go 👍 | ||
|
||
|
||
## Reference Implementation Data Generation | ||
|
||
Reference Implementation has three main uses that make it very important in the OpenActive ecosystem: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think we need to do either:
My personal opinion is # 2 because OpenActive may need to broaden the meaning of "Reference Implementation" at a later date (e.g. if there are future reference implementations in other languages) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yep makes sense, I've added a comment about that. |
||
- For data publishers / booking systems: It is used to demonstrate the properties and shape of data and APIs, according to the OpenActive specifications | ||
- For data users / brokers: It is used as a trial integration where testing can be done with no ramifications | ||
- For contributors: It is used to ensure the Test Suite tests are correct and passing, for different combinations of Open Booking API features. | ||
Comment on lines
+39
to
+41
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This is unbelievably useful to finally spell this out — good shout! |
||
|
||
The data for the sample feeds are generated in two places: | ||
- BookingSystem.AspNetCore/Feeds/*Feeds.cs | ||
- OpenActive.FakeDatabase.NET/Fakes/FakeBookingSystem.cs | ||
|
||
The FakeBookingSystem within OpenActive.FakeDatabase.NET acts as the interface to an example database. | ||
The example Feeds within BookingSystem.AspNetCore query this interface and translate the data to conform with the OpenActive Modelling Spec. | ||
|
||
Due to this split of functionality, the sample data in the feeds are created/transformed in both files, depending on whether they are important to booking | ||
or not. For example, `Price` is important to booking and there is generated in FakeBookingSystem at startup and stored in the in-memory database. However `Terms Of Service` is not | ||
needed for booking, and therefore is generated at request time. | ||
Comment on lines
+50
to
+52
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also appreciated! |
||
|
||
### Golden Records | ||
Golden records are randomly generated records that contain all possible fields specified by the OpenActive Modelling Specification. | ||
They are unrealistic representations of data, and the presence of all the fields should not be relied on when developing front-end representations of the data. |
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.
Have just spotted a typo, so will fix if this current CI run passes