@datagrok/bio 2.0.8 → 2.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "name": "Leonid Stolbov",
6
6
  "email": "lstolbov@datagrok.ai"
7
7
  },
8
- "version": "2.0.8",
8
+ "version": "2.0.10",
9
9
  "description": "Bio is a [package](https://datagrok.ai/help/develop/develop#packages) for the [Datagrok](https://datagrok.ai) platform",
10
10
  "repository": {
11
11
  "type": "git",
@@ -14,7 +14,7 @@
14
14
  },
15
15
  "dependencies": {
16
16
  "@biowasm/aioli": ">=2.4.0",
17
- "@datagrok-libraries/bio": "^4.3.0",
17
+ "@datagrok-libraries/bio": "^4.4.0",
18
18
  "@datagrok-libraries/chem-meta": "1.0.0",
19
19
  "@datagrok-libraries/ml": "^6.2.0",
20
20
  "@datagrok-libraries/utils": "^1.6.2",
package/src/package.ts CHANGED
@@ -315,9 +315,11 @@ export async function compositionAnalysis(): Promise<void> {
315
315
  return;
316
316
  } else if (colList.length > 1) {
317
317
  const colListNames: string [] = colList.map((col) => col.name);
318
- const colInput: DG.InputBase = ui.choiceInput('Column', colListNames[0], colListNames);
318
+ const selectedCol = colList.find((c) => { return (new UnitsHandler(c)).isMsa(); });
319
+ const colInput: DG.InputBase = ui.choiceInput(
320
+ 'Column', selectedCol ? selectedCol.name : colListNames[0], colListNames);
319
321
  ui.dialog({
320
- title: 'R-Groups Analysis',
322
+ title: 'Composition Analysis',
321
323
  helpUrl: '/help/domains/bio/macromolecules.md#composition-analysis'
322
324
  })
323
325
  .add(ui.div([
@@ -131,8 +131,8 @@ MWRSWY-CKHP
131
131
 
132
132
  const samples: { [key: string]: string } = {
133
133
  'fastaCsv': 'System:AppData/Bio/samples/sample_FASTA.csv',
134
- 'fastaFasta': 'System:AppData/Bio/samples/sample_FASTA.fasta',
135
- 'fastaPtCsv': 'System:AppData/Bio/samples/sample_FASTA_PT.csv',
134
+ 'fastaFasta': 'System:AppData/Bio/data/sample_FASTA.fasta',
135
+ 'fastaPtCsv': 'System:AppData/Bio/data/sample_FASTA_PT.csv',
136
136
  'msaComplex': 'System:AppData/Bio/samples/sample_MSA.csv',
137
137
  'helmCsv': 'System:AppData/Bio/samples/sample_HELM.csv',
138
138
  'peptidesComplex': 'System:AppData/Bio/tests/peptides_complex_msa.csv',
@@ -274,7 +274,8 @@ export function drawMoleculeDifferenceOnCanvas(
274
274
  s: string,
275
275
  units: string,
276
276
  separator: string,
277
- fullStringLength?: boolean) {
277
+ fullStringLength?: boolean,
278
+ molDifferences?:{[key: number]: HTMLCanvasElement}) {
278
279
 
279
280
  //TODO: can this be replaced/merged with splitSequence?
280
281
  const [s1, s2] = s.split('#');
@@ -314,9 +315,34 @@ export function drawMoleculeDifferenceOnCanvas(
314
315
  const subX0 = printLeftOrCentered(updatedX, updatedY - vShift, w, h, g, amino1, color1, 0, true);
315
316
  const subX1 = printLeftOrCentered(updatedX, updatedY + vShift, w, h, g, amino2, color2, 0, true);
316
317
  updatedX = Math.max(subX1, subX0);
318
+ if (molDifferences) {
319
+ molDifferences[i] = createDifferenceCanvas(amino1, amino2, color1, color2, updatedY, vShift, h);
320
+ }
317
321
  } else
318
322
  updatedX = printLeftOrCentered(updatedX, updatedY, w, h, g, amino1, color1, 0, true, 0.5);
319
323
  updatedX += 4;
320
324
  }
321
325
  g.restore();
322
326
  }
327
+
328
+ function createDifferenceCanvas(
329
+ amino1: string,
330
+ amino2: string,
331
+ color1: string,
332
+ color2: string,
333
+ y: number,
334
+ shift: number,
335
+ h: number): HTMLCanvasElement {
336
+ const canvas = document.createElement('canvas');
337
+ const context = canvas.getContext('2d')!;
338
+ const width1 = context.measureText(processSequence([amino1]).join('')).width;
339
+ const width2 = context.measureText(processSequence([amino2]).join('')).width;
340
+ const width = Math.max(width1, width2);
341
+ canvas.height = h;
342
+ canvas.width = width + 20;
343
+ context.font = '12px monospace';
344
+ context.textBaseline = 'top';
345
+ printLeftOrCentered(0, y - shift, width, h, context, amino1, color1, 0, true);
346
+ printLeftOrCentered(0, y + shift, width, h, context, amino2, color2, 0, true);
347
+ return canvas;
348
+ }
@@ -88,8 +88,24 @@ export function createPropPanelElement(params: ITooltipAndPanelParams): HTMLDivE
88
88
  canvas.height = 30;
89
89
  const units = params.seqCol.getTag(DG.TAGS.UNITS);
90
90
  const separator = params.seqCol.getTag(TAGS.SEPARATOR);
91
- drawMoleculeDifferenceOnCanvas(context!, 0, 0, 0, 30, sequencesArray.join('#'), units, separator, true);
91
+ const molDifferences: {[key: number]: HTMLCanvasElement} = {};
92
+ drawMoleculeDifferenceOnCanvas(context!, 0, 0, 0, 30, sequencesArray.join('#'), units, separator, true, molDifferences);
92
93
  propPanel.append(ui.div(canvas, { style: { width: '300px', overflow: 'scroll' } }));
94
+
95
+ if (Object.keys(molDifferences).length > 0) {
96
+ const diffsPanel = ui.divV([]);
97
+ diffsPanel.append(ui.divH([
98
+ ui.divText('Pos', { style: { fontWeight: 'bold', width: '30px' } }),
99
+ ui.divText('Difference', { style: { fontWeight: 'bold' } })
100
+ ]))
101
+ for (let key of Object.keys(molDifferences)) {
102
+ diffsPanel.append(ui.divH([
103
+ ui.divText(key, { style: { width: '30px' } }),
104
+ molDifferences[key as any]
105
+ ]));
106
+ }
107
+ propPanel.append(diffsPanel);
108
+ }
93
109
 
94
110
  function addFiledToPropPanel(name: string, value: number) {
95
111
  propPanel.append(ui.divH([
@@ -1,374 +0,0 @@
1
- <html><head><meta charset="utf-8"/><title>Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=7770371320b2. Commit 1095ee64.</title><style type="text/css">html,
2
- body {
3
- font-family: Arial, Helvetica, sans-serif;
4
- font-size: 1rem;
5
- margin: 0;
6
- padding: 0;
7
- color: #333;
8
- }
9
- body {
10
- padding: 2rem 1rem;
11
- font-size: 0.85rem;
12
- }
13
- #jesthtml-content {
14
- margin: 0 auto;
15
- max-width: 70rem;
16
- }
17
- header {
18
- display: flex;
19
- align-items: center;
20
- }
21
- #title {
22
- margin: 0;
23
- flex-grow: 1;
24
- }
25
- #logo {
26
- height: 4rem;
27
- }
28
- #timestamp {
29
- color: #777;
30
- margin-top: 0.5rem;
31
- }
32
-
33
- /** SUMMARY */
34
- #summary {
35
- color: #333;
36
- margin: 2rem 0;
37
- display: flex;
38
- font-family: monospace;
39
- font-size: 1rem;
40
- }
41
- #summary > div {
42
- margin-right: 2rem;
43
- background: #eee;
44
- padding: 1rem;
45
- min-width: 15rem;
46
- }
47
- #summary > div:last-child {
48
- margin-right: 0;
49
- }
50
- @media only screen and (max-width: 720px) {
51
- #summary {
52
- flex-direction: column;
53
- }
54
- #summary > div {
55
- margin-right: 0;
56
- margin-top: 2rem;
57
- }
58
- #summary > div:first-child {
59
- margin-top: 0;
60
- }
61
- }
62
-
63
- .summary-total {
64
- font-weight: bold;
65
- margin-bottom: 0.5rem;
66
- }
67
- .summary-passed {
68
- color: #4f8a10;
69
- border-left: 0.4rem solid #4f8a10;
70
- padding-left: 0.5rem;
71
- }
72
- .summary-failed,
73
- .summary-obsolete-snapshots {
74
- color: #d8000c;
75
- border-left: 0.4rem solid #d8000c;
76
- padding-left: 0.5rem;
77
- }
78
- .summary-pending {
79
- color: #9f6000;
80
- border-left: 0.4rem solid #9f6000;
81
- padding-left: 0.5rem;
82
- }
83
- .summary-empty {
84
- color: #999;
85
- border-left: 0.4rem solid #999;
86
- }
87
-
88
- .test-result {
89
- padding: 1rem;
90
- margin-bottom: 0.25rem;
91
- }
92
- .test-result:last-child {
93
- border: 0;
94
- }
95
- .test-result.passed {
96
- background-color: #dff2bf;
97
- color: #4f8a10;
98
- }
99
- .test-result.failed {
100
- background-color: #ffbaba;
101
- color: #d8000c;
102
- }
103
- .test-result.pending {
104
- background-color: #ffdf61;
105
- color: #9f6000;
106
- }
107
-
108
- .test-info {
109
- display: flex;
110
- justify-content: space-between;
111
- }
112
- .test-suitename {
113
- width: 20%;
114
- text-align: left;
115
- font-weight: bold;
116
- word-break: break-word;
117
- }
118
- .test-title {
119
- width: 40%;
120
- text-align: left;
121
- font-style: italic;
122
- }
123
- .test-status {
124
- width: 20%;
125
- text-align: right;
126
- }
127
- .test-duration {
128
- width: 10%;
129
- text-align: right;
130
- font-size: 0.75rem;
131
- }
132
-
133
- .failureMessages {
134
- padding: 0 1rem;
135
- margin-top: 1rem;
136
- border-top: 1px dashed #d8000c;
137
- }
138
- .failureMessages.suiteFailure {
139
- border-top: none;
140
- }
141
- .failureMsg {
142
- white-space: pre-wrap;
143
- white-space: -moz-pre-wrap;
144
- white-space: -pre-wrap;
145
- white-space: -o-pre-wrap;
146
- word-wrap: break-word;
147
- }
148
-
149
- .suite-container {
150
- margin-bottom: 2rem;
151
- }
152
- .suite-info {
153
- padding: 1rem;
154
- background-color: #eee;
155
- color: #777;
156
- display: flex;
157
- align-items: center;
158
- margin-bottom: 0.25rem;
159
- }
160
- .suite-info .suite-path {
161
- word-break: break-all;
162
- flex-grow: 1;
163
- font-family: monospace;
164
- font-size: 1rem;
165
- }
166
- .suite-info .suite-time {
167
- margin-left: 0.5rem;
168
- padding: 0.2rem 0.3rem;
169
- font-size: 0.75rem;
170
- }
171
- .suite-info .suite-time.warn {
172
- background-color: #d8000c;
173
- color: #fff;
174
- }
175
-
176
- /* CONSOLE LOGS */
177
- .suite-consolelog {
178
- margin-bottom: 0.25rem;
179
- padding: 1rem;
180
- background-color: #efefef;
181
- }
182
- .suite-consolelog-header {
183
- font-weight: bold;
184
- }
185
- .suite-consolelog-item {
186
- padding: 0.5rem;
187
- }
188
- .suite-consolelog-item pre {
189
- margin: 0.5rem 0;
190
- white-space: pre-wrap;
191
- white-space: -moz-pre-wrap;
192
- white-space: -pre-wrap;
193
- white-space: -o-pre-wrap;
194
- word-wrap: break-word;
195
- }
196
- .suite-consolelog-item-origin {
197
- color: #777;
198
- font-weight: bold;
199
- }
200
- .suite-consolelog-item-message {
201
- color: #000;
202
- font-size: 1rem;
203
- padding: 0 0.5rem;
204
- }
205
-
206
- /* OBSOLETE SNAPSHOTS */
207
- .suite-obsolete-snapshots {
208
- margin-bottom: 0.25rem;
209
- padding: 1rem;
210
- background-color: #ffbaba;
211
- color: #d8000c;
212
- }
213
- .suite-obsolete-snapshots-header {
214
- font-weight: bold;
215
- }
216
- .suite-obsolete-snapshots-item {
217
- padding: 0.5rem;
218
- }
219
- .suite-obsolete-snapshots-item pre {
220
- margin: 0.5rem 0;
221
- white-space: pre-wrap;
222
- white-space: -moz-pre-wrap;
223
- white-space: -pre-wrap;
224
- white-space: -o-pre-wrap;
225
- word-wrap: break-word;
226
- }
227
- .suite-obsolete-snapshots-item-message {
228
- color: #000;
229
- font-size: 1rem;
230
- padding: 0 0.5rem;
231
- }
232
- </style></head><body><div id="jesthtml-content"><header><h1 id="title">Bio Test Report. Datagrok version datagrok/datagrok:latest SHA=7770371320b2. Commit 1095ee64.</h1></header><div id="metadata-container"><div id="timestamp">Started: 2022-09-19 08:10:18</div><div id="summary"><div id="suite-summary"><div class="summary-total">Suites (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div><div id="test-summary"><div class="summary-total">Tests (1)</div><div class="summary-passed summary-empty">0 passed</div><div class="summary-failed">1 failed</div><div class="summary-pending summary-empty">0 pending</div></div></div></div><div id="suite-1" class="suite-container"><div class="suite-info"><div class="suite-path">/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts</div><div class="suite-time warn">40.792s</div></div><div class="suite-tests"><div class="test-result failed"><div class="test-info"><div class="test-suitename"> </div><div class="test-title">TEST</div><div class="test-status">failed</div><div class="test-duration">25.775s</div></div><div class="failureMessages"> <pre class="failureMsg">Error: Test result : Failed : 183 : Bio.renderers.setRendererManually : Error: Tag 'cell.renderer' has been manually set to 'MacromoleculeDifference' for column but after df was added as table, tag 'cell.renderer' has reset to 'sequence' instead of manual 'MacromoleculeDifference'.
233
-
234
- at /home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:68:20
235
- at Generator.next (&lt;anonymous&gt;)
236
- at fulfilled (/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:31:58)
237
- at runMicrotasks (&lt;anonymous&gt;)
238
- at processTicksAndRejections (internal/process/task_queues.js:97:5)</pre></div></div></div><div class="suite-consolelog"><div class="suite-consolelog-header">Console Log</div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at Object.&lt;anonymous&gt; (/home/runner/work/public/public/packages/Bio/src/__jest__/test-node.ts:63:11)
239
- at Generator.next (&lt;anonymous&gt;)
240
- at fulfilled (/home/runner/work/public/public/packages/Bio/src/__jest__/test-node.ts:28:58)
241
- at processTicksAndRejections (internal/process/task_queues.js:97:5)</pre><pre class="suite-consolelog-item-message">Using web root: http://localhost:8080</pre></div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at /home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:40:11
242
- at Generator.next (&lt;anonymous&gt;)
243
- at /home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:34:71
244
- at new Promise (&lt;anonymous&gt;)
245
- at Object.&lt;anonymous&gt;.__awaiter (/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:30:12)
246
- at Object.&lt;anonymous&gt; (/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:38:23)
247
- at Promise.then.completed (/home/runner/work/public/public/packages/Bio/node_modules/jest-circus/build/utils.js:391:28)
248
- at new Promise (&lt;anonymous&gt;)</pre><pre class="suite-consolelog-item-message">Testing Bio package</pre></div><div class="suite-consolelog-item"><pre class="suite-consolelog-item-origin"> at /home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:66:11
249
- at Generator.next (&lt;anonymous&gt;)
250
- at fulfilled (/home/runner/work/public/public/packages/Bio/src/__jest__/remote.test.ts:31:58)
251
- at runMicrotasks (&lt;anonymous&gt;)
252
- at processTicksAndRejections (internal/process/task_queues.js:97:5)</pre><pre class="suite-consolelog-item-message">Test result : Success : 6 : Bio.WebLogo.testGetStats : OK
253
- Test result : Success : 0 : Bio.WebLogo.testGetAlphabetSimilarity : OK
254
- Test result : Success : 2 : Bio.WebLogo.testPickupPaletteN1 : OK
255
- Test result : Success : 2 : Bio.WebLogo.testPickupPaletteN1e : OK
256
- Test result : Success : 2 : Bio.WebLogo.testPickupPaletteAA1 : OK
257
- Test result : Success : 2 : Bio.WebLogo.testPickupPaletteX : OK
258
- Test result : Success : 1 : Bio.WebLogo.monomerToText.longMonomerSingle : OK
259
- Test result : Success : 0 : Bio.WebLogo.monomerToText.longMonomerShort : OK
260
- Test result : Success : 0 : Bio.WebLogo.monomerToText.longMonomerLong56 : OK
261
- Test result : Success : 0 : Bio.WebLogo.monomerToText.longMonomerComplexFirstPartShort : OK
262
- Test result : Success : 0 : Bio.WebLogo.monomerToText.longMonomerComplexFirstPartLong56 : OK
263
- Test result : Success : 1 : Bio.Palettes.testPaletteN : OK
264
- Test result : Success : 0 : Bio.Palettes.testPaletteAA : OK
265
- Test result : Success : 0 : Bio.Palettes.testPalettePtMe : OK
266
- Test result : Success : 49 : Bio.detectors.NegativeEmpty : OK
267
- Test result : Success : 15 : Bio.detectors.Negative1 : OK
268
- Test result : Success : 22 : Bio.detectors.Negative2 : OK
269
- Test result : Success : 16 : Bio.detectors.Negative3 : OK
270
- Test result : Success : 14 : Bio.detectors.NegativeSmiles : OK
271
- Test result : Success : 9 : Bio.detectors.Dna1 : OK
272
- Test result : Success : 26 : Bio.detectors.Rna1 : OK
273
- Test result : Success : 41 : Bio.detectors.AA1 : OK
274
- Test result : Success : 26 : Bio.detectors.MsaDna1 : OK
275
- Test result : Success : 20 : Bio.detectors.MsaAA1 : OK
276
- Test result : Success : 40 : Bio.detectors.SepDna : OK
277
- Test result : Success : 21 : Bio.detectors.SepRna : OK
278
- Test result : Success : 17 : Bio.detectors.SepPt : OK
279
- Test result : Success : 15 : Bio.detectors.SepUn1 : OK
280
- Test result : Success : 19 : Bio.detectors.SepUn2 : OK
281
- Test result : Success : 18 : Bio.detectors.SepMsaN1 : OK
282
- Test result : Success : 653 : Bio.detectors.SamplesFastaCsvPt : OK
283
- Test result : Success : 17 : Bio.detectors.SamplesFastaCsvNegativeEntry : OK
284
- Test result : Success : 20 : Bio.detectors.SamplesFastaCsvNegativeLength : OK
285
- Test result : Success : 89 : Bio.detectors.SamplesFastaCsvNegativeUniProtKB : OK
286
- Test result : Success : 417 : Bio.detectors.SamplesFastaFastaPt : OK
287
- Test result : Success : 1139 : Bio.detectors.samplesPeptidesComplexNegativeID : OK
288
- Test result : Success : 28 : Bio.detectors.SamplesPeptidesComplexNegativeMeasured : OK
289
- Test result : Success : 211 : Bio.detectors.SamplesPeptidesComplexNegativeValue : OK
290
- Test result : Success : 285 : Bio.detectors.samplesMsaComplexUn : OK
291
- Test result : Success : 38 : Bio.detectors.samplesMsaComplexNegativeActivity : OK
292
- Test result : Success : 212 : Bio.detectors.samplesIdCsvNegativeID : OK
293
- Test result : Success : 242 : Bio.detectors.samplesSarSmallCsvNegativeSmiles : OK
294
- Test result : Success : 208 : Bio.detectors.samplesHelmCsvHELM : OK
295
- Test result : Success : 13 : Bio.detectors.samplesHelmCsvNegativeActivity : OK
296
- Test result : Success : 248 : Bio.detectors.samplesTestHelmNegativeID : OK
297
- Test result : Success : 15 : Bio.detectors.samplesTestHelmNegativeTestType : OK
298
- Test result : Success : 9 : Bio.detectors.samplesTestHelmPositiveHelmString : OK
299
- Test result : Success : 4 : Bio.detectors.samplesTestHelmNegativeValid : OK
300
- Test result : Success : 5 : Bio.detectors.samplesTestHelmNegativeMolWeight : OK
301
- Test result : Success : 8 : Bio.detectors.samplesTestHelmNegativeMolFormula : OK
302
- Test result : Success : 16 : Bio.detectors.samplesTestHelmNegativeSmiles : OK
303
- Test result : Success : 1095 : Bio.detectors.samplesTestDemogNegativeAll : OK
304
- Test result : Success : 889 : Bio.detectors.samplesTestSmiles2NegativeSmiles : OK
305
- Test result : Success : 274 : Bio.detectors.samplesTestActivityCliffsNegativeSmiles : OK
306
- Test result : Success : 273 : Bio.detectors.samplesFastaPtPosSequence : OK
307
- Test result : Success : 216 : Bio.detectors.samplesTestCerealNegativeCerealName : OK
308
- Test result : Success : 348 : Bio.detectors.samplesTestSpgi100NegativeStereoCategory : OK
309
- Test result : Success : 7 : Bio.detectors.samplesTestSpgi100NegativeScaffoldNames : OK
310
- Test result : Success : 14 : Bio.detectors.samplesTestSpgi100NegativePrimaryScaffoldName : OK
311
- Test result : Success : 29 : Bio.detectors.samplesTestSpgi100NegativeSampleName : OK
312
- Test result : Success : 231 : Bio.detectors.samplesTestUnichemSourcesNegativeSrcUrl : OK
313
- Test result : Success : 5 : Bio.detectors.samplesTestUnichemSourcesNegativeBaseIdUrl : OK
314
- Test result : Success : 219 : Bio.detectors.samplesTestDmvOfficesNegativeOfficeName : OK
315
- Test result : Success : 24 : Bio.detectors.samplesTestDmvOfficesNegativeCity : OK
316
- Test result : Success : 249 : Bio.detectors.samplesTestAlertCollectionNegativeSmarts : OK
317
- Test result : Success : 1661 : Bio.MSA.isCorrect : OK
318
- Test result : Success : 306 : Bio.MSA.isCorrectLong : OK
319
- Test result : Success : 1216 : Bio.sequenceSpace.sequenceSpaceOpens : OK
320
- Test result : Success : 4269 : Bio.sequenceSpace.sequenceSpaceOpensWithEmptyRows : OK
321
- Test result : Success : 947 : Bio.activityCliffs.activityCliffsOpen : OK
322
- Test result : Success : 853 : Bio.activityCliffs.activityCliffsOpenWithEmptyRows : OK
323
- Test result : Success : 1 : Bio.splitters.helm1 : OK
324
- Test result : Success : 1 : Bio.splitters.helm2 : OK
325
- Test result : Success : 1 : Bio.splitters.helm3-multichar : OK
326
- Test result : Success : 1 : Bio.splitters.testHelm1 : OK
327
- Test result : Success : 1 : Bio.splitters.testHelm2 : OK
328
- Test result : Success : 1 : Bio.splitters.testHelm3 : OK
329
- Test result : Success : 335 : Bio.splitters.splitToMonomers : OK
330
- Test result : Success : 2 : Bio.splitters.getHelmMonomers : OK
331
- Test result : Success : 93 : Bio.renderers.long sequence performance : OK
332
- Test result : Success : 676 : Bio.renderers.many sequence performance : OK
333
- Test result : Success : 269 : Bio.renderers.rendererMacromoleculeFasta : OK
334
- Test result : Success : 218 : Bio.renderers.rendererMacromoleculeSeparator : OK
335
- Test result : Success : 72 : Bio.renderers.rendererMacromoleculeDifference : OK
336
- Test result : Success : 534 : Bio.renderers.afterMsa : OK
337
- Test result : Success : 238 : Bio.renderers.afterConvert : OK
338
- Test result : Success : 207 : Bio.renderers.selectRendererBySemType : OK
339
- Test result : Success : 6 : Bio.converters.testFastaPtToSeparator : OK
340
- Test result : Success : 10 : Bio.converters.testFastaDnaToSeparator : OK
341
- Test result : Success : 6 : Bio.converters.testFastaRnaToSeparator : OK
342
- Test result : Success : 5 : Bio.converters.testFastaGapsToSeparator : OK
343
- Test result : Success : 2 : Bio.converters.testFastaPtToHelm : OK
344
- Test result : Success : 1 : Bio.converters.testFastaDnaToHelm : OK
345
- Test result : Success : 1 : Bio.converters.testFastaRnaToHelm : OK
346
- Test result : Success : 2 : Bio.converters.testFastaGapsToHelm : OK
347
- Test result : Success : 1 : Bio.converters.testSeparatorPtToFasta : OK
348
- Test result : Success : 1 : Bio.converters.testSeparatorDnaToFasta : OK
349
- Test result : Success : 0 : Bio.converters.testSeparatorRnaToFasta : OK
350
- Test result : Success : 0 : Bio.converters.testSeparatorGapsToFasta : OK
351
- Test result : Success : 0 : Bio.converters.testSeparatorPtToHelm : OK
352
- Test result : Success : 1 : Bio.converters.testSeparatorDnaToHelm : OK
353
- Test result : Success : 0 : Bio.converters.testSeparatorRnaToHelm : OK
354
- Test result : Success : 0 : Bio.converters.testSeparatorGapsToHelm : OK
355
- Test result : Success : 0 : Bio.converters.testHelmDnaToFasta : OK
356
- Test result : Success : 1 : Bio.converters.testHelmRnaToFasta : OK
357
- Test result : Success : 0 : Bio.converters.testHelmPtToFasta : OK
358
- Test result : Success : 0 : Bio.converters.testHelmDnaToSeparator : OK
359
- Test result : Success : 0 : Bio.converters.testHelmRnaToSeparator : OK
360
- Test result : Success : 0 : Bio.converters.testHelmPtToSeparator : OK
361
- Test result : Success : 2 : Bio.converters.testHelmLoneRibose : OK
362
- Test result : Success : 3 : Bio.converters.testHelmLoneDeoxyribose : OK
363
- Test result : Success : 1 : Bio.converters.testHelmLonePhosphorus : OK
364
- Test result : Success : 0 : Bio.fastaFileHandler.testNormalFormatting : OK
365
- Test result : Success : 1 : Bio.fastaFileHandler.testExtraSpaces : OK
366
- Test result : Success : 0 : Bio.fastaFileHandler.testExtraNewlines : OK
367
- Test result : Success : 111 : Bio.WebLogo-positions.allPositions : OK
368
- Test result : Success : 116 : Bio.WebLogo-positions.positions with shrinkEmptyTail option true (filterd) : OK
369
- Test result : Success : 126 : Bio.WebLogo-positions.positions with skipEmptyPositions option : OK
370
- Test result : Success : 8 : Bio.checkInputColumn.testMsaPos : OK
371
- Test result : Success : 2 : Bio.checkInputColumn.testMsaNegHelm : OK
372
- Test result : Success : 2 : Bio.checkInputColumn.testMsaNegUN : OK
373
- Test result : Success : 1 : Bio.checkInputColumn.testGetActionFunctionMeta : OK
374
- </pre></div></div></div></div></body></html>