首页 > 其他分享 >测试获取 Github 信息

测试获取 Github 信息

时间:2024-02-01 11:58:26浏览次数:31  
标签:info content Github self assert 获取 github 测试 kwargs

import json
import requests

from .fetch_github_info import AUTHENTICATED_USER_ENDPOINT, fetch_github_info

def test_fetch_github_info(monkeypatch):
    # 定义一个模拟的 HTTP 响应类
    class FakeResponse:
        def __init__(self, content) -> None:
            assert isinstance(content, (bytes, str))
            self.content = content

        def json(self):
            return json.loads(self.content)

    # 定义模拟的响应函数,用于替换 requests.get 方法
    def mock_response(*args, **kwargs):
        # 断言确保请求的 URL 正确
        assert args[0] == AUTHENTICATED_USER_ENDPOINT
        # 断言确保请求头中包含 Authorization,并且以 "token " 开头
        assert "Authorization" in kwargs["headers"]
        assert kwargs["headers"]["Authorization"].startswith("token ")
        # 断言确保请求头中包含 Accept
        assert "Accept" in kwargs["headers"]
        # 返回模拟的响应对象,其中的 content 是包含用户信息的 JSON 字符串
        return FakeResponse(b'{"login":"test","id":1}')

    # 使用 monkeypatch 替换 requests.get 方法,使其返回模拟的响应
    monkeypatch.setattr(requests, "get", mock_response)
    
    # 调用被测试的函数,传入模拟的 token,获取结果
    result = fetch_github_info("token")
    
    # 断言确保返回的用户信息与预期相符
    assert result["login"] == "test"
    assert result["id"] == 1

 

标签:info,content,Github,self,assert,获取,github,测试,kwargs
From: https://www.cnblogs.com/mlhelloworld/p/18000890

相关文章

  • 获取动漫并播放
    importrequestsfrombs4importBeautifulSoup,NavigableString,Tagfromfake_useragentimportUserAgentBASE_URL="https://ww1.gogoanime2.org"#BASE_URL="https://search.bilibili.com"defsearch_scraper(anime_name:str)->list:......
  • PMP工具与技术-6.7-1 控制质量工具与技术--检查、测试/产品评估**
    一、数据收集技术​适用于控制质量过程的数据收集技术包括(但不限于):1.核对单(Checklist)--提醒​核对单有助于以结构化方式管理控制质量活动。##核对单是提醒提示需要核对检查的事项有没有完成,打勾的。##很多组织基于自身经验制定了标准化的核对单,或者采用所在行业的核对单。......
  • AWR1243+DCA1000的开箱测试
    一、AWR1243+DCA1000实物图二、开箱测试参考文件:[mmwave_sensor_raw_data_capture_using_dca1000_v02](mmwave_sensor_raw_data_c...sing_dca1000_v02.pdfhttps://www.alipan.com/s/KZaKMNTD7sr)1.AWR1243--SOP模式设置这里是使用DCA1000进行采样,选择“011(SOPmode2)......
  • ASP6.0 (VB) 获取目录下所有图片文件
     <%'Desc:ASP6.0(VB)获取目录下所有图片文件'by:wgscd'date:2024-2-1dimc_pathc_path=Server.MapPath("./")setfile_system=createobject("scripting.filesystemobject")getFile(c_path)subgetFile(c_path) dimstr......
  • 【兼容认证】白鲸开源与银河麒麟高级服务器操作系统成功通过测试
    2024年1月2日,北京白鲸开源科技有限公司(以下简称"白鲸开源")荣幸宣布,白鲸开源旗下产品WhaleStudioV2.4已成功通过与麒麟软件有限公司旗下的银河麒麟高级服务器操作系统产品的兼容性测试。麒麟软件有限公司的银河麒麟高级服务器操作系统(飞腾版)V10和银河麒麟高级服务器操作系统......
  • tcp 远程服务器,C#编程学习之使用TcpClient / BeginConnect测试远程服务器tcp端口连接
    原文链接:hhttps://blog.csdn.net/weixin_36286567/article/details/119265325有时候经常需要对一些服务器的端口进行tcp连接测试,通常使用“telnetIP地址端口号”的方式即可,不能说这种方式不可取,只是使用起来比较麻烦,本着简单好用的目的,不如我们自己动手写一个测试tcp端口连接的......
  • 校验ChatGPT 4真实性的三个经典问题:提供免费测试网站快速区分 GPT3.5 与 GPT4
    现在已经有很多ChatGPT的套壳网站,以下分享验明GPT-4真身的三个经典问题,帮助你快速区分套壳网站背后到底用的是GPT-3.5还是GPT-4。大家可以在这个网站测试:https://ai.hxkj.vip,免登录可以问三条,登录之后无限制。咱们使用免登录的额度测试就已经够用了测试问题1:Whatist......
  • 2024年1月份更新「GIS数据」全国的GeoJSON、shp格式数据下载获取(精确到乡镇街道级)
    发现个可以免费下载全国 geojson 数据的网站,推荐一下。支持全国、省级、市级、区/县级、街道/乡镇级以及各级的联动数据,支持导入矢量地图渲染框架中使用,例如:D3、Echarts等geojson数据下载地址:https://geojson.hxkj.vip该项目github地址:https://github.com/TangSY/echarts-m......
  • 24校招,快手测试开发工程师二面
    前言大家好,我是chowley,今天回顾一下,之前参加快手的校招面试全程没有测试方向问题,一直拷打编程语言特性和数据底层结构时间:50min平台:轻雀(请勿切屏)过程自我介绍用的编程语言?python回顾一下学python的历程在你接触过的所有的算法,你最擅长的TOP3是啥?双指针、二叉树、回溯写......
  • 24校招,小鹏汽车自动驾驶测试工程师二面
    前言大家好,我是chowley,今天回顾一下,之前参加的自动驾驶测试工程师面试时间:40min平台:飞书过程自我介绍实习经历拿了哪些offer,为啥还在面?加入一个公司,你期望得到哪些培养?你现在负责的工作?开发方面做了哪些?说一下你学自动化测试的进展接口端和web端的测试有哪些区别?还面......