Skip to content

Commit

Permalink
Merge pull request #763 from majakomel/682/fix-tor-measurements
Browse files Browse the repository at this point in the history
Fix tor measurements table
  • Loading branch information
hellais authored Jun 29, 2022
2 parents 58d193d + c46d691 commit 52cef81
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 67 deletions.
110 changes: 45 additions & 65 deletions components/measurement/nettests/Tor.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ const TableStyles = styled.div`
table {
border-spacing: 0;
border: 1px solid black;
table-layout: fixed;
word-break: break-all;
width: 100%;
tr {
:last-child {
Expand Down Expand Up @@ -194,40 +196,20 @@ const TorDetails = ({
accessor: 'type'
},
{
Header: <FormattedMessage id='Measurement.Details.Tor.Table.Header.Connect' />,
accessor: 'connect',
Header: <FormattedMessage id='Measurement.Details.Tor.Table.Header.Accessible' />,
accessor: 'failure',
collapse: true,
Cell: ConnectionStatusCell
},
{
Header: <FormattedMessage id='Measurement.Details.Tor.Table.Header.Handshake' />,
accessor: 'handshake',
collapse: true,
Cell: ConnectionStatusCell
}
], [])

const data = useMemo(() => (
Object.keys(targets).map(target => {
// Connection Status values
// false: Didn't run (N/A)
// null: No failure a.k.a success
// string: Failure with error string
let connectStatus = false, handshakeStatus = false
if (targets[target].summary.connect) {
connectStatus = targets[target].summary.connect.failure
}

if (targets[target].summary.handshake) {
handshakeStatus = targets[target].summary.handshake.failure
}

return {
name: targets[target].target_name || target,
address: targets[target].target_address,
type: targets[target].target_protocol,
connect: connectStatus,
handshake: handshakeStatus
failure: targets[target].failure,
}
})
), [targets])
Expand All @@ -251,48 +233,46 @@ const TorDetails = ({
},
details: (
<React.Fragment>
<Container>
<Flex my={4}>
<AccessPointStatus
width={1/2}
label={<FormattedMessage id='Measurement.Details.Tor.Bridges.Label.Title' />}
content={
<FormattedMessage
id='Measurement.Details.Tor.Bridges.Label.OK'
defaultMessage='{bridgesAccessible}/{bridgesTotal} OK'
values={{
bridgesAccessible: obfs4_accessible,
bridgesTotal: obfs4_total
}}
/>
}
ok={true}
color='blue5'
/>
<AccessPointStatus
width={1/2}
label={<FormattedMessage id='Measurement.Details.Tor.DirAuth.Label.Title' />}
content={
<FormattedMessage
id='Measurement.Details.Tor.DirAuth.Label.OK'
defaultMessage='{dirAuthAccessible}/{dirAuthTotal} OK'
values={{
dirAuthAccessible: or_port_dirauth_accessible,
dirAuthTotal: or_port_dirauth_total
}}
/>
}
ok={true}
color='blue5'
/>
</Flex>
<TableStyles>
<Table
columns={columns}
data={data}
/>
</TableStyles>
</Container>
<Flex my={4}>
<AccessPointStatus
width={1/2}
label={<FormattedMessage id='Measurement.Details.Tor.Bridges.Label.Title' />}
content={
<FormattedMessage
id='Measurement.Details.Tor.Bridges.Label.OK'
defaultMessage='{bridgesAccessible}/{bridgesTotal} OK'
values={{
bridgesAccessible: obfs4_accessible,
bridgesTotal: obfs4_total
}}
/>
}
ok={true}
color='blue5'
/>
<AccessPointStatus
width={1/2}
label={<FormattedMessage id='Measurement.Details.Tor.DirAuth.Label.Title' />}
content={
<FormattedMessage
id='Measurement.Details.Tor.DirAuth.Label.OK'
defaultMessage='{dirAuthAccessible}/{dirAuthTotal} OK'
values={{
dirAuthAccessible: or_port_dirauth_accessible,
dirAuthTotal: or_port_dirauth_total
}}
/>
}
ok={true}
color='blue5'
/>
</Flex>
<TableStyles>
<Table
columns={columns}
data={data}
/>
</TableStyles>
</React.Fragment>
)
})}
Expand Down
3 changes: 1 addition & 2 deletions public/static/lang/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -195,8 +195,7 @@
"Measurement.Details.Tor.Table.Header.Name": "Name",
"Measurement.Details.Tor.Table.Header.Address": "Address",
"Measurement.Details.Tor.Table.Header.Type": "Type",
"Measurement.Details.Tor.Table.Header.Connect": "Connect",
"Measurement.Details.Tor.Table.Header.Handshake": "Handshake",
"Measurement.Details.Tor.Table.Header.Accessible": "Accessible",
"Measurement.Status.Hint.TorSnowflake.Reachable": "Tor snowflake works",
"Measurement.Status.Hint.TorSnowflake.Blocked": "Tor snowflake does not work",
"Measurement.Status.Hint.TorSnowflake.Error": "Tor snowflake test failed",
Expand Down

1 comment on commit 52cef81

@vercel
Copy link

@vercel vercel bot commented on 52cef81 Jun 29, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

explorer – ./

explorer-ooni1.vercel.app
explorer-git-master-ooni1.vercel.app
explorer-one.vercel.app

Please sign in to comment.