Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否有一种方法来模拟一个类并使用常规类构造?

是否有一种方法来模拟一个类并使用常规类构造?
EN

Stack Overflow用户
提问于 2014-11-16 01:22:20
回答 1查看 392关注 0票数 1

背景:,我仍在学习使用模拟,并试图测试一个WordPress插件。我不喜欢加载WordPress,而只是在需要时使用模拟来伪造类/函数,并且只测试代码的输入和输出。

我想做以下几点:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// WP_Query IS NOT DEFINED

$mock = \Mockery::mock('WP_Query', array('have_posts' => true));

$this->assertTrue($mock->have_posts());

$q = new WP_Query();

// fails with "Call to undefined method WP_Query::have_posts()"
$this->assertTrue($q->have_posts());

上述的可能与嘲弄吗?

EN

回答 1

Stack Overflow用户

发布于 2014-11-16 01:32:43

当将数组作为第二个参数传递给Mockery::mock时,它期待的是构造函数参数,而不是要模拟的方法。

相反,你需要:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$mock = \Mockery::mock('WP_Query');
$mock->shouldReceive('have_posts')->andReturn(true);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26955474

复制
相关文章
从零到有模拟实现一个Set类
可以传递一个可迭代对象,它的所有元素将被添加到新的 Set中。如果不指定此参数或其值为null,则新的 Set为空。
前端胖头鱼
2022/07/24
2800
从零到有模拟实现一个Set类
可以传递一个可迭代对象,它的所有元素将被添加到新的 Set中。如果不指定此参数或其值为null,则新的 Set为空。
秋风的笔记
2021/09/22
3950
判断一个类是否另一个类的父类
我们调用Class中isAssignableFrom函数来判断左边的类是否参数中这个类的超类(父类)
阿超
2022/08/16
6310
判断一个类是否另一个类的父类
Swift 类构造器的使用
个人觉得这句话还是蛮有道理的. 反正对于我来说, 每过一段的时间回过头来看自己写的代码都感觉有很大的重构空间, 很多地方写的不够 PERFECT, 虽然我不是一个处女座, 但是对于代码的健壮和整洁还是很注意的.
ios-lan
2020/09/27
1.7K0
构造方法、类方法、类的复合
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/46794991
用户1451823
2018/09/12
1.2K0
Tree类(类对象与构造)Python
定义一个Tree(树)类,有成员ages(树龄),不带参数的构造函数对ages初始化为1,成员函数grow(int years)对ages加上years,age()显示tree对象的ages的值。
叶茂林
2023/07/30
1730
dart(四)--类、构造函数、方法dart(四)--类、构造函数、方法
类 构造函数 构造函数 className 或 className.identifier, 关键字 new 可选. 构造函数语句执行顺序:初始化器,父类构造函数,子类构造函数。 class Point { num x, y, distance; /* 1,匿名构造函数 2,使用this.x 简化写法,原写法: Point(num x , num y) 3,此处 : 后为初始化器,初始化的结果赋值给初始化器的对象,是最简洁的方式。
用户8893176
2021/08/09
1.4K0
关于如何来构造一个String类
  今天帮着一位大二的学弟写了一个String的类,后来一想这个技术点,也许不是什么难点,但是还是简单的记录一些吧! 为那些还在路上爬行的行者,剖析一些基本的实现.....   内容写的过于简单,没有涉及到其他格式的如考虑utf_8.这儿单纯的考虑了char的使用....... 1 #define _CRT_SECURE_NO_WARNINGS 2 #include<iostream> 3 #include<stdlib.h> 4 #include<string.h> 5 #inclu
Gxjun
2018/03/26
9370
【月度刷题计划同款】常规"脑筋急转弯"类构造题
给你两个整数 n 和 k ,请你构造一个答案列表 answer,该列表应当包含从 1 到 n 的 n 个不同正整数,并同时满足下述条件:
宫水三叶的刷题日记
2023/09/07
2360
【月度刷题计划同款】常规"脑筋急转弯"类构造题
类和对象(构造深入)
普通函数指针:返回值类型(*指针名)(参数列表) 注意:void( * p_fun)(int,int);和void * p_fun(int,int);的区别 前者是定义函数指针,后者是函数声明(指针函数)
小飞侠xp
2018/12/27
9880
Equation(类与对象+构造)
1、无参构造(abc默认值为1、1、0)与有参构造函数,用于初始化a、b、c的值;
叶茂林
2023/07/30
2590
Equation(类与对象+构造)
生日打折(复合类构造)
定义一个日期类Date,包含数据成员year\month\day,还包含构造函数及其他函数(根据需要自己添加)
叶茂林
2023/07/30
1540
类中的构造方法
构造方法是正常开发中不可或缺的一部分,是语法上必须存在的。是一个具有特殊格式的方法,且有特殊的调用方式。
星哥玩云
2022/09/14
1.1K0
类中的构造方法
Class工具类-获取类/成员变量/构造函数
public class ClassUtil { /** * @Author: www.itze.cn * @Date: 2020/9/17 16:08 * @Email: 814565718@qq.com * 打印类的信息,包括类的成员函数,变量 * @param object 该对象所属类的信息 */ public static void printClassMessage(Object object) { //
itze
2022/10/25
9890
Class工具类-获取类/成员变量/构造函数
反射类的构造函数
<!-- 首先,通过Class获取类的字节码 Class clazz = Class.forName("com.marer.reflect.Person"); 然后,利用Constructor创建对象 Constructor c = clazz.getConstructor(null);//获取无参的构造函数 Constructor c = clazz.getConstructor(String.class);//获取参数为String的构造函数 Constructor c = clazz.getConstructor(String.class, int.class);//获取参数为String,int的构造函数 Constructor c = clazz.getDeclaredConstructor(List.class);//获取隐藏为private的构造函数 c.setAccessible(true);//暴力反射 创建对象的另外一种途径,反射出类的无参构造函数并创建对象 Class clazz = Class.forName("com.marer.reflect.Person"); Person p = (Person) clazz.newInstance(); 但是当无参的构造函数为private或不存在的时候,反射抛异常 转载请注明出处:http://blog.csdn.net/nthack5730/article/details/49822819 但是可以通过暴力反射获取类的隐藏构造函数: Constructor.setAccessible(true);
MonroeCode
2018/01/11
1.1K0
Python 类的构造函数
类的构造函数 类中的一种默认函数,用来将类实例化的同时, 将参数传入类中 构造函数的创建 def __init__(self, a, b) self.a = a self.b = b 代码 # coding:utf-8 def sleep(name): return name class Person(object): def __init__(self, name, age=None): self.name = name self.age =
Zkeq
2022/05/18
1.4K0
Point(类与构造) Python
第一组测试数据点p1的x坐标 第一组测试数据点p1的y坐标 第一组测试数据点p2的x坐标 第一组测试数据点p2的y坐标
叶茂林
2023/07/30
2480
Point(类与构造) Python
8.3 C++ 定义并使用类
C/C++语言是一种通用的编程语言,具有高效、灵活和可移植等特点。C语言主要用于系统编程,如操作系统、编译器、数据库等;C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统、图形用户界面、嵌入式系统等。C/C++语言具有很高的效率和控制能力,但也需要开发人员自行管理内存等底层资源,对于初学者来说可能会有一定的难度。
微软技术分享
2023/10/21
2310
8.3 C++ 定义并使用类
静态代理和动态代理区别(是否有实现类)
Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题,
ha_lydms
2023/08/09
2340
静态代理和动态代理区别(是否有实现类)
Point(类与构造) Java
第一组测试数据点p1的x坐标 第一组测试数据点p1的y坐标 第一组测试数据点p2的x坐标 第一组测试数据点p2的y坐标
叶茂林
2023/07/30
2330
Point(类与构造) Java

相似问题

使用类构造函数声明类和使用常规函数声明类有什么区别?

10

是否有一种方法来装饰一个类,注入一个父类?

18

是否有一种方法可以破坏并移动构造多态基类?

32

MockedStatic是否有一种返回模拟类的方法?

119

在C#中是否有一种简单的方法来模拟目标-C类?

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文