czeildi / czeildi/ropsec

Add alternative of gatekeeper test on Windows

Open
#49 2 comments 0 reactions 0 assignees View on GitHub
system checks :heavy_check_mark:
Dominant language
Shell
Stars
25
Forks
4
PR merge metrics
No merged PRs in 30d

Description

Thank you for your [ROpenSci community call presentation](https://ropensci.org/commcalls/2019-05-07/) recently :-)

**Is your feature request related to a problem? Please describe.**
I ran `ropsec::summarize_system_checks()` on Windows 8 and got

```
macos-simple-test.R:45: error: gatekeeer is on
'spctl' not found
1: system("spctl --status", intern = TRUE) at C:/.../R/win-library/3.6/ropsec/tests/simple/macos-simple-test.R:45
```

which is no surprise. [Same `sessionInfo()` as in `defender/#20`](https://github.com/ropenscilabs/defender/issues/20).

**Describe the solution you'd like**

This test should be skipped on Windows systems.

**Describe alternatives you've considered**

1. wrap [macos-simple-test.R](https://github.com/ropenscilabs/ropsec/blob/master/inst/tests/simple/macos-simple-test.R) in [`os_type` or a new `is_macos`](https://github.com/ropenscilabs/ropsec/blob/e21902f07563f10d856335518474e7e1da0415a5/R/utils.R#L13-L19)
2. add tests for [whatever is Windows Gatekeeper-equivalent](https://www.theregister.co.uk/2017/02/28/microsoft_restricts_windows_software/)

**Additional context**

Contributor guide

Open the contributing guide

Research direction

Start with inst/tests/simple/macos-simple-test.R and the os_type or is_macos helpers discussed in R/utils.R. Run ropsec::summarize_system_checks() on a Windows environment to reproduce the failure, then verify that the macOS Gatekeeper test is skipped there while remaining runnable on macOS.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
security, testing
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.