Skip to content

Commit a54907d

Browse files
committed
Use new miri test functionality from the frontend
1 parent 5a65712 commit a54907d

File tree

5 files changed

+12
-4
lines changed

5 files changed

+12
-4
lines changed

ui/frontend/ToolsMenu.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ const ToolsMenu: React.FC<ToolsMenuProps> = props => {
2626
const nightlyVersion = useAppSelector(selectors.nightlyVersionText);
2727
const nightlyVersionDetails = useAppSelector(selectors.nightlyVersionDetailsText);
2828

29+
const miriRunningTests = useAppSelector(selectors.runAsTest);
30+
const miriText = miriRunningTests ? "these tests" : "this program";
31+
2932
const dispatch = useAppDispatch();
3033
const clippy = useCallback(() => {
3134
dispatch(performClippy());
@@ -62,7 +65,7 @@ const ToolsMenu: React.FC<ToolsMenuProps> = props => {
6265
name="Miri"
6366
onClick={miri}>
6467
<div>
65-
Execute this program in the Miri interpreter to detect certain
68+
Execute {miriText} in the Miri interpreter to detect certain
6669
cases of undefined behavior (like out-of-bounds memory access).
6770
</div>
6871
<MenuAside>{miriVersion} ({miriVersionDetails})</MenuAside>

ui/frontend/reducers/output/miri.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ interface State {
2222
interface MiriRequestBody {
2323
code: string;
2424
edition: string;
25+
tests: boolean;
2526
aliasingModel: AliasingModel;
2627
}
2728

ui/frontend/selectors/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -397,9 +397,10 @@ export const formatRequestSelector = createSelector(
397397

398398
export const miriRequestSelector = createSelector(
399399
editionSelector,
400-
codeSelector,
400+
runAsTest,
401401
aliasingModelSelector,
402-
(edition, code, aliasingModel) => ({ edition, code, aliasingModel }),
402+
codeSelector,
403+
(edition, tests, aliasingModel, code, ) => ({ edition, tests, aliasingModel, code }),
403404
);
404405

405406
export const macroExpansionRequestSelector = createSelector(

ui/src/public_http_api.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,8 @@ pub(crate) struct MiriRequest {
103103
pub(crate) code: String,
104104
#[serde(default)]
105105
pub(crate) edition: String,
106+
#[serde(default)]
107+
pub(crate) tests: bool,
106108
#[serde(default, rename = "aliasingModel")]
107109
pub(crate) aliasing_model: Option<String>,
108110
}

ui/src/server_axum.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1288,6 +1288,7 @@ pub(crate) mod api_orchestrator_integration_impls {
12881288
let api::MiriRequest {
12891289
code,
12901290
edition,
1291+
tests,
12911292
aliasing_model,
12921293
} = other;
12931294

@@ -1300,7 +1301,7 @@ pub(crate) mod api_orchestrator_integration_impls {
13001301
channel: Channel::Nightly, // TODO: use what user has submitted
13011302
crate_type: CrateType::Binary, // TODO: use what user has submitted
13021303
edition: parse_edition(&edition)?,
1303-
tests: false,
1304+
tests,
13041305
aliasing_model,
13051306
code,
13061307
})

0 commit comments

Comments
 (0)