在向服务提交查询后,我得到一个字典/列表,我想确保它不是空的.我在Python 2.7上.
我很惊讶我没有看到类实例的任何assertEmpty
方法unittest.TestCase
.
现有的替代品如:
self.assertTrue(bool(d))
Run Code Online (Sandbox Code Playgroud)
和
self.assertNotEqual(d,{})
Run Code Online (Sandbox Code Playgroud)
和
self.assertGreater(len(d),0)
Run Code Online (Sandbox Code Playgroud)
只是看起来不对劲.
Python unittest框架中是否缺少这种方法?如果是,那么断言迭代不为空的最pythonic方法是什么?
我试图使用JMSSerializer作为一个独立的库来将API的JSON响应映射到我的模型类,并且遇到了一些问题.
执行以下代码会导致异常:
<?php
require dirname(__DIR__) . '/vendor/autoload.php';
use JMS\Serializer\Annotation AS JMS;
class Trii {
/**
* User ID for this session
* @JMS\SerializedName("userID")
* @JMS\Annotation(getter="getUserId")
* @JMS\Type("string")
* @var string
*/
private $userId;
public function getUserId() {
return $this->userId;
}
public function setUserId($userId) {
$this->userId = $userId;
}
}
$serializer = \JMS\Serializer\SerializerBuilder::create()->setDebug(true)->build();
$object = $serializer->deserialize('{"userID":"Trii"}', 'Trii', 'json');
var_dump($object);
?>
Run Code Online (Sandbox Code Playgroud)
这是例外
Doctrine\Common\Annotations\AnnotationException: [Semantical Error] The annotation "@JMS\Serializer\Annotation\SerializedName" in property Trii::$userId does not exist, or could not be auto-loaded.
Run Code Online (Sandbox Code Playgroud)
我通过composer为项目安装了以下库
{
"require": …
Run Code Online (Sandbox Code Playgroud) 我正在设计一个api,其中一个POST方法采用Map<String, String>
任何键值对.
@RequestMapping(value = "/start", method = RequestMethod.POST)
public void startProcess(
@ApiParam(examples = @Example(value = {
@ExampleProperty(
mediaType="application/json",
value = "{\"userId\":\"1234\",\"userName\":\"JoshJ\"}"
)
}))
@RequestBody(required = false) Map<String, String> fields) {
// .. does stuff
}
Run Code Online (Sandbox Code Playgroud)
我想提供一个示例输入,fields
但我似乎无法让它在swagger输出中呈现.这不是正确的使用方法@Example
吗?
我正在研究将 Google Photos 库下载并存档到离线存储介质上的方法。在下载之前,我想计算存储照片库需要多少媒体,但我所能得到的只是用户的照片存储配额,而不是他们的 Google 照片库的实际大小。
我的理解是,配额是指Google用户的照片存储量相对于Google为Gmail、照片和其他服务提供的15GB免费存储空间的计算量。需要明确的是,当我尝试计算下载时 Google 照片库的实际大小时,该配额数字没有帮助。
有谁知道如何获取要下载的库的实际大小?
我正在尝试使用 @Mock 将两个不同的对象注入我的测试类中。我需要它们是两个不同的对象,以便我可以when
在每个对象上使用以产生不同的结果。我在 SO 上搜索的所有内容都指向这项工作,但是在运行下面的测试时 - 两个对象都是相同的模拟。
import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.when;
import com.ihm.pp.test.UnitTest;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
/**
* @author Josh Johnston
*/
@Category(UnitTest.class)
@RunWith(MockitoJUnitRunner.class)
public class ConstructorInjectionBug {
@Mock
private IBroken aBroken;
@Mock
private IBroken bBroken;
@InjectMocks
private UsesBroken usesBroken;
@Test
public void testBrokenConstructorInjection() {
when(bBroken.getNumber()).thenReturn(2);
assertEquals(2, usesBroken.getbBroken().getNumber());
when(aBroken.getNumber()).thenReturn(1);
assertEquals(1, usesBroken.getaBroken().getNumber());
}
}
interface IBroken {
int getNumber();
}
class UsesBroken {
private IBroken aBroken;
private IBroken …
Run Code Online (Sandbox Code Playgroud) 我正在使用镜像api编写应用程序,我需要能够与特定用户共享在服务器端关联的图像.我通过我的玻璃器皿插入两个联系人,我可以分享图像给每个联系人.在服务器端,我得到的东西是这样的,但没有引用它共享的联系人ID?
{
u'itemId': u'e2de58b4-e281-4518-8312-948159167be8', # id to image?
u'userToken': u'6b037418-9a7d-4137-943e-2b857f960a80', # user who shared?
u'operation': u'INSERT',
u'collection': u'timeline',
u'userActions': [{u'type': u'SHARE'}]
}
Run Code Online (Sandbox Code Playgroud) java ×2
unit-testing ×2
assertions ×1
mockito ×1
php ×1
picasa ×1
python ×1
python-2.7 ×1
spring-boot ×1
springfox ×1
storage ×1
swagger ×1