Stubbilino 0.1.1

Stubbilino 0.1.1

测试测试
语言语言 Objective-CObjective C
许可证 MIT
发布最后发布2014年12月

Robert Böhnke 维护。



  • Robert Böhnke

Objective-C 简单存根化

NSObject<SBStub> *stub = [Stubbilino stubObject:[[NSObject alloc] init]];

[stub stubMethod:@selector(description)
       withBlock:^{ return @"Stubbilino is awesome!"; }];

expect(stub.description).to.equal(@"Stubbilino is awesome!");

入门

Stubbilino 允许您对对象上的方法进行选择性存根化,如果不提供存根,将使用默认实现。

UITableViewController *viewcontroller = [[UITableViewController alloc] init];
UITableViewCell *myCell = [[UITableViewCell alloc] init];

UITableViewController<SBStub> *stub = (id)[Stubbilino stubObject:viewcontroller];

[stub stubMethod:@selector(numberOfSectionsInTableView:)
       withBlock:^{ return 1; }];

[stub stubMethod:@selector(tableView:numberOfRowsInSection:)
       withBlock:^{ return 1; }];

[stub stubMethod:@selector(tableView:cellForRowAtIndexPath:)
       withBlock:^{ return myCell; }];

[viewcontroller.tableView reloadData];

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];

id cell = [viewcontroller.tableView cellForRowAtIndexPath:indexPath];

expect(cell).to.equal(myCell);

完成操作后,您还可以删除存根。

[stub removeStub:@selector(numberOfSectionsInTableView:)];

或者,您还可以取消对对象的存根,将其返回到原始状态。

[Stubbilino unstubObject:stub];

类方法

类方法也可以存根化。

Class<SBClassStub> uiimage = [Stubbilino stubClass:UIImage.class];

[uiimage stubMethod:@selector(imageNamed:)
          withBlock:^(NSString *name) { return myImage; }];

完成操作后,请确保取消存根化各个类。

[Stubbilino unstubClass:uiimage];

许可证

版权所有 (c) 2013 Robert Böhnke。本软件受 MIT 许可证的许可。