在这里,我尝试检查视图控制器的单元测试用例。- 我有一个带有按钮和标签的视图控制器。- 当您单击按钮时,它将调用另一个方法。它将数据提供给按钮操作标签文本更改。
- 我想检查该按钮是否触发了该方法?无需添加函数的任何布尔值或返回类型。
这是我的代码。
class ViewController: UIViewController {
@IBOutlet weak var buttonFetch: UIButton?
@IBOutlet weak var nameLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func fetchUser() {
self.nameLabel.text = self.getUser()
}
func getUser() ->String {
return User.data()
}
}
struct User {
static func data()->String{
return "Apple"
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的测试用例
func testFetchUserAction() {
controller.buttonFetch?.sendActions(for: .touchDown)
// I want to test the method getUser from viewcontroller gets called or not
// some thing like this XCTAssert(self.controller.getUser(),"not called")
XCTAssertEqual(self.controller.nameLabel.text!, …Run Code Online (Sandbox Code Playgroud) 我对 swift 中的 NSRegularExpression 有点困惑,有人可以帮助我吗?
任务:1给出("name","john","name of john")
那么我应该得到["name","john","name of john"]. 在这里我应该避免使用括号。
任务:2给出("name"," john","name of john")
那么我应该得到["name","john","name of john"]. 在这里我应该避免括号和额外的空格,最后得到字符串数组。
任务:3给出key = value // comment
那么我应该得到["key","value","comment"]. 在这里,我应该通过避免只获取行中的字符串,=并且//
我已经尝试了下面的任务 1 代码但没有通过。
let string = "(name,john,string for user name)"
let pattern = "(?:\\w.*)"
do {
let regex = try NSRegularExpression(pattern: pattern, options: .caseInsensitive)
let matches = regex.matches(in: string, options: [], range: NSRange(location: 0, length: string.utf16.count))
for match …Run Code Online (Sandbox Code Playgroud) 我想了解swift-4中的承诺.如何使用多个then语句并完成,捕获块.
在这里,我试图从承诺中获得价值.但是我收到了错误.有人可以帮我理解承诺吗?
这是我的代码.
import UIKit
import PromiseKit
struct User {
var firstname : String?
var lastname : String?
}
struct APIError {
var message : String?
}
class ViewController : UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let userPromise : Promise = self.getUserDetails()
userPromise.then { user -> Void in
//print(user.f)
}
}
func getUserDetails()->Promise<User> {
return Promise<User> { resolve in
let user = User(firstname: "Scot", lastname: "dem")
if ((user.firstname?.count) != nil) {
resolve.fulfill(user)
} else {
let error = APIError(message: …Run Code Online (Sandbox Code Playgroud) 我想在 iOS 中创建一个类似 android 的菜单。我正在使用布局约束来设置约束。当我尝试在单击按钮时更新图像的左侧约束时遇到了这个问题(它应该动画到单击按钮的位置)。谁能帮我?它应该支持横向和纵向。
我不想使用第三方代码,也不想使用NSLayoutconstraint.
这是我的代码。
class MenuViewController: UIViewController {
var buttons: [UIButton] = []
var imageView : UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
addMenuItems()
}
func addMenuItems() {
for _ in 0...4 {
let button : UIButton = UIButton()
self.view.addSubview(button)
button.backgroundColor = UIColor.darkGray
button.addTarget(self, action: #selector(didSelectedButton(_:)), for: .touchUpInside)
self.buttons.append(button)
}
for (index, button) in buttons.enumerated() {
button.setTitle(" \(index)", for: .normal)
if index …Run Code Online (Sandbox Code Playgroud) ios ×4
swift ×4
jenkins ×1
jenkins-cli ×1
promisekit ×1
regex ×1
regex-greedy ×1
regex-group ×1
swift4 ×1
xcode ×1
xctest ×1
xctestcase ×1