Caseflow: all the flakey tests

Created on 24 Apr 2019  ·  73Comments  ·  Source: department-of-veterans-affairs/caseflow

All 73 comments

What does it mean when a checkbox above is checked? If it means that the flake has been fixed, then some of these should be unchecked, like the Hearing Task flake, which happened on my PR today: https://circleci.com/gh/department-of-veterans-affairs/caseflow/63586

The weird thing is it seems to always fail on this particular line in the controller spec, but when I add a puts statement locally in ScheduleHearingTask, that line never gets called by the test.

the hearing task flake was happening in multiple places. We fixed one, and then another popped up.

I fixed it yesterday in ce376882610bc32f6a5de79146db2af0ab8b8bec

---

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13464


  • [x] [Circle](https://circleci.com/gh/department-of-veterans-affairs/caseflow/65387) (/spec/models/hearing_day_spec.rb:380 - HearingDay Video Hearings returns video hearings that are not postponed [...] multiple hearings and multiple days...)
  • [x] [Circle](https://circleci.com/gh/department-of-veterans-affairs/caseflow/65580?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link) ./spec/feature/hearing_schedule/daily_docket_spec.rb:113 Hearing Schedule Daily Docket Daily docket for RO view user User can only update notes expected to find text "You have successfully updated" in "CaseflowHearings\n

This test https://circleci.com/gh/department-of-veterans-affairs/caseflow/65285 has been fixed. I used the ensure_stable do label and I see that it passes.

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13498


Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13497


Failure/Error: expect(Appeal.first.available_hearing_locations.count).to eq 2

  expected: 2
       got: 6

  (compared using ==)
./spec/models/tasks/hearing_admin_action_verify_address_task_spec.rb:59

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13496


Capybara::ElementNotFound:
Unable to find link or button "190619-1"
./spec/feature/queue/ama_queue_spec.rb:30:in `block (4 levels) in


  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69785
    Failure/Error: expect(page).to have_content("Could not find a Veteran matching the file number")
    expected to find text "Could not find a Veteran matching the file number" in "CaseflowQueue\n | Switch product\nSearch cases\nBVA_VSO (VACO)\nVeteran Case Search\nPlease enter a valid claims file number or SSN to search for all available cases.\nNo cases found for “123456789”\nPlease enter a valid claims file number or SSN to search for all available cases.\nSearch\nCaseflow Help\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
    ./spec/feature/queue/search_spec.rb:326:in `block (4 levels) in

Lots of search_spec

  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69836
    Search queue case search for appeals using veteran id when VSO employee searches for file number that does not match any veteran displays a helpful error message on same page
    _spec/feature/queue/search_spec.rb_
    Failure/Error: expect(page).to have_content("Could not find a Veteran matching the file number")
  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69864
    Search has withdrawn decision reviews withdraw entire review and show withdrawn on search page
    _spec/feature/queue/search_spec.rb_
    Failure/Error: expect(page).to have_content("Withdrawn")
  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69966
    Search queue case search for appeals using veteran id higher level reviews and supplemental claims when a claim has a higher level review and/or supplemental claim and it also has appeals has a higher level review shows the HLR / SCs table
    _spec/feature/queue/search_spec.rb_
    Failure/Error: expect(page).to have_content(COPY::OTHER_REVIEWS_TABLE_TITLE)
  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69966
    Search queue case search for appeals using veteran id higher level reviews and supplemental claims when a claim has a higher level review and/or supplemental claim and it has no appeals should show the HLR / SCs table
    _spec/feature/queue/search_spec.rb_
    Failure/Error: expect(page).to have_content(COPY::CASE_LIST_TABLE_EMPTY_TEXT)
  • [x] https://circleci.com/gh/department-of-veterans-affairs/caseflow/69831
    Failure/Error: expect(page).to have_content("1 case found for")
    expected to find text "1 case found for" in "CaseflowQueue\nSearch cases\nCSS_ID96 (VACO)\nVeteran Case Search\nPlease enter a valid claims file number or SSN to search for all available cases.\nNo cases found for “300000001”\nPlease enter a valid claims file number or SSN to search for all available cases.\nSearch\nCaseflow Help\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
    ./spec/feature/queue/search_spec.rb:33:in `block (4 levels) in

Lots of failing tests around appeal withdrawal

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13494


Capybara::ElementNotFound:
Unable to find link or button "Monica Valencia"
./spec/feature/queue/ama_queue_spec.rb:575:in block (4 levels) in <top (required)>' ./spec/support/feature_helper.rb:59:instep'
./spec/feature/queue/ama_queue_spec.rb:572:in `block (3 levels) in ```

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13493


Failure/Error: expect(page).to have_content(COPY::ATTORNEY_QUEUE_TABLE_TITLE)
  expected to find text "Your cases" in "CaseflowQueue\nSearch cases\nCSS_ID1 (VACO)\nUnable to load your cases\nIt looks like Caseflow was unable to load your cases.\nPlease refresh the page and try again.\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback". (However, it was found 2 times using a case insensitive search.)
./spec/feature/queue/task_queue_spec.rb:96:in `block (3 levels) in <top (required)>'

Migrated to #13491, #13492


1. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member has 'Cancel task and assign Regional Office' option - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: expect(page).to have_content("Verify Address")
2. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member in cancel task modal Regional Office and notes are editable - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: container.find(selector, **keyword_args)
3. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member in cancel task modal can submit form with Regional Office and no notes - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: container.find(selector, **keyword_args)
4. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member in cancel task modal can submit form with Regional Office and notes - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: container.find(selector, **keyword_args)
5. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member in cancel task modal can't submit form without specifying a Regional Office - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: container.find(selector, **keyword_args)
6. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a hearing admin member in cancel task modal has Regional Office dropdown and notes field - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: container.find(selector, **keyword_args)
7. HearingAdminActionVerifyAddressTask Address Verify Workflow with Legacy Appeal UI tests with a regular member has no actions - spec.feature.hearings.hearing_admin_action_verify_address_task_spec
Failure/Error: expect(page).to have_content("Verify Address")

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13486


Failure/Error: expect(page).to have_content("You have successfully updated")
./spec/feature/hearings/daily_docket_spec.rb:137:in `block (3 levels) in <top (required)>'

@pkarman I used the ensure_stable do label and I see that it passes. Without the ensure_stable, I see that the alert takes a few seconds to load on the page. Do think adding a sleep 1 is a good idea or should we skip this test.

Failure/Error: expect(gauge_labels[:app]).to eq("fake-app")

  expected: "fake-app"
       got: "idt"

  (compared using ==)
./spec/services/metrics_service_spec.rb:26
Failure/Error: @vsos_user_represents ||= bgs.fetch_poas_by_participant_id(participant_id)

  (#<Fakes::BGSService:0x000055b62cde3810>).fetch_poas_by_participant_id(#<Fakes::BGSService:0x000055b62cde3810>, "4623321")
      expected: 0 times with any arguments
      received: 1 time with arguments: (#<Fakes::BGSService:0x000055b62cde3810>, "4623321")
./app/models/user.rb:106:in `vsos_user_represents'
./app/services/appeal_finder.rb:53:in `block in find_appeals_for_vso_user'
./app/services/metrics_service.rb:14:in `block in record'
./app/services/metrics_service.rb:13:in `record'
./app/services/appeal_finder.rb:50:in `find_appeals_for_vso_user'
./app/services/appeal_finder.rb:12:in `find_appeals_for_veterans'
./app/workflows/case_search_results_for_veteran_file_number.rb:15:in `appeals'
./app/workflows/case_search_results_base.rb:67:in `search_results'
./app/workflows/case_search_results_base.rb:15:in `call'
./app/controllers/appeals_controller.rb:17:in `block (2 levels) in index'
./app/controllers/appeals_controller.rb:10:in `index'
./spec/controllers/appeals_controller_spec.rb:188:in `block (5 levels) in <top (required)>'

Found a few other tickets referencing flakey tests. Transferring them here and closing them.

Failure/Error: expect(page).to_not have_content(COPY::OTHER_REVIEWS_TABLE_TITLE)
  expected not to find text "Higher Level Reviews & Supplemental Claims" in "Caseflow Search cases CSS_ID4 (VACO) Veteran Case Search Please enter a valid claims file number to search for all available cases. Search 1 case found for “Bob Smith (300000003)” Appeals Docket Appellant Name Status Type(s) Decision Date Assigned To L 28 This is a paper case Bob Smith Higher Level Reviews & Supplemental Claims This Veteran has no higher level reviews or supplemental claims at this time. Built with ♡ by theDigital Service at VA Track Caseflow Status|Send feedback"
./spec/feature/queue/search_spec.rb:50:in `block (5 levels) in <top (required)>'

https://circleci.com/gh/department-of-veterans-affairs/caseflow/39261?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

https://circleci.com/gh/department-of-veterans-affairs/caseflow/39595?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

RequestIssue#validate_eligibility! issues with previous decision reviews when the previous review is an appeal when the current review is a higher level review is not eligible after an appeal - spec.models.request_issue_spec
spec/models/request_issue_spec.rb
Failure/Error: expect(rating_request_issue.ineligible_reason).to eq("appeal_to_higher_level_review")

  expected: "appeal_to_higher_level_review"
       got: "higher_level_review_to_higher_level_review"

  (compared using ==)
./spec/models/request_issue_spec.rb:768:in `block (6 levels) in <top (required)>'
RequestIssue#validate_eligibility! issues with previous decision reviews when the previous review is an appeal when the current review is an appeal is not eligible after an appeal - spec.models.request_issue_spec
spec/models/request_issue_spec.rb
Failure/Error: expect(rating_request_issue.ineligible_due_to).to eq(previous_request_issue)

  expected: #<RequestIssue id: 171, benefit_type: "compensation", contention_reference_id: 1234, contested_decisi...untimely_exemption_notes: nil, vacols_id: nil, vacols_sequence_id: nil, veteran_participant_id: nil>
       got: #<RequestIssue id: 168, benefit_type: "compensation", contention_reference_id: 1234, contested_decisi...untimely_exemption_notes: nil, vacols_id: nil, vacols_sequence_id: nil, veteran_participant_id: nil>

  (compared using ==)

  Diff:



  @@ -1,16 +1,16 @@
  -#<RequestIssue:0x000055f106a67280
  - id: 171,
  +#<RequestIssue:0x000055f108507108
  + id: 168,
    benefit_type: "compensation",
    contention_reference_id: 1234,
    contested_decision_issue_id: nil,
  - contested_issue_description: nil,
  + contested_issue_description: "a rating request issue",
    contested_rating_issue_diagnostic_code: "5008",
    contested_rating_issue_disability_code: nil,
  - contested_rating_issue_profile_date: nil,
  + contested_rating_issue_profile_date: "2018-01-01 12:00:00 UTC",
    contested_rating_issue_reference_id: "hlr123",
    created_at: Mon, 01 Jan 2018 12:00:00 UTC +00:00,
    decision_date: nil,
  - decision_review_id: 9,
  + decision_review_id: 8,
    decision_review_type: "Appeal",
    decision_sync_attempted_at: nil,
    decision_sync_error: nil,
  @@ -32,7 +32,7 @@
    rating_issue_profile_date: nil,
    rating_issue_reference_id: nil,
    removed_at: nil,
  - review_request_id: 9,
  + review_request_id: 8,
    review_request_type: "Appeal",
    unidentified_issue_text: nil,
    untimely_exemption: nil,
./spec/models/request_issue_spec.rb:786:in `block (6 levels) in <top (required)>'

Only seen once so far.

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13484


Capybara::ElementNotFound:
Unable to find css ".Select-menu-outer" that is a sibling of visible css ".dropdown-regionalOffice .Select-control"
./spec/support/feature_helper.rb:105:in dropdown_click' ./spec/support/feature_helper.rb:28:inclick_dropdown'
./spec/feature/hearings/postpone_hearing_spec.rb:110:in `block (3 levels) in

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13473


Failure/Error:
  expect(RecordSyncedByJob.next_records_to_process(Appeal.all, limit)).to match_array(
    [appeal_without_sync, old_appeal_with_sync]
  )

  expected collection contained:  [#<Appeal id: 101, closest_regional_office: nil, docket_range_date: nil, docket_type: "evidence_submi...0164b-5d56-496b-a87d-d96c281daa2a", veteran_file_number: "500000824", veteran_is_not_claimant: nil>]
  actual collection contained:    [#<Appeal id: 62, closest_regional_office: nil, docket_range_date: nil, docket_type: "evidence_submis...2c1b9-3685-4632-81ff-af0eca3972bf", veteran_file_number: "500000800", veteran_is_not_claimant: nil>]
  the missing elements were:      [#<Appeal id: 101, closest_regional_office: nil, docket_range_date: nil, docket_type: "evidence_submi...0164b-5d56-496b-a87d-d96c281daa2a", veteran_file_number: "500000824", veteran_is_not_claimant: nil>]
  the extra elements were:        [#<Appeal id: 62, closest_regional_office: nil, docket_range_date: nil, docket_type: "evidence_submis...2c1b9-3685-4632-81ff-af0eca3972bf", veteran_file_number: "500000800", veteran_is_not_claimant: nil>]
  • [x] TaskPager.sorted_tasks when sorting by closest regional office column sorts by regional office city - spec.models.task_pager_spec

https://circleci.com/gh/department-of-veterans-affairs/caseflow/78222?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13469


A bunch from organization_spec.rb


Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13480


  • [ ] https://circleci.com/gh/department-of-veterans-affairs/caseflow/78528
    Organization.assignable when current task is assigned to a user and its parent is assigned to a user to an organization returns a list without that organization
    _spec/models/organization_spec.rb_
    Failure/Error: expect(Organization.assignable(task)).to eq([other_organization])

---

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13478


  • [ ] https://circleci.com/gh/department-of-veterans-affairs/caseflow/78528
    Organization.assignable when current task is assigned to a user returns a list without that organization - spec.models.organization_spec
    _spec/models/organization_spec.rb_
    Failure/Error: expect(Organization.assignable(task)).to match_array([organization, other_organization])

---

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13479


---

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13482


  • [ ] https://circleci.com/gh/department-of-veterans-affairs/caseflow/78528
    Organization.assignable when organization cannot receive tasks should not be included in the list of organizations returned by assignable - spec.models.organization_spec
    _spec/models/organization_spec.rb_
    Failure/Error: expect(Organization.assignable(task)).to match_array([organization, other_organization])

---

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13481


  • [ ] https://circleci.com/gh/department-of-veterans-affairs/caseflow/78528
    Organization.assignable when there is a named Organization as a subclass of Organization should be included in the list of organizations returned by assignable - spec.models.organization_spec
    _spec/models/organization_spec.rb_
    Failure/Error: expect(Organization.assignable(task).length).to eq(3)

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13477


Failure/Error: expect(RootTask.count).to eq(1)

  expected: 1
       got: 3

  (compared using ==)
./spec/workflows/initial_tasks_factory_spec.rb:118:in `block (4 levels) in <top (required)>'

Fixed here: https://github.com/department-of-veterans-affairs/caseflow/pull/11792

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13473


Failure/Error:
  expect(RecordSyncedByJob.next_records_to_process(Appeal.all, limit)).to match_array(
    [appeal_without_sync]
  )

Closest regional office fixed in #11842

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13464


HearingTimeService with a legacy hearing and a hearing scheduled for 12:00pm PT #local_time returns time object encoded in local time - spec.services.hearing_time_service_spec
spec/services/hearing_time_service_spec.rb
Failure/Error: expect(LegacyHearing.first.time.local_time).to eq(expected_time)

  expected: 2019-08-22 12:00:00.000000000 -0700
       got: 2019-08-23 12:00:00.000000000 -0700

  (compared using ==)

  Diff:
  @@ -1,2 +1,2 @@
  -Thu, 22 Aug 2019 12:00:00 PDT -07:00
  +Fri, 23 Aug 2019 12:00:00 PDT -07:00
./spec/services/hearing_time_service_spec.rb:49:in `block (4 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13470


TaskFilter.filtered_tasks when filtering by docket type when filter includes direct review returns only tasks with direct review dockets - spec.models.task_filter_spec
spec/models/task_filter_spec.rb
Failure/Error: expect(subject.map(&:id)).to match_array(review_tasks.map(&:id))

  expected collection contained:  [522, 523, 524]
  actual collection contained:    [529, 530, 531]
  the missing elements were:      [522, 523, 524]
  the extra elements were:        [529, 530, 531]
./spec/models/task_filter_spec.rb:236:in `block (5 levels) in <top (required)>'
AppealRepository#create_schedule_hearing_tasks when missing legacy appeals creates the legacy appeal and creates schedule hearing tasks - spec.repositories.appeal_repository_spec
spec/repositories/appeal_repository_spec.rb
Failure/Error: expect(VACOLS::Case.all.pluck(:bfcurloc).uniq).to eq([LegacyAppeal::LOCATION_CODES[:caseflow]])

  expected: ["CASEFLOW"]
       got: [nil, "CASEFLOW"]

  (compared using ==)

  Diff:
  @@ -1,2 +1,2 @@
  -["CASEFLOW"]
  +[nil, "CASEFLOW"]
./spec/repositories/appeal_repository_spec.rb:286:in `block (4 levels) in <top (required)>'

currently skipped

BvaDispatch.next_assignee when there are members on the BVA Dispatch team when members are admins should skip the admins and assign to the non admin team members - spec.models.organizations.bva_dispatch_spec
spec/models/organizations/bva_dispatch_spec.rb
Failure/Error: expect(subject).to eq(bva_dispatch_org.users[number_of_admins])

  expected: #<User id: 449, created_at: "2019-09-06 19:07:08", css_id: "CSS_ID1915", efolder_documents_fetched_at...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-06 19:07:08">
       got: #<User id: 450, created_at: "2019-09-06 19:07:08", css_id: "CSS_ID1916", efolder_documents_fetched_at...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-06 19:07:08">

  (compared using ==)

  Diff:

  @@ -1,7 +1,7 @@
  -#<User:0x00007fe012cdb6e0
  - id: 449,
  +#<User:0x00007fe012cbfe90
  + id: 450,
    created_at: Fri, 06 Sep 2019 15:07:08 EDT -04:00,
  - css_id: "CSS_ID1915",
  + css_id: "CSS_ID1916",
    efolder_documents_fetched_at: nil,
    email: nil,
    full_name: "Lauren Roth",
./spec/models/organizations/bva_dispatch_spec.rb:45:in `block (5 levels) in <top (required)>'
BatchUsersForReaderQuery#process should return active user with expired or nil efolder_documents_fetched_at - spec.queries.batch_users_for_reader_query_spec
spec/queries/batch_users_for_reader_query_spec.rb
Failure/Error: expect(subject).to eq([active_user4, active_user2, active_user1])

  expected: [#<User id: 471, created_at: "2019-09-10 17:07:46", css_id: "CSS_ID2132", efolder_documents_fetched_a...il, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-10 17:07:46">]
       got: #<ActiveRecord::Relation [#<User id: 466, created_at: "2019-09-10 17:07:46", css_id: "ANNE MERICA", e...l, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-10 17:07:46">]>

  (compared using ==)

  Diff:
  @@ -1,4 +1,57 @@
  -[#<User id: 471, created_at: "2019-09-10 17:07:46", css_id: "CSS_ID2132", efolder_documents_fetched_at: nil, email: nil, full_name: "Lauren Roth", last_login_at: "2019-09-07 17:07:46", roles: nil, selected_regional_office: nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-10 17:07:46">,
  - #<User id: 469, created_at: "2019-09-10 17:07:46", css_id: "CSS_ID2130", efolder_documents_fetched_at: "2019-09-09 15:07:46", email: nil, full_name: "Lauren Roth", last_login_at: "2019-09-07 17:07:46", roles: nil, selected_regional_office: nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-10 17:07:46">,
  - #<User id: 468, created_at: "2019-09-10 17:07:46", css_id: "CSS_ID2129", efolder_documents_fetched_at: "2019-09-09 16:07:46", email: nil, full_name: "Lauren Roth", last_login_at: "2019-09-07 17:07:46", roles: nil, selected_regional_office: nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-10 17:07:46">]
  +[#<User:0x00007fc9a14e1c50
  +  id: 466,
  +  created_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00,
  +  css_id: "ANNE MERICA",
  +  efolder_documents_fetched_at: nil,
  +  email: "[email protected]",
  +  full_name: nil,
  +  last_login_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00,
  +  roles: ["Certify Appeal"],
  +  selected_regional_office: nil,
  +  station_id: "405",
  +  status: "active",
  +  status_updated_at: nil,
  +  updated_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00>,
  + #<User:0x00007fc9a14e1b10
  +  id: 471,
  +  created_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00,
  +  css_id: "CSS_ID2132",
  +  efolder_documents_fetched_at: nil,
  +  email: nil,
  +  full_name: "Lauren Roth",
  +  last_login_at: Sat, 07 Sep 2019 13:07:46 EDT -04:00,
  +  roles: nil,
  +  selected_regional_office: nil,
  +  station_id: "101",
  +  status: "active",
  +  status_updated_at: nil,
  +  updated_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00>,
  + #<User:0x00007fc9a14e19d0
  +  id: 469,
  +  created_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00,
  +  css_id: "CSS_ID2130",
  +  efolder_documents_fetched_at: Mon, 09 Sep 2019 11:07:46 EDT -04:00,
  +  email: nil,
  +  full_name: "Lauren Roth",
  +  last_login_at: Sat, 07 Sep 2019 13:07:46 EDT -04:00,
  +  roles: nil,
  +  selected_regional_office: nil,
  +  station_id: "101",
  +  status: "active",
  +  status_updated_at: nil,
  +  updated_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00>,
  + #<User:0x00007fc9a14e15e8
  +  id: 468,
  +  created_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00,
  +  css_id: "CSS_ID2129",
  +  efolder_documents_fetched_at: Mon, 09 Sep 2019 12:07:46 EDT -04:00,
  +  email: nil,
  +  full_name: "Lauren Roth",
  +  last_login_at: Sat, 07 Sep 2019 13:07:46 EDT -04:00,
  +  roles: nil,
  +  selected_regional_office: nil,
  +  station_id: "101",
  +  status: "active",
  +  status_updated_at: nil,
  +  updated_at: Tue, 10 Sep 2019 13:07:46 EDT -04:00>]
./spec/queries/batch_users_for_reader_query_spec.rb:29:in `block (3 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13469


RetrieveDocumentsForReaderJob.perform a user exists who have been recently active if there are active and inactive users should only run the job for the active user with expired or nil efolder_documents_fetched_at - spec.jobs.retrieve_documents_for_reader_job_spec
spec/jobs/retrieve_documents_for_reader_job_spec.rb
Failure/Error: expect(users).to match_array([active_user1, active_user2, active_user4])

  expected collection contained:  [#<User id: 399, created_at: "2019-09-11 16:27:34", css_id: "CSS_ID1634", efolder_documents_fetched_a...il, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-11 16:27:34">]
  actual collection contained:    [#<User id: 398, created_at: "2019-09-11 16:27:34", css_id: "ANNE MERICA", efolder_documents_fetched_...il, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-09-11 16:27:34">]
  the extra elements were:        [#<User id: 398, created_at: "2019-09-11 16:27:34", css_id: "ANNE MERICA", efolder_documents_fetched_...il, station_id: "405", status: "active", status_updated_at: nil, updated_at: "2019-09-11 16:27:34">]
./spec/jobs/retrieve_documents_for_reader_job_spec.rb:30:in `block (5 levels) in <top (required)>'
Failure/Error: expect_sql("basic_appeal").to eq([appeal.as_hash])

  expected: [{"id"=>89, "closest_regional_office"=>nil, "docket_range_date"=>nil, "docket_type"=>"evidence_submis...c-ae34-44b1-9d43-b69058b46b12", "veteran_file_number"=>"500001024", "veteran_is_not_claimant"=>nil}]
       got: [{"id"=>89, "closest_regional_office"=>nil, "docket_range_date"=>nil, "docket_type"=>"evidence_submis...c-ae34-44b1-9d43-b69058b46b12", "veteran_file_number"=>"500001024", "veteran_is_not_claimant"=>nil}]

  (compared using ==)

  Diff:
  @@ -2,7 +2,7 @@
     "closest_regional_office"=>nil,
     "docket_range_date"=>nil,
     "docket_type"=>"evidence_submission",
  -  "established_at"=>"2019-09-16 18:46:01.7112",
  +  "established_at"=>"2019-09-16 18:46:01.70112",
     "establishment_attempted_at"=>nil,
     "establishment_canceled_at"=>nil,
     "establishment_error"=>nil,
./spec/sql/basic_spec.rb:12:in `block (3 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13467


Hearing Schedule Daily Docket for Build HearSched Daily Docket with one AMA hearing User can update fields - spec.feature.hearings.daily_docket.build_hearsched_spec
spec/feature/hearings/daily_docket/build_hearsched_spec.rb
Failure/Error: expect(page).to have_content("You have successfully updated")
  expected to find text "You have successfully updated" in "CaseflowHearings\n  |  Switch product\nBVATWARNER (DSUSER)\nDaily Docket (Wed 9/18/2019)\n\n< Back to schedule  \nEdit Hearing Day  \nLock Hearing Day  \nVLJ: Lauren Roth\nCoordinator:\nHearing type: Central\nRegional office:\nRoom number: 2 (1W200B)\nDownload & Print Page\nAppellant/Veteran ID/RepresentativeTime/RO(s)Actions\n1Tom Brady\n500000558\nH\n190917-1\n\n\n9999 MISSION ST\nSAN FRANCISCO CA 94103\nAttorney McAttorneyFace\n8:30 am EDT\nCentral\nDisposition\nSelect...\nCopy Requested by Appellant/Rep\nTranscript Requested\nHearing Details\nEdit Hearing Details\nNotes\nThis is a note about the hearing!\nRegional Office\nCentral\nHearing Location\nHearing Day\nWed 9/18/2019\n\nTime\n9:00 am\n1:00 pm\nOther\nCancel\nSave\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
./spec/feature/hearings/daily_docket/build_hearsched_spec.rb:83:in `block (3 levels) in <top (required)>'
JudgeRepository.find_all_judges should return only judges and acting judges - spec.repositories.judge_repository_spec
spec/repositories/judge_repository_spec.rb
Failure/Error: expect(subject.length).to eq(6)

  expected: 6
       got: 8

  (compared using ==)
./spec/repositories/judge_repository_spec.rb:27:in `block (3 levels) in <top (required)>'
JudgeRepository.find_all_judges_with_name_and_id should return only judges and acting judges - spec.repositories.judge_repository_spec
spec/repositories/judge_repository_spec.rb
Failure/Error: expect(subject.length).to eq(6)

  expected: 6
       got: 8

  (compared using ==)
./spec/repositories/judge_repository_spec.rb:35:in `block (3 levels) in <top (required)>'

currently skipped. cannot reproduce locally.

UsersController GET /users?role=Attorney when judge ID is not passed should return a list of all attorneys and judges - spec.controllers.users_controller_spec
spec/controllers/users_controller_spec.rb
Failure/Error: expect(response_body["attorneys"].size).to eq team_member_count + solo_count + 2

  expected: 8
       got: 12

  (compared using ==)
./spec/controllers/users_controller_spec.rb:71:in `block (4 levels) in <top (required)>'
UsersController GET /users?role=Judge when role is passed should return a list of judges - spec.controllers.users_controller_spec
spec/controllers/users_controller_spec.rb
Failure/Error: expect(response_body["judges"].size).to eq 3

  expected: 3
       got: 5

  (compared using ==)
./spec/controllers/users_controller_spec.rb:102:in `block (4 levels) in <top (required)>'
UsersController GET /users?role=Judge when role is passed should return a list of only judges - spec.controllers.users_controller_spec
spec/controllers/users_controller_spec.rb
Failure/Error: expect(response_body["judges"].size).to eq 3

  expected: 3
       got: 5

  (compared using ==)
./spec/controllers/users_controller_spec.rb:19:in `block (4 levels) in <top (required)>'

seems related to https://github.com/department-of-veterans-affairs/caseflow/issues/10516#issuecomment-534190476

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13468


AmaQueue Judge has a case to assign to an attorney judge can reassign the review judge tasks to another judge - spec.feature.queue.ama_queue_spec
spec/feature/queue/ama_queue_spec.rb
Failure/Error: expect(page).to have_content(judge_user.full_name)
  expected to find text "Anna Juarez" in "CaseflowQueue\nSearch cases\nCSS_ID61 (VACO)\nSubmit Draft Decision for Review\nComplete the details below to submit this Draft Decision request for judge review.\nDocument ID:\nSubmit to judge:\nLoading judges…\nNotes:\nThis work product is overtime\nThe Veteran submitted evidence that is ineligible for review\nWhat is ineligible evidence?\nCancel\nContinue\nBack\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
./spec/feature/queue/ama_queue_spec.rb:824:in `block (4 levels) in <top (required)>'
./spec/support/feature_helper.rb:60:in `step'
./spec/feature/queue/ama_queue_spec.rb:779:in `block (3 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13467


  1) Hearing Schedule Daily Docket for Build HearSched Daily Docket with one AMA hearing User can update fields
     Failure/Error: expect(page).to have_content("This is a note about the hearing!")
       expected to find text "This is a note about the hearing!" in "CaseflowHearings\n  |  Switch product\nBVATWARNER (DSUSER)\nYou have successfully updated Tom Brady's hearing.\nDaily Docket (Tue 10/01/2019)\n\n< Back to schedule  \nEdit Hearing Day  \nLock Hearing Day  \nVLJ: Lauren Roth\nCoordinator:\nHearing type: Central\nRegional office:\nRoom number: 2 (1W200B)\nDownload & Print Page\nAppellant/Veteran ID/RepresentativeTime/RO(s)Actions\n1Tom Brady\n500000577\nH\n190930-1\n\n\n9999 MISSION ST\nSAN FRANCISCO CA 94103\nAttorney McAttorneyFace\n9:00 am EDT\nCentral\nDisposition\nNo Show\nCopy Requested by Appellant/Rep\nTranscript Requested\nHearing Details\nEdit Hearing Details\nNotes\nhis is a note about the hearing!\nRegional Office\nCentral\nHearing Location\nHearing Day\nTue 10/01/2019\n\nTime\n9:00 am\n1:00 pm\nOther\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
     # ./spec/feature/hearings/daily_docket/build_hearsched_spec.rb:90:in `block (3 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13466


Failure/Error: expect(appeal_history.events.first.diff).to eq(diff)

  expected: {"placed_on_hold_at"=>[nil, 2019-10-01 15:01:41.695443485 -0400], "status"=>["assigned", "on_hold"]}
       got: {"assigned_to_id"=>[67, 313], "assigned_to_type"=>["Organization", "User"], "status"=>["on_hold", "as...85 -0400], "updated_at"=>[2019-10-01 15:01:41.695443000 -0400, 2019-10-01 15:01:41.695443485 -0400]}

Likely a missing :all_dbs clean up for VACOLS in some unrelated spec.

Failures:

  1) CachedUser.sync_from_vacols 5 VACOLS staff exist copies relevant attributes
     Failure/Error: expect(CachedUser.count).to eq(5)

       expected: 5
            got: 11

       (compared using ==)
     # ./spec/models/cached_user_spec.rb:18:in `block (4 levels) in <top (required)>'

  2) CachedUser.sync_from_vacols Staff missing sdomainid value skips staff record
     Failure/Error: expect(CachedUser.count).to eq(0)

       expected: 0
            got: 6

       (compared using ==)
     # ./spec/models/cached_user_spec.rb:50:in `block (4 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13465


TaskSorter continues to have unpredictable sorting problems.

https://app.circleci.com/jobs/github/department-of-veterans-affairs/caseflow/90368

  1) TaskSorter.sorted_tasks when there are tasks and we specify a column to sort by when sorting by case details link column sorts by veteran last and first name
     Failure/Error: expect(subject.map(&:appeal_id)).to eq(expected_order.map(&:appeal_id))

       expected: [252, 245, 247, 253, 246, 249, 248, 251, 256, 254, 244, 250, 255, 257]
            got: [252, 245, 253, 247, 246, 249, 248, 251, 256, 254, 244, 250, 255, 257]

       (compared using ==)
     # ./spec/models/task_sorter_spec.rb:281:in `block (5 levels) in <top (required)>'

https://circleci.com/gh/department-of-veterans-affairs/caseflow/90724

  • [x] DataIntegrityChecksJob#perform does not send slack notifications unless there is a report
    _spec/jobs/data_integrity_checks_job_spec.rb_
    Failure/Error: expect(slack_service).to_not have_received(:send_notification)
  • [x] DataIntegrityChecksJob#perform expired async jobs exist sends slack notification if there is a report
    _spec/jobs/data_integrity_checks_job_spec.rb_
    Failure/Error: expect(slack_service).to have_received(:send_notification)
  • [x] Basic SQL Snippet Library Test one Appeal exists runs SQL
    _spec/sql/basic_spec.rb_
    Failure/Error: expect_sql("basic_appeal").to eq([appeal.as_hash])
  • [x] Basic SQL Snippet Library Test one Appeal exists with 2f precision milliseconds rounds correctly
    _spec/sql/basic_spec.rb_
    Failure/Error: expect_sql("basic_appeal").to eq([appeal.as_hash])

12532 should fix

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13464


same as https://github.com/department-of-veterans-affairs/caseflow/issues/10516#issuecomment-524286144

Failures:

  1) HearingTimeService with a legacy hearing and a hearing scheduled for 12:00pm PT #local_time returns time object encoded in local time
     Failure/Error: expect(LegacyHearing.first.time.local_time).to eq(expected_time)

       expected: 2019-10-31 12:00:00.000000000 -0700
            got: 2019-11-01 12:00:00.000000000 -0700

       (compared using ==)

       Diff:
       @@ -1,2 +1,2 @@
       -Thu, 31 Oct 2019 12:00:00 PDT -07:00
       +Fri, 01 Nov 2019 12:00:00 PDT -07:00
     # ./spec/services/hearing_time_service_spec.rb:49:in `block (4 levels) in <top (required)>'

https://circleci.com/gh/department-of-veterans-affairs/caseflow/90852?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

  • [x] NonComp Dispositions Task Page with an existing organization when there is an error saving Shows an error when something goes wrong
    _spec/feature/non_comp/dispositions_spec.rb_
    Failure/Error: expect(page).to have_content("Something went wrong")

12532 should fix

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13463


1) Higher-Level Review Creates an end product and contentions for it
     Failure/Error:
       expect(Fakes::VBMSService).to have_received(:establish_claim!).with(
         hash_including(
           claim_hash: hash_including(
             benefit_type_code: "1",
             payee_code: "10",
             predischarge: false,
             claim_type: "Claim",
             station_of_jurisdiction: "499",
             date: higher_level_review.receipt_date.to_date,
             end_product_modifier: "033",

       #<Fakes::VBMSService (class)> received :establish_claim! with unexpected arguments
         expected: (hash_including(:claim_hash=>"hash_including(:benefit_type_code=>\"1\", :payee_code=>\"10\", :predisch...il, station_id: "283", status: "active", status_updated_at: nil, updated_at: "2019-05-30 04:00:00">))
              got: ({:claim_hash=>{:benefit_type_code=>"1", :payee_code=>"10", :predischarge=>false, :claim_type=>"Claim"...il, station_id: "283", status: "active", status_updated_at: nil, updated_at: "2019-05-30 04:00:00">}) (1 time)
                   ({:claim_hash=>{:benefit_type_code=>"1", :payee_code=>"10", :predischarge=>false, :claim_type=>"Claim"...il, station_id: "283", status: "active", status_updated_at: nil, updated_at: "2019-05-30 04:00:00">}) (1 time)
     # ./spec/feature/intake/higher_level_review_spec.rb:242:in `block (2 levels) in <top (required)>'
1) SpecialCaseMovementTask Special Case Movement Team Member With the Appeal in the right state successfully assigns the task to judge
     Failure/Error: dropdown.sibling(".Select-menu-outer").find(selector, **keyword_args).click

     Capybara::Ambiguous:
       Ambiguous match, found 27 elements matching visible css "div .Select-option" with text "Lauren Roth" within #<Capybara::Node::Element tag="div" path="/HTML/BODY[1]/DIV[1]/DIV[1]/DIV[1]/DIV[1]/MAIN[1]/DIV[1]/SECTION[1]/DIV[1]/DIV[1]/DIV[2]/DIV[1]/DIV[1]/DIV[2]">
     # ./spec/support/feature_helper.rb:143:in `click_dropdown_menu_item'
     # ./spec/support/feature_helper.rb:131:in `try_clicking_dropdown_menu_item'
     # ./spec/support/feature_helper.rb:40:in `click_dropdown'
     # ./spec/feature/queue/special_case_movement_task_spec.rb:35:in `block (4 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13462


Failures:

  1) HearingsController PATCH update when updating the AOD should return a 200 and update aod if provided
     Failure/Error: expect(ama_hearing.advance_on_docket_motion.person.id).to eq ama_hearing.appeal.appellant.id

     NoMethodError:
       undefined method `person' for nil:NilClass
     # ./spec/controllers/hearings_controller_spec.rb:231:in `block (4 levels) in <top (required)>'
LegacyAppeal#assigned_to_location if the case has been worked in caseflow if there are active TrackVeteranTask, TimedHoldTask, and RootTask when there is an assigned actionable task returns the actionable task's label and does not include nonactionable tasks in its determinations
     Failure/Error: expect(appeal.assigned_to_location).to eq(task_assignee.css_id)

       expected: "CSS_ID1690"
            got: "Case storage"

       (compared using ==)
     # ./spec/models/legacy_appeal_spec.rb:2546:in `block (6 levels) in <top (required)>'

I created a page https://github.com/department-of-veterans-affairs/caseflow/wiki/Flakey-Test-Remedies to start collecting solutions for flakey tests.

ColocatedTask attorney assigns task to vlj support staff, vlj returns it to attorney after completion should return attorney task to active state
     Failure/Error: expect(page).to have_content("INSTRUCTIONS FROM VLJ", wait: 15)
       expected to find text "INSTRUCTIONS FROM VLJ" in "CaseflowQueue\nSearch cases\nCSS_ID165 (VACO)\nBob SmithVeteran ID: 500000645 \nView all cases\nDOCKET\nE\n191205-1\nVETERAN DOCUMENTS\nView docs\nTYPE\nOriginal\nATTORNEY\nLauren Roth\nCurrently active tasks\nASSIGNED ON\n12/06/2019\nDAYS WAITING\n0\nASSIGNED TO\nCSS_ID165\nASSIGNED BY\nL. Roth\nTASK\nDraft decision\nActions\nSelect an action…[snip]"
     # ./spec/feature/queue/colocated_task_queue_spec.rb:71:in `block (3 levels) in <top (required)>'
Failures:

  1) Task queue Organizational queue page when not using pagination when filtering tasks shows the correct filters
     Failure/Error: expect(page).to have_content("#{PrivacyActTask.label.humanize} (#{unassigned_count / 2})")
       expected to find text "Privacy act task (4)" in "CaseflowQueue\nSearch cases\nCSS_ID310 (VACO)\nORG_11 cases\nSwitch views\nUnassigned (12)Assigned (12)Completed\nCases owned by the ORG_11 team that are unassigned to a person.\nViewing 1-12 of 12 total\nCase Details\nTask(s)\nClear Label filter\nPrivacy act task (8)\nTranslation task (4)\nType(s)\nDocket\nDays Waiting\n\nVeteran Documents\nBob Smith (500000228) Privacy Act Task Original E\n191212-1 29 View docs\nBob Smith (500000229) Privacy Act Task Original E\n191212-2 33 View docs\nBob Smith (500000230) Privacy Act Task Original E\n191212-3 34 View docs\nBob Smith (500000231) Privacy Act Task Original E\n191212-4 30 View docs\nBob Smith (500000232) Privacy Act Task Original E\n191212-5 32 View docs\nBob Smith (500000233) Privacy Act Task Original E\n191212-6 33 View docs\nBob Smith (500000234) Privacy Act Task Original E\n191212-7 31 View docs\nBob Smith (500000235) Privacy Act Task Original E\n191212-8 34 View docs\nBob Smith (500000244) Translation Task Original E\n191212-17 0 View docs\nBob Smith (500000245) Translation Task Original E\n191212-18 0 View docs\nBob Smith (500000246) Translation Task Original E\n191212-19 0 View docs\nBob Smith (500000247) Translation Task Original E\n191212-20 0 View docs\nViewing 1-12 of 12 total\nBuilt with ♡ by theDigital Service at VA\nTrack Caseflow Status|Send feedback"
     # ./spec/feature/queue/task_queue_spec.rb:520:in `block (5 levels) in <top (required)>'

  2) Task queue Organizational queue page when not using pagination when filtering tasks filters tasks correctly
     Failure/Error: expect(find("tbody").find_all("tr").length).to eq(unassigned_count)

       expected: 8
            got: 12

       (compared using ==)
     # ./spec/feature/queue/task_queue_spec.rb:525:in `block (5 levels) in <top (required)>'
InitialTasksFactory.create_root_and_sub_tasks! when it has multiple ihp-writing vsos creates a task for each VSO
     Failure/Error: expect(InformalHearingPresentationTask.first.assigned_to).to eq(pva)

       expected: #<Vso id: 77, created_at: "2019-12-18 18:17:34", name: "Paralyzed Veterans Of America", participant_i...dated_at: nil, type: "Vso", updated_at: "2019-12-18 18:17:34", url: "paralyzed-veterans-of-america">
            got: #<Vso id: 78, created_at: "2019-12-18 18:17:34", name: "Vietnam Veterans Of America", participant_id:...updated_at: nil, type: "Vso", updated_at: "2019-12-18 18:17:34", url: "vietnam-veterans-of-america">

       (compared using ==)

       Diff:

appears to be an assumption about .first

1) TaskPager.sorted_tasks when sorting by case details link column sorts by veteran last and first name
     Failure/Error:
       expect(subject.map do |task|
         "#{task.appeal.veteran_last_name.split(' ').last}, #{task.appeal.veteran_first_name}"
       end).to eq(expected_order.map do |task|
         "#{task.appeal.veteran_last_name.split(' ').last}, #{task.appeal.veteran_first_name}"
       end)

       expected: ["Al, Rick", "Alicia, Sachiko", "Dustin, Joaquin", "Esteban, Percy", "Howard, Synthia", "Ilana, Luke"...cas, Gregorio", "Lucrecia, Wendie", "Mi, Dorla", "Sibyl, Gayle", "Tammie, Whitley", "Vinita, Randy"]
            got: ["Alicia, Sachiko", "Al, Rick", "Dustin, Joaquin", "Esteban, Percy", "Howard, Synthia", "Ilana, Luke"...cas, Gregorio", "Lucrecia, Wendie", "Mi, Dorla", "Sibyl, Gayle", "Tammie, Whitley", "Vinita, Randy"]

       (compared using ==)
     # ./spec/models/task_pager_spec.rb:346:in `block (4 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13461


  • [ ] https://app.circleci.com/jobs/github/department-of-veterans-affairs/caseflow/100715
    ```
    1) PrepareEstablishClaimTasksJob.perform prepares the correct tasks
    Failure/Error: appeal.decisions.first.update!(vbms_document_id: FAILING_DECISION)

    ActiveRecord::RecordNotUnique:
    PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_documents_on_vbms_document_id"
    DETAIL: Key (vbms_document_id)=(999) already exists.
    : UPDATE "documents" SET "updated_at" = $1, "vbms_document_id" = $2 WHERE "documents"."id" = $3
    # ./spec/jobs/prepare_establish_claim_tasks_job_spec.rb:59:in block (2 levels) in <top (required)>' # ------------------ # --- Caused by: --- # PG::UniqueViolation: # ERROR: duplicate key value violates unique constraint "index_documents_on_vbms_document_id" # DETAIL: Key (vbms_document_id)=(999) already exists. # ./spec/jobs/prepare_establish_claim_tasks_job_spec.rb:59:inblock (2 levels) in

1) User when the status is updated with a valid status when the user is a member of many orgs when marking the admin inactive removes admin from all organizations, including JudgeTeam
     Failure/Error: expect(judge_team.judge).not_to eq user

       expected: value != #<User id: 1031, created_at: "2020-01-23 20:40:47", css_id: "CSS_ID2538", efolder_documents_fetched_a...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-01-23 20:40:47">
            got: #<User id: 1031, created_at: "2020-01-23 20:40:47", css_id: "CSS_ID2538", efolder_documents_fetched_a...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-01-23 20:40:47">

       (compared using ==)

       Diff:
       @@ -1,4 +1,4 @@
       -#<User:0x00007fd235e51758
       +#<User:0x00007fd235d1bb68
         id: 1031,
         created_at: Thu, 23 Jan 2020 15:40:47 EST -05:00,
         css_id: "CSS_ID2538",
     # ./spec/models/user_spec.rb:757:in `block (6 levels) in <top (required)>'

https://app.circleci.com/jobs/github/department-of-veterans-affairs/caseflow/100930/parallel-runs/2?filterBy=FAILED

1) User when the status is updated with a valid status when the user is a member of many orgs when marking the admin inactive removes admin from all organizations, including JudgeTeam
     Failure/Error: expect(judge_team.judge).not_to eq user

       expected: value != #<User id: 1031, created_at: "2020-01-23 20:40:47", css_id: "CSS_ID2538", efolder_documents_fetched_a...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-01-23 20:40:47">
            got: #<User id: 1031, created_at: "2020-01-23 20:40:47", css_id: "CSS_ID2538", efolder_documents_fetched_a...nil, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-01-23 20:40:47">

       (compared using ==)

       Diff:
       @@ -1,4 +1,4 @@
       -#<User:0x00007fd235e51758
       +#<User:0x00007fd235d1bb68
         id: 1031,
         created_at: Thu, 23 Jan 2020 15:40:47 EST -05:00,
         css_id: "CSS_ID2538",
     # ./spec/models/user_spec.rb:757:in `block (6 levels) in <top (required)>'

Fixed by #13253

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13460


1) User when the status is updated with a valid status when the user is a member of many orgs when marking the admin inactive removes admin from all organizations, including JudgeTeam
     Failure/Error: expect(user.selectable_organizations.length).to eq 2

       expected: 2
            got: 3

       (compared using ==)
     # ./spec/models/user_spec.rb:761:in `block (6 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13459


  1) Higher-Level Review Add / Remove Issues page Veteran with future ratings when show_future_ratings featuretoggle is enabled 
     Failure/Error: expect(higher_level_review.receipt_date).to eq(receipt_date)

       expected: Sat, 25 May 2019
            got: Tue, 30 Apr 2019

       (compared using ==)

       Diff:
       @@ -1,2 +1,2 @@
       -Sat, 25 May 2019
       +Tue, 30 Apr 2019
     # ./spec/feature/intake/higher_level_review_spec.rb:701:in `block (4 levels) in <top (required)>'

Failures:

  1) UsersUpdatedSinceQuery#call User updated_at since returns 1 User
     Failure/Error: expect(subject).to eq([user])

       expected: [#<User id: 532, created_at: "2019-05-30 04:00:00", css_id: "CSS_ID5141", efolder_documents_fetched_a...il, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-05-30 05:00:00">]
            got: #<ActiveRecord::Relation [#<User id: 514, created_at: "2020-02-10 21:31:32", css_id: "CSS_ID5124", ef...l, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-02-10 21:31:32">]>

       (compared using ==)

  2) UsersUpdatedSinceQuery#call CachedUser updated_at since returns 1 User
     Failure/Error: expect(subject).to eq([user])

       expected: [#<User id: 533, created_at: "2019-05-30 04:00:00", css_id: "BVA192", efolder_documents_fetched_at: n...il, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2019-05-30 03:00:00">]
            got: #<ActiveRecord::Relation [#<User id: 533, created_at: "2019-05-30 04:00:00", css_id: "BVA192", efolde...l, station_id: "101", status: "active", status_updated_at: nil, updated_at: "2020-02-10 21:31:32">]>

       (compared using ==)

...

Failed examples:

rspec ./spec/queries/users_updated_since_query_spec.rb:17 # UsersUpdatedSinceQuery#call User updated_at since returns 1 User
rspec ./spec/queries/users_updated_since_query_spec.rb:30 # UsersUpdatedSinceQuery#call CachedUser updated_at since returns 1 User
Failures:

  1) ETL::Syncer#call one stale origin class instance needing sync saves a new target class instance
     Failure/Error: expect(DummyEtlClass).to have_received(:sync_with_original).once

       (DummyEtlClass(Table doesn't exist) (class)).sync_with_original(*(any args))
           expected: 1 time with any arguments
           received: 9 times with any arguments
     # ./spec/services/etl/syncer_spec.rb:43:in `block (4 levels) in <top (required)>'

Finished in 7 minutes 22 seconds (files took 5.32 seconds to load)
945 examples, 1 failure, 11 pending

Failed examples:

rspec ./spec/services/etl/syncer_spec.rb:41 # ETL::Syncer#call one stale origin class instance needing sync saves a new target class instance

Failures:

  1) ETL::PersonSyncer#call 2 person records, one needing sync syncs 1 record
     Failure/Error: expect(ETL::Person.all.count).to eq(1)

       expected: 1
            got: 3

       (compared using ==)
     # ./spec/services/etl/person_syncer_spec.rb:16:in `block (4 levels) in <top (required)>'

  2) ETL::PersonSyncer#call 2 person records, full sync syncs all records
     Failure/Error: expect(ETL::Person.all.count).to eq(2)

       expected: 2
            got: 4

       (compared using ==)
     # ./spec/services/etl/person_syncer_spec.rb:29:in `block (4 levels) in <top (required)>'

  3) ETL::PersonSyncer#call origin Person record changes updates attributes
     Failure/Error: expect(ETL::Person.all.count).to eq(2)

       expected: 2
            got: 4

       (compared using ==)
     # ./spec/services/etl/person_syncer_spec.rb:45:in `block (4 levels) in <top (required)>'

Finished in 8 minutes 34 seconds (files took 5.2 seconds to load)
800 examples, 3 failures, 17 pending

Failed examples:

rspec ./spec/services/etl/person_syncer_spec.rb:11 # ETL::PersonSyncer#call 2 person records, one needing sync syncs 1 record
rspec ./spec/services/etl/person_syncer_spec.rb:24 # ETL::PersonSyncer#call 2 person records, full sync syncs all records
rspec ./spec/services/etl/person_syncer_spec.rb:42 # ETL::PersonSyncer#call origin Person record changes updates attributes

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13454


  1) TaskFilter.filtered_tasks when filtering by regional office when filter includes Boston returns only tasks where the closest regional office is Boston
     Failure/Error: expect(subject.map(&:id)).to match_array(boston_tasks.map(&:id))

       expected collection contained:  [269, 270, 271]
       actual collection contained:    [266, 267, 268]
       the missing elements were:      [269, 270, 271]
       the extra elements were:        [266, 267, 268]
     # ./spec/models/task_filter_spec.rb:176:in `block (5 levels) in <top (required)>'

Migrated to https://github.com/department-of-veterans-affairs/caseflow/issues/13465


1) TaskSorter.sorted_tasks when there are tasks and we specify a column to sort by when sorting by case details link column sorts by veteran last and first name
     Failure/Error: expect(subject.map(&:appeal_id)).to eq(expected_order.map(&:appeal_id))

       expected: [706, 698, 708, 704, 701, 710, 700, 707, 697, 709, 702, 705, 703, 699]
            got: [706, 698, 708, 704, 701, 710, 700, 707, 709, 697, 702, 705, 703, 699]

       (compared using ==)
     # ./spec/models/task_sorter_spec.rb:278:in `block (5 levels) in <top (required)>'

Ran 100 times with ensure_stable locally with no failures.

Please refer to this new process when creating flaky test issues: https://github.com/department-of-veterans-affairs/caseflow/wiki/Backend-Process-Flaky-Tests

Going to close this!

Was this page helpful?
0 / 5 - 0 ratings