Skip to content
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

Release v0.4.0 #488

Draft
wants to merge 38 commits into
base: master
Choose a base branch
from
Draft

Release v0.4.0 #488

wants to merge 38 commits into from

Conversation

chef-danny-d
Copy link
Collaborator

No description provided.

@codecov
Copy link

codecov bot commented Apr 12, 2023

Codecov Report

Merging #488 (7c40188) into master (63284e6) will decrease coverage by 0.91%.
The diff coverage is 89.75%.

❗ Current head 7c40188 differs from pull request most recent head f125937. Consider uploading reports for the commit f125937 to get more accurate results

@@            Coverage Diff             @@
##           master     #488      +/-   ##
==========================================
- Coverage   92.24%   91.34%   -0.91%     
==========================================
  Files          33       32       -1     
  Lines        4979     6654    +1675     
  Branches       32       30       -2     
==========================================
+ Hits         4593     6078    +1485     
- Misses        372      562     +190     
  Partials       14       14              
Impacted Files Coverage Δ
src/direct-message/direct-message.service.ts 2.20% <1.08%> (-3.84%) ⬇️
src/direct-message/direct-message.resolver.ts 7.76% <3.57%> (-10.42%) ⬇️
utils/tests.ts 30.13% <36.73%> (+1.46%) ⬆️
utils/fakes.ts 88.19% <92.42%> (+1.10%) ⬆️
src/program/program.resolver.ts 99.60% <99.82%> (+0.69%) ⬆️
gql/graphql.ts 100.00% <100.00%> (ø)
src/auth/auth.resolver.ts 97.95% <100.00%> (+0.18%) ⬆️
src/auth/auth.service.ts 99.42% <100.00%> (+0.07%) ⬆️
src/community/community.resolver.ts 98.93% <100.00%> (+0.21%) ⬆️
src/community/community.service.ts 99.69% <100.00%> (+0.12%) ⬆️
... and 8 more

... and 1 file with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

lvSojen and others added 9 commits April 13, 2023 12:19
Add support for instructions field in quiz/updateQuiz ALMP-764
* Add learning objectives to lesson schema

* Add objectives to createModule Query

* Add ability to update lesson objectives

* Add objective as lesson query parameter

---------

Co-authored-by: Dániel B. Papp <[email protected]>
…491)

Now office hours and research interests are a list of strings as the UI was calling for changes to be made.
#492)

* feat(instructor): Deprecated unused fields in instructor profile model

* fix(instructor): Updated test cases to reflect schema

* fix(instructor): Updated test cases to match dev branch
* Update module name to section in schema

* Replace modules with sections in resolvers

* Rename modules to sections in service files

---------

Co-authored-by: Dániel B. Papp <[email protected]>
* feat(LP): created base schema and model structure

* fix(date): Changed date returned by scalar for more accurate sorting

* fix(LP): created base query and mutation
The query retrieves through the user's Plan ID. The mutation expects the planID and the path structure directly inputted

* fix(LP): mutation creates enrollments into each module passed in

* chore(prisma): Bumped version number

* chore(ts): Added type inference rule

* fix(LP): Modified schema structure
Now a single LP model is assigned to a single plan of study, creating a 1 to 1 relationship between the LP model and the user. However, now the LP model stores an array of paths, making the functionality nearly the same as users can still have one to many relations with paths, its just one level deeper in the composite type.

* feat(LP): Added basic safeguards to creation
As the input object accepts either a single path object or a list of path objects, I added a statement that checks if either of the two is passed in before continuing with the operations

* feat(LP): Started implementing union path input functionality
Mainly focused on getting the single path input working. Still need to match and create the module enrollments before we proceed to validating the path data

* feat(LP): added LP status enum to schema
The enum can be either Draft or Live. Once users update their paths to be live, they get enrolled into the modules. While the path is in draft, they aren't enrolled in any of the modules.

* feat(LP): removed enrollment creation from service
This operation will be handled by the update service rather then the initial creation service

* feat(LP): added hours satisfied and learning outcomes to path model
Hours satisfied tracks the number of hours that the current enrollment in the path satisfies. Learning outcome of the path defines all the learning outcomes of the modules being taken

* feat(LP): added name field to sections and collections
Since we are using fake data for the sections and collections, we need something visual to create UI layouts with. Eventually only the ID will be required, and the service will retrieve the appropriate data and concatenate it with the ID

* feat(LP): manually extended course and module types
Since we want to get the appropriate data from GQL, we want to allow the selection of subfields that match the composite type

* fix(LP): resolve concatenation issue with query
Previously, the query returned a single section with a single collection and mapped all the modules into that one element array. Now the query keeps the existing composite structure and fetches the data to concatenate into the module object.

* fix(LP): resolved fields not receiving values on creation
I forgot to add the learning outcomes and hoursSatisfied fields to the create operation. Now we also store collection and section names in the composite types until we get the program structure updated

* feat(LP): added optional filter for LPs by pathID

* feat(LP): implemented mutation to update paths
The mutation takes in the inputted course structure and replaces the existing one in the array while keeping the other records untouched

* fix(LP): added required import statement

* feat(LP): created mutation to delete a single path
User can now delete individual paths from an LP model

* feat(LP): created mutation to create a single path
User can now create individual paths attached to an LP model

* fix(LP): resolved schema update conflicts

* refactor(user): added mutation to handle create operation

* fix(sections): argument in GQL and the API were mismatching

* fix(schema): turned collection to module relation to many-to-many
Since collections are just grouped modules, a module could be part of many collections and collections can hold a number of modules.

* fix(progress): resumption needed to change according to FE

* feat(lp): updated includes

* refactor(lp): updated path schema to match redevelopment

* feat(module): added query to get data by learning Path

* feat(module): additional fields added as required by FE
Modules have an optional direct relation to an instructor profile to connect instructors with their modules. Furthermore, I added module prefixes (ENMA, CS, DS, etc), and module numbers

* feat(course): additional fields added as needed
I added course prefixes (ENMA, CS, DS, etc), and course numbers, so not everything is stored in the course name field. The name field should be reserved for the user friendly title of the course.

* refactor(course): creation of many courses at once is supported

* fix(type): addressed type errors as a result of schema changes

* feat(modules): created direct resolver for module flow and return type to go with it
Return type to be added to the resolver once all the edge cases are figured out

* refactor(LP): modified the selectable fields for sections

---------

Co-authored-by: Dániel B. Papp <[email protected]>
chef-danny-d and others added 9 commits May 1, 2023 15:55
I was also able to fix the previous collection being null or returning the current collection by default
* Fixed addCourse mutation property not saving to DB

* added to updateCourse service

---------

Co-authored-by: Dániel B. Papp <[email protected]>
* refactor(lp): Update path structure to not have name and enrollmentID

* refactor(lp): Fixed service setting non-existent fields
…es (#501)

* fix(dm): Remove redis dependency from feature
The system now uses the DB to read and write direct messages

* refactor(dm): started integrating messaging with client-side
As I started integrating the DM service into the client side application, it was clear that it needed to be refactor to improve the DX of the API.

* refactor(dm): filtered out duplicate recipients
Since the `sentMessages` query is used to fetch the latest messages sent by the author to any user, we want to make sure that there are no duplicate recipients in the list, but rather use the latest message of each recipient as an entry in the list.

* refactor(docker): removed Redis and Mongo instances

* feat(dm): defined create group mutation and service

* refactor(dm): addressed group message issues
Previously, users couldn't retrieve information about groups as recipients. Now, we have full support for group and 1-1 message querying

* fix(module): updating service errored out without collection ID

* test(quiz): worked on broken cases that use hardcoded data

* refactor(module): matched create service arguments

* test(module): fixed broken cases that didn't respect program refactor

* test(module): fixed cases broken due to renaming

* refactor(dm): removed WS server config

* feat(module): defined delete many mutation and service

* refactor(module): added keywords field to DB schema

* refactor(module): integrated create service with keyword schema change
Previously the resolver was only expecting null values to be present in the payload array, but empty objects can also be appended under edge cases. After updating the filter statement, the resolver functions as expected.
There was edge cases that were not being handled correctly when looking up the previous module and collection
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants