我正在使用turbolinks-ios和Rails变体开发iOS应用程序.
在我的iOS应用程序,我设置自定义用户代理iPadApp和检测on Rails的application controller使用request.user_agent.try(:index, 'iPadApp')设置variant到tablet(因为观点一样foo.html+tablet.haml).
我的应用程序工作正常,现在我正在尝试为我的应用程序编写功能测试,但无法正确设置用户代理.我试过这篇帖子实际上是stackoverflow但是我发现它没有设置request.user_agent而是用(page.driver.browser.header(key, value))设置查询参数request.params.
在我的控制器测试中,我只是request.user_agent = 'iPadApp'用来设置工作正常的用户代理.
如何配置测试请求以便我可以使用request.user_agent.try(:index, 'iPadApp')?
谢谢你的帮助.
所以我有 FBViewController 类,它应该显示一个按钮让我登录和注销(只是为了测试 FB 登录)。我将它集成到新创建的项目中并且一切正常。然后我将它重新设计到我的应用程序中,但它不起作用。不确定它是否与 swift 版本或其他...使用 Xcode 10.0
import UIKit
import FBSDKLoginKit
class FBViewController: UIViewController, FBSDKLoginButtonDelegate {
override func viewDidLoad() {
super.viewDidLoad()
let btnFBLogin = FBSDKLoginButton()
btnFBLogin.readPermissions = ["public_profile", "email"]
btnFBLogin.delegate = self
btnFBLogin.center = self.view.center
self.view.addSubview(btnFBLogin)
if FBSDKAccessToken.current() != nil{
print("Logged IN ALREADY")
printInfo()
}else{
print("not logged in")
}
}
func loginButton(_ loginButton: FBSDKLoginButton!, didCompleteWith result: FBSDKLoginManagerLoginResult!, error: Error!) {
if error != nil{
print(" error")
// print(error.localizedDescription)
}else if result.isCancelled {
print("User cancelled.")
}
else {
print("Logge …Run Code Online (Sandbox Code Playgroud)