فهرست منبع

Add test for url resolving a local URL with no active session.

Jason Grout 5 سال پیش
والد
کامیت
5a17c5048b
1فایلهای تغییر یافته به همراه18 افزوده شده و 1 حذف شده
  1. 18 1
      tests/test-rendermime/src/registry.spec.ts

+ 18 - 1
tests/test-rendermime/src/registry.spec.ts

@@ -13,6 +13,8 @@ import { PageConfig } from '@jupyterlab/coreutils';
 
 import { Widget } from '@lumino/widgets';
 
+import { SessionContext } from '@jupyterlab/apputils';
+
 import { MathJaxTypesetter } from '@jupyterlab/mathjax2';
 
 import {
@@ -310,6 +312,7 @@ describe('rendermime/registry', () => {
     });
 
     describe('.UrlResolver', () => {
+      let manager: ServiceManager;
       let resolver: RenderMimeRegistry.UrlResolver;
       let contents: Contents.IManager;
       let session: Session.ISessionConnection;
@@ -317,7 +320,7 @@ describe('rendermime/registry', () => {
       const urlParent = encodeURI(pathParent);
 
       before(async () => {
-        const manager = new ServiceManager({ standby: 'never' });
+        manager = new ServiceManager({ standby: 'never' });
         const drive = new Drive({ name: 'extra' });
         const path = pathParent + '/pr%25 ' + UUID.uuid4();
         contents = manager.contents;
@@ -350,6 +353,20 @@ describe('rendermime/registry', () => {
           expect(path).to.equal(urlParent + '/foo');
         });
 
+        it('should resolve a relative url with no active session', async () => {
+          const resolver = new RenderMimeRegistry.UrlResolver({
+            session: new SessionContext({
+              sessionManager: manager.sessions,
+              specsManager: manager.kernelspecs,
+              path: pathParent + '/pr%25 ' + UUID.uuid4(),
+              kernelPreference: { canStart: false, shouldStart: false }
+            }),
+            contents: manager.contents
+          });
+          const path = await resolver.resolveUrl('./foo');
+          expect(path).to.equal(urlParent + '/foo');
+        });
+
         it('should ignore urls that have a protocol', async () => {
           const path = await resolver.resolveUrl('http://foo');
           expect(path).to.equal('http://foo');