在Objective-C中是否可以查看某个int值是否在某个特定值enum?例如,在这个枚举中:
enum {
ValidationLoginFailed = 2000,
ValidationSessionTokenExpired = 2001,
ValidationSessionTokenInvalid = 2002,
ValidationEmailNotFound = 2003
};
typedef int ValidationStatusCodes;
Run Code Online (Sandbox Code Playgroud)
有可能看到一个任意整数值是ValidationStatusCodes enum?
[ValidationStatusCodes contains:intResponseCode]
Run Code Online (Sandbox Code Playgroud)
或至少
[self intIsInRangeofEnum:ValidationStatusCodes forValue:intResponseCode]
Run Code Online (Sandbox Code Playgroud) 我在几个项目中看到开发人员包含类似$Revision$源代码文档中的内容.我认为它们是某些工具的宏或环境变量,但我不知道如何使用它们.
我有兴趣将此功能添加到我的下一个项目中.我通常使用TextMate,git和doxygen.有什么建议?
我有一个带有两个分支的Git存储库:master和redesign.该redesign分支是从那时创建的master,并且master从那时起就没有被触及:
master
...|--m50--\
\--m51--|--m52--|--m53-- redesign
Run Code Online (Sandbox Code Playgroud)
该redesign分行已经发展这么多,我想从它创建一个新的整体存储库,以第一次提交的redesign作为初始提交新的存储库中,忘记以前的历史继承自master:
master
...|--m50--
redesign
--r1--|--r2--|--r3--
Run Code Online (Sandbox Code Playgroud)
这可能与Git有关吗?有一个相关的问题,但它的目标是使用目录,而不是分支.
谢谢!
我正在用 CakePHP 开发一个处理货币价值的应用程序。客户希望数字具有像 一样的自定义格式1.275,34,即一个点作为整数部分的分隔符,一个逗号作为小数部分的分隔符。
我想知道管理这个的最佳方法是什么,因为我需要做两件基本的事情:
decimal(18,2)在本例中,1275.34在上面的示例中)预期的格式转换这些值。我想我有这些选项,但我对任何选项都不满意,因为有几个模型可以使用该自定义格式,这意味着复制一些代码:
$this->Model->save(),可能使用组件。var $validate数组)中的自定义规则验证数据并转换它们,可能使用行为。你有什么建议吗?有没有其他方法来处理这个问题?
谢谢!
我开发了一个网站,现在必须为几个客户克隆该网站。每个客户都想要超越视觉方面的定制,并且不能通过配置文件、偏好或类似的东西来处理。
在这种情况下,我想在 Git 中使用公共代码维护一个主存储库,然后为每个客户端维护一个分支。这样,我可以在每个客户端(分支)中进行单独的更改,并共享常见的更改(使用主服务器)。
这种做法正确吗?除了远程分支之外,还有其他方法可以处理这个问题吗?
谢谢!
使用PHPUnit,我想知道如何从同一个存根/模拟中获得多个期望.
例如,我想测试mock将display()调用该方法并返回NULL.我还想测试一下这个方法process()是否会被调用.
事实上,我的测试被称为testProcessIsCalledIfDisplayReturnNull().
所以我需要在同一个模拟对象上设置2个期望值,并且手册并没有真正帮助:(
我正在尝试测试允许编辑用户配置文件的控制器操作.除了我想测试的其他事情,每个登录的用户只能编辑自己的配置文件而不能编辑其他配置文件.如果违反此限制,操作必须重定向到预定义的主页.
在这种情况下,我有一个夹具,可以创建ID = 1的用户.所以我正在考虑以这种方式测试限制:
$data = $this->Users->User->read(null, 1);
$this->Users->Auth->login($data);
$this->testAction('/users/edit/2', array('method' => 'get'));
$url = parse_url($this->headers['Location']);
$this->assertEquals($url['path'], '/homepage');
Run Code Online (Sandbox Code Playgroud)
测试通过了这个断言.因此,下一步是检查执行'/users/edit/1'(具有已记录用户的ID)是否显示该表单:
$this->testAction('/users/edit/1', array('method' => 'get', 'return' => 'vars'));
$matcher = array(
'tag' => 'form',
'ancestor' => array('tag' => 'div'),
'descendant' => array('tag' => 'fieldset'),
);
$this->assertTag($matcher, $this->vars['content_for_layout'], 'The edition form was not found');
Run Code Online (Sandbox Code Playgroud)
但是这个断言失败了.在挖掘之后,debug()我发现它$this->Auth->user()返回了整个信息但$this->Auth->user('id')返回null.由于我在操作中的比较中使用后者,因此它的计算结果为false并导致测试失败.
奇怪的是,它是在测试时发生的,而不是在浏览器中执行操作时发生的.那么,测试这个动作的正确方法是什么?
谢谢!
如何检查访问该页面的URL是原始URL还是CNAME记录.
例如,我有一个网站domain.com.用户可以在他们链接www.otherdomain.com到我们网站的位置设置CNAME domain.com.
从我们的服务器角度来看,如何检测访问该页面的URL是实际的one(domain.com)还是CNAME one(www.otherdomain.com)?
来自 Web 开发背景,主要从事基于 MVC 的应用程序,我习惯于将代码的组件分成三组文件:控制器、模型和视图。
但是在 iOS 应用程序中,即使也使用 MVC 模式,遵循相同的技术是否有意义?
AnUIViewController为您提供了一个默认视图,您可以在其中添加其余的子视图 ( UILabel, UIButton,...) 并立即访问它们。语言是一样的,它不像必须处理 HTML/CSS 和其他东西。
但是我遇到过一些 iOS 应用程序,其中 anUIView被子类化并保存在一个单独的文件中,即使它只在UIViewController. 因此,您必须编写自定义访问器来处理内部子视图。
我认为没有必要这样做,除非您UIView在多个地方重复使用相同的内容或进行自定义绘图。
假设我们有一个与Web服务通信的iOS应用程序.某些请求被委托给另一个Web服务,因此在另一侧的操作正在进行时会立即返回HTTP 200状态代码:
|iOS app| |Main service| |Delegate service|
| request | |
|------------------->|_ delegate |_
| | |----------------->| |
| HTTP 200 | | accepted | |
|<-------------------|_|<-----------------| |
| | | |
| | | |
| status? | | |
|------------------->|_ | |
| | | | |
| pending | | | |
|<-------------------|_| | |
| | | |
| | finished | |
| |<-------------------|_|
| | |
| status? | |
|------------------->|_ |
| …Run Code Online (Sandbox Code Playgroud) git ×3
php ×3
branch ×2
cakephp ×2
ios ×2
objective-c ×2
cname ×1
comments ×1
decimal ×1
dns ×1
enums ×1
expectations ×1
long-polling ×1
mocking ×1
phpunit ×1
polling ×1
unit-testing ×1
url ×1
validation ×1
web-services ×1