Merge pull request #3211 from matrix-org/travis/send-proper-uia

Send the correct UIA alongside the wrong UIA for backwards comaptibility
This commit is contained in:
Travis Ralston 2019-07-12 08:14:01 -06:00 committed by GitHub
commit ff0c4c0571
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 2 deletions

View file

@ -91,7 +91,13 @@ export const PasswordAuthEntry = React.createClass({
this.props.submitAuthDict({ this.props.submitAuthDict({
type: PasswordAuthEntry.LOGIN_TYPE, type: PasswordAuthEntry.LOGIN_TYPE,
// TODO: Remove `user` once servers support proper UIA
// See https://github.com/vector-im/riot-web/issues/10312
user: this.props.matrixClient.credentials.userId, user: this.props.matrixClient.credentials.userId,
identifier: {
type: "m.id.user",
user: this.props.matrixClient.credentials.userId,
},
password: this.state.password, password: this.state.password,
}); });
}, },
@ -463,11 +469,18 @@ export const MsisdnAuthEntry = React.createClass({
); );
this.props.submitAuthDict({ this.props.submitAuthDict({
type: MsisdnAuthEntry.LOGIN_TYPE, type: MsisdnAuthEntry.LOGIN_TYPE,
// TODO: Remove `threepid_creds` once servers support proper UIA
// See https://github.com/vector-im/riot-web/issues/10312
threepid_creds: { threepid_creds: {
sid: this._sid, sid: this._sid,
client_secret: this.props.clientSecret, client_secret: this.props.clientSecret,
id_server: idServerParsedUrl.host, id_server: idServerParsedUrl.host,
}, },
threepidCreds: {
sid: this._sid,
client_secret: this.props.clientSecret,
id_server: idServerParsedUrl.host,
},
}); });
} else { } else {
this.setState({ this.setState({

View file

@ -63,7 +63,13 @@ export default class DeactivateAccountDialog extends React.Component {
// for this endpoint. In reality it could be any UI auth. // for this endpoint. In reality it could be any UI auth.
const auth = { const auth = {
type: 'm.login.password', type: 'm.login.password',
// TODO: Remove `user` once servers support proper UIA
// See https://github.com/vector-im/riot-web/issues/10312
user: MatrixClientPeg.get().credentials.userId, user: MatrixClientPeg.get().credentials.userId,
identifier: {
type: "m.id.user",
user: MatrixClientPeg.get().credentials.userId,
},
password: this.state.password, password: this.state.password,
}; };
await MatrixClientPeg.get().deactivateAccount(auth, this.state.shouldErase); await MatrixClientPeg.get().deactivateAccount(auth, this.state.shouldErase);

View file

@ -97,11 +97,14 @@ describe('InteractiveAuthDialog', function() {
ReactTestUtils.Simulate.submit(formNode, {}); ReactTestUtils.Simulate.submit(formNode, {});
expect(doRequest.callCount).toEqual(1); expect(doRequest.callCount).toEqual(1);
expect(doRequest.calledWithExactly({ expect(doRequest.calledWithMatch({
session: "sess", session: "sess",
type: "m.login.password", type: "m.login.password",
password: "s3kr3t", password: "s3kr3t",
user: "@user:id", identifier: {
type: "m.id.user",
user: "@user:id",
},
})).toBe(true); })).toBe(true);
// let the request complete // let the request complete
return Promise.delay(1); return Promise.delay(1);