Skip to content

Commit

Permalink
feature/APPEALS-32376 (Release Candidate) (#22699)
Browse files Browse the repository at this point in the history
* APPEALS-36751 deleted set_time_zone.rb file

* APPEALS-37039 branch init.

* APPEALS-36751 deleted set_time_zone.rb file (#20493)

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* APPEALS-36751 delete hearing_for_hearing_day_serializer.rb for code pruning

* APPEALS-37039 migrations made. up and down methods need to be completed.

* APPEALS-37039 migrations ran. schema updated.

* APPEALS-37039 applied expected fixes

* APPEALS-37039 schema changes.

* [APPEALS-36748] Passing timezone context during Schedule Veteran form submission

* [APPEALS-36748] Adding comments about timezone conversions

* [APPEALS-36748] Updating Hearing Time dropdown values

* [APPEALS-36748] Display Hearing Times in the correct timezone on the Daily Docket

* [APPEALS-36748] Fixing codeclimate errors

* APPEALS-37127 created new middleware class and spec file

* [APPEALS-36748] Fixing codeclimate and jest errors

* [APPEALS-36748] Fixing codeclimate and jest errors

* APPEALS-37127 added middleware to shoryuken file

* APPEALS-37561 new branch init. serializers updated.

* APPEALS-37561 spec/serializers/api/v2/hearing_serializer_spec.rb updated to test functionality with added attribute to serializer file.

* APPEALS-37127 switched to time.use_zone

* APPEALS-37039 branch init.

* APPEALS-37039 migrations made. up and down methods need to be completed.

* APPEALS-37039 migrations ran. schema updated.

* APPEALS-37039 applied expected fixes

* APPEALS-37039 schema changes.

* APPEALS-36751 deleted set_time_zone.rb file

* APPEALS-36751 delete hearing_for_hearing_day_serializer.rb for code pruning

* APPEALS-37561 new branch init. serializers updated.

* APPEALS-37561 spec/serializers/api/v2/hearing_serializer_spec.rb updated to test functionality with added attribute to serializer file.

* [APPEALS-36748] Fixing jest errors

* APPEALS-37127 updated rspec file, moved rspec file to correct directory, updated middleware file to always change timezone regardless

* APPEALS-37127 updated comment for middleware

* APPEALS-37095 branch init. New attribute added to factories/hearing.rb

* APPEALS-37095 New attribute added to factories/legacy_hearing.rb

* Add jest debugger

* [APPEALS-36748] Addressing PR feedback

* Update snapshot

* APPEALS-37127 fixed linter issues with method parameters

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* APPEALS-37127 change use_zone call to fix rubocop issues

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* [APPEALS-37094] Updating regional_office_timezone method

* APPEALS-37615 persisted scheduled_in_timezone attribute for ama and legacy hearings

* APPEALS-37615 schema update

* [APPEALS-37094] Fixing tests

* APPEALs-37095 2/02/24 EOD.Hearings Factory set for more dynamic info in regards to the timezone of the hearing.

* [APPEALS-37094] Fixing tests

* [APPEALS-37094] Updating snapshots

* APPEALS-37615 added rspec tests and bug fixes discovered from said tests

* [APPEALS-37094] Fixing tests

* Remove UAT block

* APPEALS-37615 failing rspec test fixes part 1

* [APPEALS-37094] Addressing PR feedback

* APPEALS-37095 Successfully updated both factories to dynamically produce appropriate values of timezones in relation to hearing locations.

* Update snapshot

* [APPEALS-37094] Addressing PR feedback

* APPEALS-37615 updated more rspec files to fix errors

* APPEALS-37615 removed byebug

* APPEALS-37095 working through fixing tests.

* Add some unit tests

* APPEALS-37615 made rubocop fixes and changed string to only have timezone

* APPEALS-37615 updated schema file to be same as feature branch's

* APPEALS-37615 removed newline that was messing things up

* APPEALS-37615 undo last commit

* APPEALS-37095 Tests in both models are now all passing. Going to add one more to keep context relevant in one of the legacy_hearing_spec tests.

* APPEALS-37095 additional test added to legacy_hearing_spec.

* Rubocop fixes

* A couple more Rubocop fixes

* More rubocop fixes

* APPEALS-37095 made adjustments per TL comments

* Revert "Rubocop fixes"

This reverts commit 18018fa.

* Fix spacing

* Add back in Rubocop fix

* Add back in another Rubocop fix

* Wmedders21/appeals 37096 (#21823)

* Use new db timezone comlumn value unless it is nil

* update comments to reflect new functionality

* Update test expectations to follow new functionality

* include missing schema update

* add spaces for readability

* Piedram/appeals 39890 (#21879)

* skip the functionality from this spec

* modified spec

* Wmedders21/appeals 37040 (#21890)

* Fix: incorrect proptype causing error in console

* Feature: HearingTimeScheduledInTimezone

* Render HearingTimeScheduledInTimezone if scheduledInTimezone value exists

* Add style to stylesheet instead of using glamor css

* Update jest snapshot

* Remove px for lint error

* ETL Migration scheduled_in_timezone on hearings (#21952)

* ETL Migration scheduled_in_timezone on hearings

* Change to inherit from caseflow migration

* APPEALS-39997 spec fixes (#21845)

* APPEALS-39997 spec fixes

* APPEALS-39997 spec fix in build_hearsched_spec

* APPEALS-39997 fix schedule time string

* Appeals-39997 spec fix in virtual hearing time slots

---------

Co-authored-by: Jim Foley <james.foley4@va.gov>

* Wmedders21/appeals 49036 (#21990)

* Add scheduled_in_timezone to mirrored_hearing_attributes

* Refactor status string to fit within 32 char limit set by appeals table on ETL schema

* Add expections to include scheduled_in_timezone in ETL hearing records

---------

Co-authored-by: Jim Foley <james.foley4@va.gov>

* Piedram/appeals 37103 (#21997)

* update jest and stories tets

* remove space

* remove empty line

---------

Co-authored-by: Jim Foley <james.foley4@va.gov>

* APPEALS-49793 rspec fix in hearing repository and filled hearing slot controller (#22026)

* Fix test flakiness due to async banners not being found by capybara a… (#22035)

* Fix test flakiness due to async banners not being found by capybara and dropdown selector strings.

* Test fix: Reload hearing before sending to method

* Test fix: Reload virtual_hearing before sending to method

* Test fix: use wait to allow db transaction to process

* Test fix - move links check to the end to allow time for db transaction to process

* APPEALS-50289 rspec fix in assign hearing disposition task spec (#22048)

Co-authored-by: Jim Foley <james.foley4@va.gov>

* Update shoryuken.rb

remove merge conflict message

* fix hearing_mailer.rb (#22065)

* Wmedders21/appeals 50767 (#22091)

* Fixed TimeSlot test

* update comment in test

* fix schedule veteran form test

* fix jest test from erroring out

* APPEALS-37051 ETLBuilderJob test data for hearings (#22118)

Co-authored-by: Jim Foley <james.foley4@va.gov>

* Process scheduled_time_string before creating a hearing via ScheduleHearingTask (#22152)

* Process scheduled_time_string before creating a hearing via ScheduleHearingTask

* Push up legacy time formatting fix

* Separate time object and original time string

* Centralize scheduled_time_string processing

* Unprivatize method

* Set expectation back

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* APPEALS-51555 (BUG): Hearing Time Options Not Reflecting Persisted Values (#22184)

* pushing up

* cleaning up code

* pushing up

* pushing up

* rubocopn

* fixing rspec tests

* fixing rspec tests

* pushing tests

* rubocop

* Lint roll

* Remove zero padding from times

* Remove hardcoded tz

* Test fixes

* Fix expected error class

* Fix unrelated failing test

---------

Co-authored-by: nhansen3 <noah.hansen1323@gmail.com>
Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* APPEALS-51447 Scheduled time showed in the left view is updated (#22162)

* APPEALS-51447 Scheduled time showed in the left view is updated

* Jest test fix in HearingTimeScheduledInTimezone

* APPEALS-51447 Add date to time conversion

* APPEALS-51447 Jest and Rspec fixed

---------

Co-authored-by: Jim Foley <james.foley4@va.gov>

* Create rake task to seed UAT (#22317)

* Create rake task to seed UAT

* change how to get the user and the veterant file_number

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* Create a Rails Migration to Add a 'scheduled_datetime'  (#22408)

* Create a Rails Migration to Add a 'scheduled_datetime' Column of Type timestamptz to the Postgres hearing Table

* include the schema.rb file

* Change comment in the migration

* Wmedders21/appeals 53522 (#22412)

* Test: Hearings::TimeService

* New service: Hearings::TimeService

* Add YARD documentation to  Hearings::TimeService

* Fix test expectation for no dst offset in winter

* Rename Hearings::TimeService to HearingDatetimeService

* Rubocop fixes in hearing_datetime_service_spec.rb

* Update HearingDatetimeService comments and spec expectations

* Add DST edge case testing for hearing datetime service

* Refactor prepare_time_for_storage to follow DRY

* Create rake task to seed UAT-Legacy (#22346)

* Create rake task to seed UAT-Legacy

* fix lint errors

* Change the user to work in UAT

* Modified file to run in UAT

* Fix the type of appeals and lint errors

* Changes needed to execute in UAT

* fix lint error in Seed AMA appeal

* Change parameter in function

* Update lib/tasks/seed_legacy_hearing.rake

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* APPEALS-53674 scheduled_for is Able to Account for scheduled_in_timez… (#22447)

* APPEALS-53674 scheduled_for is Able to Account for scheduled_in_timezone Values

* APPEALS-53674 spec coverage

* APPEALS-53674 updated spec

* Update app/models/hearing.rb

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* Wmedders21/appeals 53660 (#22431)

* LegacyHearing#scheduled_for WIP

* Define scheduled_for in legacy hearing and update hearing_day_id_refers_to_vacols_row? to prevent infinite loop

* Change legacy hearing factory to not supply scheduled_in_timezone by default

* Test: LegacyHearing #scheduled_for

* Rubocop style fixes

* Add YARD documentation to LegacyHearing#scheduled_for

* spec fixes

* revert to feature branch

* fix spec after changes to legacy hearing factory

* update spec for code changes in legacy appeal scheduled_for

* update spec to mock hearing more accurately

* rubocop fixes

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* Wmedders21/appeals 53688 (#22435)

* Add instance methods to HearingDatetimeService

* Rubocop fixes

* Add YARD documentation to instance methods

* Reformat HearingDatetimeService#central_office_timestring to match HearingTimeService#central_office_time_string

* add validation for scheduled_in_timezone

* update tests for validations and testing on different hearing days

* rubocop fixes

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* APPEALS-53536 new method to check the hearing date time service and h… (#22418)

* APPEALS-53536 new method to check the hearing date time service and hearing time service

* APPEALS-53536 added YARD Doc

* APPEALS-53536 scheduled_in_timezone nil by default in hearing and legacy hearing factories

* APPEALS-53536 spec fixes

* APPEASL-53536 YARD doc formatting

* Retriggering CI

* Update app/models/legacy_hearing.rb

* Update spec/models/hearing_spec.rb

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Wmedders21/appeals 54461 (#22487)

* Add poa_time and appellant_time to HearingTimeConcern

* Replace HearingTimeService #poa_time and #appellant_time with HearingTimeConcern versions

* rubocop fixes

* update yard comments

* Remove outdated test from hearing_time_service_spec

* Adjust slot_hearing in HearingRepository to Utilize New HearingDateti… (#22491)

* Adjust slot_hearing in HearingRepository to Utilize New HearingDatetimeService

* fix lint errors

* Revert 'Schedule Veteran For A Hearing' expected times to what they are in master

* remove convert_scheduled_time_to_utc function, fix lint error and refactor some code

* Update spec/services/hearing_time_service_spec.rb

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Update spec to use scheduled_in_timezone and scheduled_datetime

* Rubocop fix

* APPEALS-54170 Conditional Pre-Processing of scheduled_time_strings in HearingUpdateForm

* Change central office time string to always be in eastern time explicitly

* update Hearing#scheduled_for to have correct fallback logic

* revert expectation in daily_docket/build_hearsched_spec 'User can update fields'

* revert specs in hearing_mailer_spec

* revert spec changes

* revert spec changes

* MattT/APPEALS-54184: Introduce Conditional Pre-Processing of scheduled_time_strings in LegacyHearingUpdateForm (#22478)

* Set legacy hearing time updates to be processed by the HearingDatetimeService

* Remove unnecessary attr

* Fix attr name

* Build facade for processing incoming hearing time updates

* Update YARD docstring

* Some temp fix that will be replaced with future work

* Fix method names for tests

* Remove accidental change

* Remove tests for methods that no longer exist

* Add HearingTimeService#process_legacy_scheduled_time_string specs

* Remove problematic type since it's going away anyways

* Introduce some funky feature tests

* Fix recursive factory call

* Change expectations of tests to be more easily matched

* Fix feature tests

* Add a unit test

* Fix failing spec

* Fix flakey tests

* Update hearings seed

* Adjust hearing times in seed file

* Fix HearingDispositionChangeJob spec

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Reconfigure placement of some methods. Reintroduce old Hearing#scheduled_for method

* Unskip a test

* Ooops! It needs to be a class method

* Fix typo

* Fix test

* Fix a silly spec typo

* Fix hearing_Spec

* MattT/APPEALS-53800: Replace all instances of 'America/Anchorage' with 'America/Juneau' (#22507)

* Replace all instances of 'America/Anchorage' with 'America/Juneau'

* Replace all instances of 'America/Anchorage' with 'America/Juneau'

* Update snapshots

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Fix HearingTime offset on Schedule Veteran form

* Fix TimeSlot offsets when scheduling virtual hearings

* Fixes how offsets are displayed in the following areas:

Appellant TZ + Representative TZ dropdowns
Email Confirmation Modal
Daily Docket page dropdowns
Virtuah Hearing Conversion Form
Add Hearing Day page
Edit Docket page

* Push up some stragglers

* fix showing CORS errors on the frontend in development instead of the javascript error

* Fix DocketStartTimes offsets

* Fix VSO participant section timezone dropdowns

* Fix Storybook file

* Update spec to use scheduled_in_timezone and scheduled_datetime (#22502)

* Update spec to use scheduled_in_timezone and scheduled_datetime

* Rubocop fix

* Change central office time string to always be in eastern time explicitly

* update Hearing#scheduled_for to have correct fallback logic

* revert expectation in daily_docket/build_hearsched_spec 'User can update fields'

* revert specs in hearing_mailer_spec

* revert spec changes

* revert spec changes

* Update app/models/hearing.rb

Co-authored-by: Stephen E Baier <19843225+kilian-prime@users.noreply.github.com>

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>
Co-authored-by: Stephen E Baier <19843225+kilian-prime@users.noreply.github.com>

* Kamalam7/appeals 54170 (#22516)

* APPEALS-54170 spec fix

* APPEALS-54170 Add nil return type in YARD doc

* Fix test

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Address some Storybook issues

* Remove accidental code additions

* Add back in missing code

* Fix linting error

* Add buildDatetimeString function

* Utilize buildDatetimeString function

* Add jsdoc param

* The juice was not worth the squeeze

* Revert other change too

* Fix radio field options in DocketStartTimes

* Fix test

* Fix fields on Hearing Details page

* Update Field.test.js

* Update snapshot temporarily

* Fix snapshots for Timezone

* Lint fix

* Update modalForms/HearingTime snapshots

* Fix TimeSlotButton tests

* Fix TimeSlot tests

* Fix AppellantSection tests and snapshots

* Fix rep section tests

* Fix DocketStartTimes tests

* Fix Fields tests

* Fix DailyDocketRow tests

* Fix EmailConfirmationModal tests

* Fix Timezone tests

* Fix CaseWorkerIndex snapshot

* Remove extra space

* Update ScheduleVeteranForm tests

* Add back in the newline

* Add spaces back in

* Add one more space

* Remove 3 spaces

* Add debugging output for CI troubleshooting

* Fix PropType issues

* Adjust expectation in Fields.test.js

* Alter expectations

* Revert tests

* Resolve double alert banners on Case Details page

* Add RO times to Previously Scheduled section of Daily Docket pages (#22649)

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* MattT/APPEALS-56861 (#22650)

* Add RO times to Previously Scheduled section of Daily Docket pages

* Use RO tz over complex logic

* Update snapshot

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Prototype/recipient timezone fallback (#22568)

* Update recipient timezone to look through appeal if nil elsewhere

* Remove redundant conditional from serializers and always pass representative_tz

* Refactor for readability

* update hearing mailer spec to account for recipient timezone fallback logic

* remove empty line

---------

Co-authored-by: Matthew Thornton <99351305+ThorntonMatthew@users.noreply.github.com>

* Revert "MattT/APPEALS-56861 (#22650)"

This reverts commit 08c9528.

* Remove duplicate line

* Sort by scheduled_for instead on Assign Hearings page (#22674)

* Sort by scheduled_for instead on Assign Hearings page

* Update snapshot

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

* Address failures in spec

* Lint fix

* MattT/APPEALS-57189 (#22696)

* Convert time string to 24 hour time before persisting

* Adds specs

---------

Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>

---------

Co-authored-by: j-n-t-l <611441@bah.com>
Co-authored-by: Jonathan Cohen <cohen_jonathan@bah.com>
Co-authored-by: Janet Lu <93942793+j-n-t-l@users.noreply.github.com>
Co-authored-by: Prerna Devulapalli <prerna.devulapalli@va.gov>
Co-authored-by: Matthew Thornton <ThorntonMatthew@users.noreply.github.com>
Co-authored-by: prernadevbah <132498915+prernadevbah@users.noreply.github.com>
Co-authored-by: Will Medders <93014155+wmedders21@users.noreply.github.com>
Co-authored-by: piedram <110848569+piedram@users.noreply.github.com>
Co-authored-by: Jim Foley <james.foley4@va.gov>
Co-authored-by: Kamala Madamanchi <110078646+kamala-07@users.noreply.github.com>
Co-authored-by: msteele <Marc.Steele@va.gov>
Co-authored-by: noahhansen-gov <166541737+noahhansen-gov@users.noreply.github.com>
Co-authored-by: nhansen3 <noah.hansen1323@gmail.com>
Co-authored-by: William Medders <medders_william@bah.com>
Co-authored-by: Kamala Madamanchi <kamala.madamanchi@va.gov>
Co-authored-by: Clay Sheppard <csheepy@gmail.com>
Co-authored-by: Stephen E Baier <19843225+kilian-prime@users.noreply.github.com>
  • Loading branch information
18 people authored Sep 4, 2024
1 parent 84c1651 commit 6a715f1
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 3 deletions.
2 changes: 1 addition & 1 deletion app/services/hearing_time_service.rb
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ def central_office_time
def process_legacy_scheduled_time_string(date:, time_string:)
return nil unless date && time_string

hour, min = time_string.split(":")
hour, min = self.class.process_scheduled_time(time_string).split(":")
time = date.to_datetime
unformatted_time = Time.use_zone(VacolsHelper::VACOLS_DEFAULT_TIMEZONE) do
Time.zone.now.change(
Expand Down
4 changes: 2 additions & 2 deletions spec/feature/hearings/virtual_hearings/daily_docket_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -209,9 +209,9 @@ def check_email_events(hearing, current_user)
end

context "Without a pre-existing scheduled_in_timezone value" do
let(:hearing_time_selection_string) { "12:00 PM Central Time (US & Canada)" }
let(:hearing_time_selection_string) { "3:00 PM Central Time (US & Canada)" }
let(:hearing) { initial_hearing.tap { _1.update!(scheduled_in_timezone: nil) } }
let(:expected_post_update_time) { "12:00 PM CST" }
let(:expected_post_update_time) { "3:00 PM CST" }

before do
hearing.hearing_day.update!(regional_office: "RO30", request_type: "T", scheduled_for: "2024-11-11")
Expand Down
8 changes: 8 additions & 0 deletions spec/services/hearing_time_service_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,14 @@
it { is_expected.to be nil }
end

context "When date is non-nil and time_string is non-nil" do
let(:test_date) { "2024-09-01" }
let(:test_time_string) { "2:00 PM Eastern Time (US & Canada)" }
let(:expected_time) { Time.use_zone("UTC") { Time.zone.parse("#{test_date} 14:00") } }

it { is_expected.to eq expected_time }
end

describe "When the time_string is Pacific Time" do
let(:test_time_string) { "10:00 AM Pacific Time (US & Canada)" }
let(:expected_time) { Time.use_zone("UTC") { Time.zone.parse("#{test_date} 10:00") } }
Expand Down

0 comments on commit 6a715f1

Please sign in to comment.