New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 793524 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug-Regression



Sign in to add a comment

[M64] Cannot use auth proxy network, to add a user on the login screen.

Project Member Reported by aashuto...@chromium.org, Dec 9 2017

Issue description

Chrome Version: <From about:version: Google Chrome 64.0.3282.14>
Chrome OS Version: <From about:version: Platform 10176.8.0>
Chrome OS Platform: <Eve/Guado>
Network info: <WiFi>

Please specify Cr-* of the system to which this bug/feature applies (add
the label below).


Steps To Reproduce:
(1) On the login screen, connect to proxy-auth network.
(2) Clicking "Add Person" will open a proxy authentication dialog
(3) Provide username and password and login. 

Expected Result:
After providing the correct credentials, the user should be able to connect and use the network.

Actual Result:
Proxy authentication dialog keeps popping up even after providing correct credentials.

How frequently does this problem reproduce? (Always, sometimes, hard to
reproduce?)
Always

What is the impact to the user, and is there a workaround? If so, what is
it?
Cannot use auth proxy network to login 

Please provide any additional information below. Attach a screen shot or
log if possible.
https://feedback.corp.google.com/product/208/neutron?lView=rd&lRSort=1&lROrder=2&lRFilter=1&lReportSearch=aashu&lReport=84764094268

 
Cc: -steve...@chromium.org r...@chromium.org steve...@chromium.orgm
Components: -OS>Systems>Network UI>Shell>StartScreen
Labels: -Pri-2 Pri-1
Owner: alemate@chromium.org
Status: Available (was: Unconfirmed)
Is guest login possible and does internet connectivity exist?

If so, this seems like a bug in the login logic.

Anything marked RBS should be P1 at least.

Status: Assigned (was: Available)
Yes, Internet connectivity exits and guest login is possible. 
It definitely sounds like this is a flaw in the signin flow then.

It's bug in proxy handling somewhere.
Basically, gstatic.com/generate_204/ uses authorization, but folowing safebrowsing.googleapis.com ignores proxy settings.

It sounds like this needs bisecting.
Cc: alemate@chromium.org
Owner: wzang@chromium.org
Labels: M-64

Comment 8 by wzang@chromium.org, Dec 15 2017

I tested multiple images ranging from M59 to M64, and the issue seems to have existed for a long time: after entering the credentials, either the popup is still shown, or the screen gets stuck showing 'Please wait' (in rare cases, I see the Gaia page eventually, after ~30s).

Are we sure that this is a recent regression? We believe this is a bug on proxy preference.
Are we sure that this is a recent regression? We believe this is a bug on proxy preference.
> We test this feature regularly (last being M63-10032.71.1) and it has been a recent regression (in M64). 

Comment 10 by wzang@chromium.org, Dec 16 2017

Owner: pmarko@chromium.org
Bisect shows:
73ab69012c4939e828806dde8e6fafb2acd00205 is the first bad commit

+pmarko@, PTAL.

https://chromium-review.googlesource.com/c/chromium/src/+/776814
Will analyze on Monday. The CL indeed changed which storagepartition is used in the sign in frame. This is relevant as this is the storagepartition we use to extract proxy auth details from.
I was careful not to change this logic but maybe something slipped through :-)

Do we have any tests exercising this? Or do you test it manually?
If manually, which proxy SW would you recommend for me to use to repro this?

Thanks!
Status: Started (was: Assigned)
Probable root cause: After auth details have been supplied, two things happen:
(1) reload gaia (signin_screen_handler.cc's reaction to NOTIFICATION_AUTH_SUPPLIED)
(2) after two seconds (this is actually timed), transfer the HTTP auth cache from the gaia webview context to the sign-in profile and the main request context (existing_user_controller.cc's reaction to NOTIFICATION_AUTH_SUPPLIED).

Due to my change mentioned in Comment #10, (1) rotates the StoragePartition of the gaia webview context, so (2) has no auth details to transfer.

I'll try to write a browsertest so this doesn't regress easily in the future and then see how I can fix this.
Cc: -steve...@chromium.orgm steve...@chromium.org
CL up:
https://chromium-review.googlesource.com/c/chromium/src/+/837920
Took a bit longer because I wanted a working browsertest so this doesn't regress in the future.
By the way: Enterprise enrollment behind an authenticated proxy is not possible at least since a few releases ago, see https://bugs.chromium.org/p/chromium/issues/detail?id=127019#c92 for details.

Quick update on this issue: CL is still in review, looks like we'll have to wait for Matt to return from vacation on Jan 2.
Project Member

Comment 16 by bugdroid1@chromium.org, Jan 3 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/14a0def082f8568c1423b9c14bee21070b86fb5a

commit 14a0def082f8568c1423b9c14bee21070b86fb5a
Author: Pavol Marko <pmarko@chromium.org>
Date: Wed Jan 03 20:07:54 2018

Properly propagate proxy auth details on sign-in screen

This CL fixes sign-in behind an authenticated proxy. Two actual changes
were necessary in this context:
- SigninPartitionManager: copy auth data from the system request
  context into new StoragePartitions
  This makes SigninPartitionManager::StartSigninSession async, which
  made small changes necessary in GaiaScreenHandler and
  EnrollmentScreenHandler
- SigninScreenHandler: Don't reload gaia immediately when auth details
  have been supplied. This was unnecessary (the URL Request will
  continue) and actually harmful, as now that we're using a new
  StoragePartition for each sign-in attempt, this discards auth data
  before we can copy them.

To support the browsertest, testserver.py gets an argument to redirect
CONNECT requests to localhost when proxying (in sign-in browsertests
without proxy, we use RuleBasedHostResolverProc::AddRule to achieve
this effect).

Bug:  793524 
Test: browser_tests --gtest_filter=WebviewProxyAuthLoginTest.* &&
      unit_tests --gtest_filter=SigninPartitionManagerTest*
  Manual test:
   Setup:
     Setup an proxy server with Basic authentication
     Configure the device to use the proxy server.
     Make sure the user adding screen is shown.
   Test 1:
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.
   Test 2:
     Expect proxy auth dialog. Enter incorrect proxy auth data.
     Expect that proxy-auth dialog is shown again.
   Test 3:
     Expect proxy auth dialog. Press Cancel.
     Expect that a network error dialog is shown.
     Press "try to sign in again".
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.

Change-Id: I78b5988b5ca4c6eaaf4e6f9443e299499d6f0f08
Reviewed-on: https://chromium-review.googlesource.com/837920
Reviewed-by: Matt Menke <mmenke@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Pavol Marko <pmarko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526779}
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/chromeos/login/signin_partition_manager.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/chromeos/login/signin_partition_manager.h
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/chromeos/login/signin_partition_manager_unittest.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/chromeos/login/webview_login_browsertest.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/net/test/spawned_test_server/base_test_server.cc
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/net/test/spawned_test_server/base_test_server.h
[modify] https://crrev.com/14a0def082f8568c1423b9c14bee21070b86fb5a/net/tools/testserver/testserver.py

This broke WebviewProxyAuthLoginTest.ProxyAuthTransfer in 4 out of 5 cases on Linux ChromiumOS MSan Tests and was flaky for this test on linux-chromeos-dbg.

I found this assertion violation:
../../chrome/browser/ui/login/login_handler_test_utils.cc:49: Failure
Value of: i != handlers_.end()
  Actual: false
Expected: true

in the log output of the linux-chromeos-dbg bot which might point to a race condition.
https://chromium-swarm.appspot.com/task?id=3ad8c634bed0d610&refresh=10&show_raw=1

The test is greed on the non-dbg bot.
Project Member

Comment 18 by bugdroid1@chromium.org, Jan 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a

commit 4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a
Author: Dominic Battré <battre@chromium.org>
Date: Thu Jan 04 08:12:18 2018

Revert "Properly propagate proxy auth details on sign-in screen"

This reverts commit 14a0def082f8568c1423b9c14bee21070b86fb5a.

Reason for revert: Introduced flakiness in tests, see bug for details.

Original change's description:
> Properly propagate proxy auth details on sign-in screen
> 
> This CL fixes sign-in behind an authenticated proxy. Two actual changes
> were necessary in this context:
> - SigninPartitionManager: copy auth data from the system request
>   context into new StoragePartitions
>   This makes SigninPartitionManager::StartSigninSession async, which
>   made small changes necessary in GaiaScreenHandler and
>   EnrollmentScreenHandler
> - SigninScreenHandler: Don't reload gaia immediately when auth details
>   have been supplied. This was unnecessary (the URL Request will
>   continue) and actually harmful, as now that we're using a new
>   StoragePartition for each sign-in attempt, this discards auth data
>   before we can copy them.
> 
> To support the browsertest, testserver.py gets an argument to redirect
> CONNECT requests to localhost when proxying (in sign-in browsertests
> without proxy, we use RuleBasedHostResolverProc::AddRule to achieve
> this effect).
> 
> Bug:  793524 
> Test: browser_tests --gtest_filter=WebviewProxyAuthLoginTest.* &&
>       unit_tests --gtest_filter=SigninPartitionManagerTest*
>   Manual test:
>    Setup:
>      Setup an proxy server with Basic authentication
>      Configure the device to use the proxy server.
>      Make sure the user adding screen is shown.
>    Test 1:
>      Expect proxy auth dialog. Enter correct proxy auth data.
>      Expect that sign-in screen is shown and sign-in works.
>    Test 2:
>      Expect proxy auth dialog. Enter incorrect proxy auth data.
>      Expect that proxy-auth dialog is shown again.
>    Test 3:
>      Expect proxy auth dialog. Press Cancel.
>      Expect that a network error dialog is shown.
>      Press "try to sign in again".
>      Expect proxy auth dialog. Enter correct proxy auth data.
>      Expect that sign-in screen is shown and sign-in works.
> 
> Change-Id: I78b5988b5ca4c6eaaf4e6f9443e299499d6f0f08
> Reviewed-on: https://chromium-review.googlesource.com/837920
> Reviewed-by: Matt Menke <mmenke@chromium.org>
> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
> Commit-Queue: Pavol Marko <pmarko@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#526779}

TBR=xiyuan@chromium.org,davidben@chromium.org,mmenke@chromium.org,pmarko@chromium.org

Change-Id: Id979177c1b59af3903ee09b092c38b6b0c215f43
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  793524 
Reviewed-on: https://chromium-review.googlesource.com/848815
Reviewed-by: Dominic Battré <battre@chromium.org>
Commit-Queue: Dominic Battré <battre@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526939}
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/chromeos/login/signin_partition_manager.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/chromeos/login/signin_partition_manager.h
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/chromeos/login/signin_partition_manager_unittest.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/chromeos/login/webview_login_browsertest.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/net/test/spawned_test_server/base_test_server.cc
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/net/test/spawned_test_server/base_test_server.h
[modify] https://crrev.com/4bc05f9327ab9b994ab4431d33f5d8661dbb8c9a/net/tools/testserver/testserver.py

Sorry for the flakiness and thanks for the report, investigating why this happens.
I think this was a race between the Login Prompt being shown and registering the observer waiting for the login prompt. I've uploaded a new CL (https://chromium-review.googlesource.com/c/chromium/src/+/850472) which registers the observer for NOTIFICATION_AUTH_NEEDED before any test code runs.

This has been made more difficult by the fact that two NOTIFICATION_AUTH_NEEDED seem to be fired from two webviews. For now I'm filtering on the webview displaying gaia in the browsertest, I've filed bug 799026 for myself to investigate further.
Think the flaky failure is because we instantiate LoginPromptBrowserTestObserver after WaitForSigninScreen() call. WaitForSigninScreen() triggers gaia load asynchrounously and could trigger the login prompt before LoginPromptBrowserTestObserver is created. Hence triggers the assert later on because LoginPromptBrowserTestObserver does not know about the LoginHandler.

The reland CL should work because it no longer uses LoginPromptBrowserTestObserver and starts to observe NOTIFICATION_AUTH_NEEDED before WaitForSigninScreen() call.
Project Member

Comment 22 by bugdroid1@chromium.org, Jan 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/569a169adf806513bc290572393ad4f845e119f8

commit 569a169adf806513bc290572393ad4f845e119f8
Author: Pavol Marko <pmarko@chromium.org>
Date: Thu Jan 04 21:45:09 2018

Properly propagate proxy auth details on sign-in screen (v2)

(Reland with WebviewProxyAuthLoginTest browsertext fix)
This CL fixes sign-in behind an authenticated proxy. Two actual changes
were necessary in this context:
- SigninPartitionManager: copy auth data from the system request
  context into new StoragePartitions
  This makes SigninPartitionManager::StartSigninSession async, which
  made small changes necessary in GaiaScreenHandler and
  EnrollmentScreenHandler
- SigninScreenHandler: Don't reload gaia immediately when auth details
  have been supplied. This was unnecessary (the URL Request will
  continue) and actually harmful, as now that we're using a new
  StoragePartition for each sign-in attempt, this discards auth data
  before we can copy them.

To support the browsertest, testserver.py gets an argument to redirect
CONNECT requests to localhost when proxying (in sign-in browsertests
without proxy, we use RuleBasedHostResolverProc::AddRule to achieve
this effect).

      unit_tests --gtest_filter=SigninPartitionManagerTest*
  Manual test:
   Setup:
     Setup an proxy server with Basic authentication
     Configure the device to use the proxy server.
     Make sure the user adding screen is shown.
   Test 1:
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.
   Test 2:
     Expect proxy auth dialog. Enter incorrect proxy auth data.
     Expect that proxy-auth dialog is shown again.
   Test 3:
     Expect proxy auth dialog. Press Cancel.
     Expect that a network error dialog is shown.
     Press "try to sign in again".
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.

Bug:  793524 
Test: browser_tests --gtest_filter=WebviewProxyAuthLoginTest.* &&
Change-Id: I56dafa240ad3bb5902517688a5cb17e309f2982d
Reviewed-on: https://chromium-review.googlesource.com/850472
Reviewed-by: Matt Menke <mmenke@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Pavol Marko <pmarko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#527103}
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/chromeos/login/signin_partition_manager.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/chromeos/login/signin_partition_manager.h
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/chromeos/login/signin_partition_manager_unittest.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/chromeos/login/webview_login_browsertest.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/net/test/spawned_test_server/base_test_server.cc
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/net/test/spawned_test_server/base_test_server.h
[modify] https://crrev.com/569a169adf806513bc290572393ad4f845e119f8/net/tools/testserver/testserver.py

FYI: Just checked, there's no build with the above fix yet. As soon as there is one, I'll comment and then mark as merge request.
Labels: Merge-Request-64
The fix landed in 65.0.3312.0.
@aashutoshk - could you please verify it works there?

Project Member

Comment 25 by sheriffbot@chromium.org, Jan 10 2018

Labels: -Merge-Request-64 Hotlist-Merge-Review Merge-Review-64
This bug requires manual review: We are only 12 days from stable.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Cc: kbleicher@chromium.org
+kbleicher for merge request in Comment #24. Thanks!
Cc: abdulsyed@chromium.org
+abdulsyed for merge request in Comment #24 too :)
This is a fairly large change late in the M64 cycle (going to stable next week).  What's the risk of not merging and waiting on 65?

Has it been verified in M65?  Looks like that's still open per #24.
Yes, this is still pending verification.

Without this fix, it is currently not possible to add a user on the Chrome OS sign-in screen if a proxy server is in use which requires username/password authentication.
Okay, I'll await verification.  Thanks
Status: Fixed (was: Started)
Friendly ping -- aashutoshk, would you please re-verify?

Setting this issue to Fixed to make sure it's not omitted in some lists although it's currently only fixed on M-65+.
Owner: dchan@chromium.org
+Danny to help finding someone to verify in M65
Cc: aashuto...@chromium.org
Owner: aashuto...@chromium.org
+Aashtosh for verification.
Cc: -abdulsyed@chromium.org
Works as expected on Candy M65-10313.0.0 build. 
I have a merge CL on https://chromium-review.googlesource.com/c/chromium/src/+/869930 which I will land when this gets merge approval.
Labels: -Merge-Review-64 Merge-Approved-64
Project Member

Comment 38 by bugdroid1@chromium.org, Jan 18 2018

Labels: -merge-approved-64 merge-merged-3282
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d04ab30d99912e655c7ab19655cc9c922ab8d2bb

commit d04ab30d99912e655c7ab19655cc9c922ab8d2bb
Author: Pavol Marko <pmarko@chromium.org>
Date: Thu Jan 18 16:54:23 2018

[M64] Properly propagate proxy auth details on sign-in screen (v2)

(Reland with WebviewProxyAuthLoginTest browsertext fix)
This CL fixes sign-in behind an authenticated proxy. Two actual changes
were necessary in this context:
- SigninPartitionManager: copy auth data from the system request
  context into new StoragePartitions
  This makes SigninPartitionManager::StartSigninSession async, which
  made small changes necessary in GaiaScreenHandler and
  EnrollmentScreenHandler
- SigninScreenHandler: Don't reload gaia immediately when auth details
  have been supplied. This was unnecessary (the URL Request will
  continue) and actually harmful, as now that we're using a new
  StoragePartition for each sign-in attempt, this discards auth data
  before we can copy them.

To support the browsertest, testserver.py gets an argument to redirect
CONNECT requests to localhost when proxying (in sign-in browsertests
without proxy, we use RuleBasedHostResolverProc::AddRule to achieve
this effect).

Bug:  793524 
Test: browser_tests --gtest_filter=WebviewProxyAuthLoginTest.* &&
      unit_tests --gtest_filter=SigninPartitionManagerTest*
  Manual test:
   Setup:
     Setup an proxy server with Basic authentication
     Configure the device to use the proxy server.
     Make sure the user adding screen is shown.
   Test 1:
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.
   Test 2:
     Expect proxy auth dialog. Enter incorrect proxy auth data.
     Expect that proxy-auth dialog is shown again.
   Test 3:
     Expect proxy auth dialog. Press Cancel.
     Expect that a network error dialog is shown.
     Press "try to sign in again".
     Expect proxy auth dialog. Enter correct proxy auth data.
     Expect that sign-in screen is shown and sign-in works.

TBR=pmarko@chromium.org

(cherry picked from commit 569a169adf806513bc290572393ad4f845e119f8)

Change-Id: I56dafa240ad3bb5902517688a5cb17e309f2982d
Reviewed-on: https://chromium-review.googlesource.com/850472
Reviewed-by: Matt Menke <mmenke@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Pavol Marko <pmarko@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#527103}
Reviewed-on: https://chromium-review.googlesource.com/869930
Reviewed-by: Pavol Marko <pmarko@chromium.org>
Cr-Commit-Position: refs/branch-heads/3282@{#537}
Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840}
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/chromeos/login/existing_user_controller.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/chromeos/login/signin_partition_manager.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/chromeos/login/signin_partition_manager.h
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/chromeos/login/signin_partition_manager_unittest.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/chromeos/login/webview_login_browsertest.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/net/test/spawned_test_server/base_test_server.cc
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/net/test/spawned_test_server/base_test_server.h
[modify] https://crrev.com/d04ab30d99912e655c7ab19655cc9c922ab8d2bb/net/tools/testserver/testserver.py

Cc: pmarko@chromium.org

Sign in to add a comment