public void CreateLaunchSdkWarningSetting(ShowOption sdkShowOption, string[] versionsToHide, bool showSdkWarning) { SetupSdkCompatibility(GameletSdkCompatibilityResult.NotCompatibleOutsideOfRange); var launchRequest = new LaunchGameRequest(); SetupParamsParser(launchRequest, ConfigStatus.OkStatus()); var launchGameResponse = new LaunchGameResponse { GameLaunchName = _gameLaunchName, RequestId = launchRequest.RequestId }; SetupGameLaunchApi(launchRequest, launchGameResponse); _yetiVsiService.Options.SdkCompatibilityWarningOption.Returns(sdkShowOption); _yetiVsiService.Options .SdkVersionsAreHidden(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <string>()) .Returns(false); foreach (string versions in versionsToHide) { string gameletVersion = versions.Split('/')[0]; string localVersion = versions.Split('/')[1]; _yetiVsiService.Options .SdkVersionsAreHidden(gameletVersion, localVersion, _gameletName).Returns(true); } IVsiGameLaunch result = _target.CreateLaunch(_launchParams); Assert.That(result, Is.Not.Null); _dialogUtil.DidNotReceiveWithAnyArgs().ShowError(default);
public void Setup() { _sdkConfigFactory = Substitute.For <ISdkConfigFactory>(); _sdkConfigFactory.LoadGgpSdkConfigOrDefault().Returns(_sdkConfig); _queryParametersParser = Substitute.For <IQueryParametersParser>(); IDictionary <string, string> dict = new Dictionary <string, string>(); _queryParametersParser .GetFinalQueryString(dict, out string _) .Returns(x => { x[1] = string.Empty; return(ConfigStatus.OkStatus()); }); _queryParametersParser .ParametersToDictionary(Arg.Any <string>(), out IDictionary <string, string> _) .Returns(x => { x[1] = dict; return(ConfigStatus.OkStatus()); }); _queryParametersParser.ParseToLaunchRequest(dict, Arg.Any <LaunchGameRequest>()) .Returns(ConfigStatus.OkStatus()); _queryParametersParser .ParseToParameters(dict, Arg.Any <LaunchParams>()) .Returns(ConfigStatus.OkStatus()); _target = new LaunchGameParamsConverter(_sdkConfigFactory, _queryParametersParser); }
public void CreateOkStatusTest() { ConfigStatus status = ConfigStatus.OkStatus(); Assert.That(status.IsOk, Is.EqualTo(true)); Assert.That(status.IsWarningLevel, Is.EqualTo(false)); Assert.That(status.IsErrorLevel, Is.EqualTo(false)); Assert.That(status.AllMessages, Is.Empty); Assert.That(status.ErrorMessages, Is.Empty); Assert.That(status.WarningMessages, Is.Empty); Assert.That(status.WarningMessage, Is.Empty); Assert.That(status.SeverityLevel, Is.EqualTo(ConfigStatus.ErrorLevel.Ok)); Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null); Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning), Is.Empty); Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error), Is.Empty); }
ConfigStatus TryParseQueryString(string queryString, out IEnumerable <QueryParam> outParams) { if (string.IsNullOrEmpty(queryString)) { outParams = Enumerable.Empty <QueryParam>(); return(ConfigStatus.OkStatus()); } try { NameValueCollection nameValueCollection; try { // May throw an exception when maximum number of keys is exceeded. nameValueCollection = HttpUtility.ParseQueryString(queryString); } catch (Exception e) { throw new ApplicationException(e.Message); } var queryParams = new List <QueryParam>(); foreach (string key in nameValueCollection.AllKeys) { if (string.IsNullOrWhiteSpace(key)) { throw new ApplicationException("Parameter 'Key' can not be empty."); } queryParams.Add( new QueryParam() { Name = key, Value = nameValueCollection.Get(key) }); } LogQueryString(queryString, queryParams); outParams = queryParams; return(ConfigStatus.OkStatus()); } catch (ApplicationException e) { Trace.TraceWarning($"Error happened while parsing query string. {e.Message}"); outParams = null; return(ConfigStatus.WarningStatus(ErrorStrings.QueryParametersWrongFormat)); } }
ConfigStatus StatusBySeverityLevel(ConfigStatus.ErrorLevel level, string message) { switch (level) { case ConfigStatus.ErrorLevel.Ok: return(ConfigStatus.OkStatus()); case ConfigStatus.ErrorLevel.Warning: return(ConfigStatus.WarningStatus(message)); case ConfigStatus.ErrorLevel.Error: return(ConfigStatus.ErrorStatus(message)); default: throw new ArgumentOutOfRangeException(nameof(level), level, "Unsupported error level value received."); } }